> 文档中心 > 【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART


本篇文章来自极术社区与灵动组织的MM32F5270开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:Magicoe是攻城狮

喜欢RT-Thread的代码10余年~,但凡有新上手的MCU必定看看诺诺RT-Thread的OS,加上RTT优质的BSP资源和中文文档,非常适合新手上路。最近几年和FreeRTOS并驾齐驱,很多客户的工程师都在点名要RT-Thread。
so,让我们先移植RT-Thread到MM32F5270吧~
写这篇稿子的时候,我已经完成了好多功能,”极术小姐姐“催稿~,我就分成几篇来写吧,我想弄的玩意儿太大了,一时半会完成不了,分步倒是蛮好的。

言归正传,先说打通串口
第一步:IDE
毕竟我最熟的IDE还是KEIL,虽然其他的IDE也滚瓜烂熟的。奈何KEIL是在是“方便“。
似乎官方有活动给License,这里我就不赘述了,应该有其他帖子介绍如何申请。
第二步:布局文件夹
app_source是我放应用代码的文件夹
mm32f5270_drivers是灵动微官方的芯片级驱动代码的文件夹
rt-thread是RTT的代码文件夹
mpu6050和paj7620是两个sensor的驱动文件,用不到可以不用考虑
mm32f5277_flash.sct是分散加载文件
其他的几个文件比如EventRecorderStub.scvd和mm32f5270.uvoptx啥的都是KEIL的工程文件
output文件夹是项目编译产生的乱七八糟的东西放的地方,当然工程的hex和axf或者bin文件也在这里边,并不是乱七八糟~哈哈哈

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

第三步:内核支持
他们说STAT-MC1和Cortex-M33很像,反正都是V8-M架构,那就从Cortex-M33里拿了啊

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

第四步:引脚 时钟 初始化
引脚
MM家官方把引脚的初始化放到了pin_init.c,如果不懂对应引脚的初始化可以看官方的例程和用户手册,我两个地方都放了,pin_init.c和drv_uart.c,都行,看个人和应用喜好了

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

时钟
MM家时钟初始化是放在clock_init.c里的,要注意一些问题,比如外设是APB1的还是APB2的,尽量copy参考工程里的,不然要出点小问题,如下,也可以放到drv_uart.c里干同样的事儿

RCC_EnableAPB2Periphs(RCC_APB2_PERIPH_UART1, true);RCC_ResetAPB2Periphs(RCC_APB2_PERIPH_UART1);

第五步:
看下我drv_uart.c和drv_uart.h的代码,放到工程里

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

第六步:
配置下rtconfig.h
使能console,并且配置console连接的是“uart1”

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

配置下FINSH相关宏定义

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

再使能相对应的串口

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

第七步:
注意下Stack和Heap的设置

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

编译下载

【MM32F5270开发板试用】一、让MM32F5270支持RT-Thread~打通串口UART

看结果
此处有视频,等三天后我来改稿子,腾讯视频新号审核要三天