各位嵌入式软件工程师想必都有类似的经验,使用无操作系统开发单片机式对于时序把控,任务延时,各任务之间的通信很难实现完整地条理清晰地编码。本文主要介绍国产RT-thread操作系统在单片机上的移植教程分享教程。
对于部分经验不足的工程师,总会存在各种各样地因为变量,参数函数位置,以及延时方法等,导致程序运行效率过低地情况。实时操作系统能很好的解决这些问题;一般的,无操作系统的情况下,经验丰富一些的工程师可能会使用状态机加定时器等实现任务的非阻塞延时,使用软件定时器定时器加回调函数可以实现简单的定时任务等,在操作系统中可以统一的使用系统延时rt_thread_mdelay来解决问题,使用方法就像最开始学习单片机时的delay()函数一样,无需担心任务卡死,在简单的应用中,如果使用多个任务,完全可以不用考虑系统会死等,当然操作系统还有更高级的功能,此处不作赘述。
本次移植基于国民的n32g430芯片进行移植,
①、首先需要以下链接
国民单片机:ftp://download.nationstech.com/
国产RT-Thread操作系统: http://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-nano/an0038-nano-introduction
②、软件
KEIL5,笔者使用得是5.27版本
③、开发板
淘宝随便找一个国民技术得N32G430开发板
下载国民技术的基础资料包
直接将国民的链接粘贴在文件夹路径框(FTP传输),找到如下文件
解压后找到,此文件为国民的基本支持包
下载RTT NANO版本
建议使用手动下载安装
下载如下
Keil安装完成的情况下,分别将RealThread.RT-Thread.3.1.5.pack及Nations.N32G430_DFP.1.1.0.pack双击安装,无需其他设置步骤,软件会自动安装到位
先创建一个demo工程,选择国民的n32g430芯片,确认,软件自动进入组件选择
组件选择:选中如下的内容,
如果弹出报错,不慌,先截个图,等下手动拷贝,由于安装时firmware并不会安装到位,一般是手动拷贝的,此处手动从国民的SDK中拷贝
Firmware路径
按照下图创建目录拷贝即可
接下来,进入组件管理界面
在刚在的工程文件夹下找到以下文件:
DeviceN32G430K8L7CMSISdevicesystem_n32g430.c
DeviceN32G430K8L7CMSISdevicestartupstartup_n32g430.s
DeviceN32G430K8L732g430_std_periph_driversrcmisc.c
DeviceN32G430K8L732g430_std_periph_driversrcn32g430_rcc.c
DeviceN32G430K8L732g430_std_periph_driversrcn32g430_gpio.c
双击添加
选择编译器,此步骤不选没法编译
之后返回组件选择,仅保留RTT部分,前边选组件只是为了保证后续手动移植时知道选择那些文件以及从哪里拷贝文件,目标文件在哪里等
接下来配置工程的包含路径
添加路径
接下来进行第一次编译
出现如下报错证明文件基本移植完成,接下来可以处理系统对接相关内容
首先处理系统时钟
接下来添加main文件,先建立user文件夹,在文件夹下添加main.c文件,并将文件添加至工程
简单写一个空的main函数,开始编译
接下来编译完成,仅一个告警,问题不大,可以忽略
接下来处理系统打印,打开控制台功能
Main任务写个简单的打印,编译
至此,移植全部完成,接下来下载编译即可,此处不再赘述。
更多技术文章推荐:
今天的分享就到这里啦,EBYTE每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多产品及相关资料,感兴趣的小伙伴可以登录我们的太阳集团tcy8722官网进行了解,也可以直接拨打400电话咨询技术专员!
相关阅读:
5、单片机的前世今生
7 X 24 销售服务热线
4000-330-990深圳办事处柯经理:18218726658 杭州办事处戴经理:17512568697
常州办事处崔经理:15906110783 南京办事处葛经理:17626012283
业务邮箱:support@cdhanzaichips.com
全国销售投诉电话:19934352316
地址:四川省成都市高新西区西区大道199号B5栋(前台座机:028-61543675)
©© 成都太阳集团tcy8722电子科技有限公司【版权所有】 蜀ICP备27697263号-3