图片展示
  • AG32 MCU
  • DAP LINK
  • HIZYUAN
  • AMD/XILINX-2

AG32下使用uC/OS的参考

浏览: 发表时间:2024-09-24 09:30:00

AG32 下使用 uC/OS 的参考


SDK 下已经有移植好的 uC/OS-III V3.08.01 版本,可供用户使用。

源码位于:\AgRV_pio\packages\framework-agrv_ucos\

用户使用时,不必关注该源码,只需关注 API 使用即可。

 

 

一、简单验证:

使用时,从 VSCODE 中直接打开工程:\AgRV_pio\platforms\AgRV\examples\uCOS打开工程后,可以先验证简单的运行情况。

 

这个工程中,并没有 ve 文件(而是使用了默认的 ve 文件)。便于后续开发,可以先建立一份 ve。

步骤:

1.  example 路径下 copy 一份 example_board.ve 过来,重命名为uCOS_board.ve;

2. 打开该 uCOS_board.ve,删除掉里边除 clk 和 led 灯以外的其他引脚配置;

3.  platformio.ini 中添加对该 ve 的引用:board_logic.ve = uCOS_board.ve。

 

接下来,编译 ve 并烧录,然后编译 code 并烧录。两项都烧录成功后,就可以看到 led 灯的闪烁了。

 

 

二、使用样例:

打开 main.c,可以看到例程中展示了几种元素的使用方法:Semaphore、Queue、Task、Timer。这里简化样例时,比如只保留一个 Task:AppTaskTimer,则注掉其他 task 的创建即可。 uC/OS 的样例较为简单,自行尝试即可。



三、使用自建工程:

如果用户希望在自建工程中使用 uC/OS,该如何把它添加进来?

比如,在 example 下要把 uC/OS 加进来。步骤:

1.  platformio.ini 中增加对 uC/OS 的引用:

注意,多个库之间用“逗号+空格”来隔开。

 

2. 确认 ve 文件里的配置正常(时钟+led 引脚);

 

3. 将用到的几个头文件从 uCOS 工程下 copy 过来;

 

4.  example.c 中引入 freertos 的头文件及用到的宏定义:

 

5.  example.c 中新增几个函数(从 uCOS 的例程中简化过来的):

 

6.  main.c 中保留 uCOS 的启动即可:

 

然后,编译 ve 并烧录,再编译 code 并烧录,就可以看到 led 的闪烁了。


暂无链接

电话:0755-2780 9180   E-mail: tech@hizyuan.com
地址:中国广东省深圳市宝安区新安街道广兴源互联网智慧科技园D栋508
Copyright 版权所有  海振远科技 All rights reserved  

在线客服
联系方式
热线电话
0755-27809180
E-mail地址
tech@hizyuan.com
二维码
二维码
微信在线客服-(添加请备注:海振远产品咨询)
在线客服
添加微信好友,详细了解产品
使用企业微信
“扫一扫”加入群聊
复制成功!
添加微信好友,详细了解产品
我知道了
粤ICP备19051499号-1