打印
[AT32F403/403A]

AT32F403A替代STM32F103之移植CMSIS RTOS V1封装层-CMSIS RTX

[复制链接]
886|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 ArterySW 于 2022-2-28 21:21 编辑

最近意外的发现一款优秀的国产芯片——雅特力的AT32F403A

以下是摘自雅特力官网:
雅特力科技AT32F403A系列高效能微控制器,搭载32位ARM Cortex-M4内核,配合先进制程有效提升整体效能达240MHz的运算速度。内建的单精度浮点运算单元(FPU)及数字信号处理器(DSP),搭配丰富的外设及灵活的时钟控制机制,能满足多种领域应用。完善的内存设计,最高可支持1MB闪存存储器(Flash)及224KB随机存取存储器(SRAM),其闪存存储器执行零等待的优异表现,超越业界同级芯片水平。


240MHz主频,单精度浮点运算单元(FPU)  224KB SRAM一看到这些参数感觉就被种草了,没想到国产的MCU也能做的这么好,不管是性能还是价格上基本上是完全吊锤STM32F103。于是迫不及待的整了一块AT32F403A的板子回来,长下图这样
'

进入正题
因为以前一直使用的是STM32F103,所以这次先把环境搭好,再进行下一步操作,于是先移植个CMSIS RTOS V1封装层来试试水,这次使用的是之CMSIS RTX,freeRTOS版本后面有时间再搞

首先去官网下载雅特力的BSP,类似于STM32 的标准库

下载好了我们可以看到以下的文件结构

然后我们进project\at_start_f403a\examples\gpio\led_toggle\mdk_v5这个工程来作为模板工程,越简单越好,所以我这里选择的是LED的工程

RTX源文件的位置C:\Users\sonnytu\AppData\Local\Arm\Packs\ARM\CMSIS\5.7.0\CMSIS,每个人可能安装的位置可能不一样用evetything 搜索一下就能找到,目录如下,然后我们后面说的都用相对于这个文件夹下的目录了,这样比较省事

我们在middlewares新建一个文件夹rtx,然后我们将RTOS\RTX里的文件复制到middlewares\rtx下

然后在KEIL工程中添加文件如下
因为AT32F403A是M4内核,所以这里选择的是HAL_CM4.c ,而STM32F103是M3内核选的是HAL_CM3.c

然后在KEIL工程中添加头文件路径如下

然后在C/C++ Define中添加__CORTEX_M4F,__CMSIS_RTOS,__FPU_PRESENT,意思是使用CMSIS封装层,使用浮点

然后在at32f4xx_it.c中屏蔽以下几个中断,因为这几个中断被系统占用了

void SVC_Handler(void)
void PendSV_Handler(void)
void SysTick_Handler(void)

开始编译,编译通过,说明RTOS源文件和路径都正确添加了

接下来配置RTX运行参数在RTC_Conf_CM.c中配置,参数配置成和下面一样即可,主要是要配置正确的主频,我这里使用默认的240Mhz

一切准备就绪后,接下来写个任务运行看看效果

在Debug模式下观看cnt的值,看到cnt[0]每隔1S增加1,cnt[1]每隔500ms增加1,说明移植成功

至此CMSIS RTX 移植结束,其实AT32F403A移植RTOS还是比较简单的,和STM32F4系列的是一模一样,因为内核是一样的,后面开始使用各个外设,看了一下AT32F403A和STM32F103的寄存器,外设的寄存器基本都一样,只要之前用过STM32F103那么上手是很容易的

1.png (39 KB )

1.png

CMSIS_RTX_2.0.zip

488.57 KB

使用特权

评论回复
沙发
捉虫天师| | 2020-11-8 15:40 | 只看该作者
是国产的吗

使用特权

评论回复
板凳
骑着蜗牛狂奔O|  楼主 | 2020-11-8 19:21 | 只看该作者
捉虫天师 发表于 2020-11-8 15:40
是国产的吗

是的

使用特权

评论回复
地板
骑着蜗牛狂奔O|  楼主 | 2020-11-8 19:22 | 只看该作者
捉虫天师 发表于 2020-11-8 15:40
是国产的吗

兼容STM32F103

使用特权

评论回复
5
zeshoufx| | 2020-11-10 08:27 | 只看该作者
谢谢分享【移植CMSIS RTOS V1封装层】

使用特权

评论回复
6
名字是啥样| | 2020-11-10 09:12 | 只看该作者
帅气,这个开发板的资源确实很多,不错,不错的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

130

帖子

2

粉丝