为你转身 发表于 2022-7-30 23:14

基于keil环境下mm32f327单片机rtthread的移植

前言
第十七届智能车竞赛赛前准备,为 mm32f3277G9p 移植rtthread系统。

RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的 RTOS。其内存资源占用极小,功能包括任务处理、软件定时器、信号量、邮箱和实时调度等相对完整的实时操作系统特性。适用于家电、消费电子、医疗设备、工控等领域大量使用的 32 位 ARM 入门级 MCU 的场合。

灵动微MM32F3277系列采用高性能的ARM®Cortex®-M3为内核的32位单片机微控制器,工作频率可达高达120MHz,内置SRAM及内存高速存储器,丰富的I/O端口和外设连接到外部总线。
灵动微MM32F3277包含多达3个12位的ADC、2个比较器、2个16位通用定时器、2个32位通用定时器、2个16位基本定时器和2个16位高级定时器。还包含标准的通信接口:2个I2C接口、3个I2S接口、3个SPI接口、1个USBOTG全速接口、1个CAN接口、1个SDIO接口、1个Ethernet接口和8个UART接口。

为你转身 发表于 2022-7-30 23:15

一、所需资源
1、rtthread源码: RT_Thread开源库https://gitee.com/rtthread/rt-thread
2、mm32f3277逐飞库: 逐飞开源库https://gitee.com/seekfree/MM32F3277_Library

为你转身 发表于 2022-7-30 23:18

二、创建工程目录
目录如下:
CODE (用于存放用户编写的驱动代码)
Library (用于存放工程依赖的库文件和启动文件)
MDK (存放keil工程文件)
USER (存放主程序文件main.c等)

为你转身 发表于 2022-7-30 23:18

为你转身 发表于 2022-7-30 23:19

在USER文件夹下新建inc和src子文件夹用于存放.c和.h文件。
之后在inc文件夹下新建isr.h文件,在src文件夹下新建isr.c和main.c文件。

为你转身 发表于 2022-7-30 23:22

三、复制所需文件到相应文件夹
将下载好的逐飞库源码中Library文件夹下的文件移动到工程Library文件夹中并新建rtthread_library文件夹。

为你转身 发表于 2022-7-30 23:23

将下载好的rtthread源码中图示目录复制到rtthread_library文件夹下并新建bsp文件夹

为你转身 发表于 2022-7-30 23:26

在rtt源码目录的bsp文件夹下找到mm32f327x文件夹,将其中的rtconfig.h文件复制到新建的bsp文件夹下,之后对整个rtthread_library文件夹下的文件进行裁剪。

为你转身 发表于 2022-7-30 23:27

裁剪后目录如下:
Components目录:

为你转身 发表于 2022-7-30 23:32


include文件夹不做修改

为你转身 发表于 2022-7-30 23:33

libcpu文件夹仅留下arm\cortex-m3路径下的文件

为你转身 发表于 2022-7-30 23:33

src文件夹下文件:

为你转身 发表于 2022-7-30 23:34

四、创建keil工程
Keil 新建工程到 MDK 文件夹下。
芯片型号选择为 MM32F3277G9p 。

为你转身 发表于 2022-7-30 23:42

为你转身 发表于 2022-7-30 23:43

创建分组目录如下:

为你转身 发表于 2022-7-30 23:44

五、添加文件到工程
在 USER 分组添加:
USER 目录子文件夹 src 中的 .c 文件;
Library\rtthread_libraries\bsp 目录下的 .h 文件;

为你转身 发表于 2022-7-30 23:44

为你转身 发表于 2022-7-30 23:45

CODE 分组加入自己配置的外设驱动;
board 分组添加 :
Library\seekfree_libraries\board 文件夹下的 board.c 文件;

为你转身 发表于 2022-7-30 23:45

为你转身 发表于 2022-7-30 23:46

common 分组加入 :
Library\seekfree_libraries\common 下的所有.c文件;
页: [1] 2 3 4
查看完整版本: 基于keil环境下mm32f327单片机rtthread的移植