下如何使用keil创建stm32f103的工程,并且完成了led点亮,及让led等闪烁的功能,那是诸多同学学习单片机的起手式。本篇推文是继续上一篇推文的内容,依旧是点亮led,不同的是,这次点亮led等,是在rt-thread操作系统中进行的。
创建工程
创建一个keil工程,芯片依旧选择stm32f103c8t6,然后在manage run-time environment对话框中选择需要用的的软件组件,与上文不同的是,我们需要把rtt一起勾上。如下图:
上图中,红线框中即为rtt操作系统的组件,分别为设备驱动,系统内核以及shell。蓝线框中为keil的rtx操作系统。我们现在要用的是rtt,所以勾选rtt的组件即可,其中kernel为必选项,device drivers依赖kernel,shell又依赖device drivers。
shell也提一下,shell强翻成中文就是命令行外壳,如同linux操作系统一样,rtt也提供了一套共用户在命令行操作的操作接口。rtt提供的这套接口叫做finsh,主要用于调试、查看系统信息。finsh支持两种模式:
1. c语言解释器模式, 为行文方便称之为c-style;
2. 传统命令行模式,此模式又称为msh(module shell)。
在大部分嵌入式系统中,一般开发调试都使用硬件调试器和printf日志打印,在有些情况下,这两种方式并不是那么好用。比如对于rt-thread这个多线程系统,我们想知道某个时刻系统中的线程运行状态、手动控制系统状态。如果有一个shell,就可以输入命令,直接相应的函数执行获得需要的信息,或者控制程序的行为。这无疑会非常方便。finsh就是基于此而设计,它运行于开发板,可以使用串口/以太网/usb等与pc机进行通信。
创建工程后,相对上一篇推文创建的工程,项目中会多出了rtt,如下图。至于各个文件及其作用,后续使用的时候再逐步理解。我们当前最需要关注的是board.c和rtthread.h两个文件。从图中可以看出,只有这两个文件上没有标注钥匙,有钥匙标注的是不允许更改,也就是我们能更改就是这两个文件。后面再分析这两个文件。且走下一步。
编写点灯程序
创建好工程后,开始编写点灯程序了,与上篇推文一样,直接贴上代码:
#includertthread.h
怎么让逆变器电池经用,电线是理想的
物联网网关的关键技术和应用方向的详细分析
基于STM32和μC/OS-Ⅱ的热力站监控系统设计
柔性制造和智慧物流解决方案供应商宾通智能完成6000万元A轮融资
转转的2019:脚踏实地比仰望星空更重要
如何使用Keil创建STM32F103的工程
在SUV界中,哈弗H6霸占着销售榜首,传祺GS4冲刺至亚军,长安蓄势待发!
各类有源晶振选型攻略,果断收藏!
世界智能水下机器人挑战赛在天津滨海高新区技术产业开发区渤龙山庄举办
嵌入式DDR总线结构介绍及硬件信号布线分析
车载显示屏的触摸控制
IIHS轿车追尾大卡车碰撞测试解读
盘点飞创高精度直线电机模组八大主流应用行业
pt100检测电路,Pt100铂电阻测温电路经验
双屏显示器怎么设置_双屏显示器怎么连接_双屏显示器有什么用(电脑)
电改速度加快 跨区输电价格核定完成
英伟达正式宣布了一个完整的L2+级ADAS系统,名为DRIVE AutoPilot
ARM和DSP设计的地震加速度信号处理系统
RK3568工业级核心板高温运行测试
SMT中清除误印锡膏流程