創(chuàng)建工程
創(chuàng)建一個Keil工程,芯片依舊選擇STM32F103C8T6,然后在Manage Run-Time Environment對話框中選擇需要用的的軟件組件,與上文不同的是,我們需要把RTT一起勾上。如下圖:
上圖中,紅線框中即為RTT操作系統(tǒng)的組件,分別為設備驅(qū)動,系統(tǒng)內(nèi)核以及shell。藍線框中為Keil的RTX操作系統(tǒng)。我們現(xiàn)在要用的是RTT,所以勾選RTT的組件即可,其中Kernel為必選項,device drivers依賴kernel,shell又依賴device drivers。
shell也提一下,shell強翻成中文就是命令行外殼,如同linux操作系統(tǒng)一樣,RTT也提供了一套共用戶在命令行操作的操作接口。RTT提供的這套接口叫做finsh,主要用于調(diào)試、查看系統(tǒng)信息。finsh支持兩種模式:
1. C語言解釋器模式, 為行文方便稱之為c-style;
2. 傳統(tǒng)命令行模式,此模式又稱為msh(module shell)。
在大部分嵌入式系統(tǒng)中,一般開發(fā)調(diào)試都使用硬件調(diào)試器和printf日志打印,在有些情況下,這兩種方式并不是那么好用。比如對于RT-Thread這個多線程系統(tǒng),我們想知道某個時刻系統(tǒng)中的線程運行狀態(tài)、手動控制系統(tǒng)狀態(tài)。如果有一個shell,就可以輸入命令,直接相應的函數(shù)執(zhí)行獲得需要的信息,或者控制程序的行為。這無疑會非常方便。finsh就是基于此而設計,它運行于開發(fā)板,可以使用串口/以太網(wǎng)/USB等與PC機進行通信。
創(chuàng)建工程后,相對上一篇推文創(chuàng)建的工程,項目中會多出了RTT,如下圖。至于各個文件及其作用,后續(xù)使用的時候再逐步理解。我們當前最需要關注的是board.c和rtthread.h兩個文件。從圖中可以看出,只有這兩個文件上沒有標注鑰匙,有鑰匙標注的是不允許更改,也就是我們能更改就是這兩個文件。后面再分析這兩個文件。且走下一步。
編寫點燈程序
創(chuàng)建好工程后,開始編寫點燈程序了,與上篇推文一樣,直接貼上代碼:
#include"rtthread.h"
-
STM32
+關注
關注
2272文章
10923瀏覽量
357571 -
keil
+關注
關注
69文章
1214瀏覽量
167276 -
RT-Thread
+關注
關注
31文章
1305瀏覽量
40386
原文標題:STM32F103+RT-Thread從零開始(二)——RTT系統(tǒng)中點亮LED
文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論