之前我發(fā)過多篇移植RTT到新唐單片機的帖子,不過都是能滿足要求,但是還不夠完美,本次帖子,完美解決之前的不完美。
該帖基于最新版的RT-Thread Nano 3.1.5版本。
為了體現(xiàn)帖子的完美性,這次我從頭開始說關(guān)鍵點。
第一步,基于RTE創(chuàng)建工程,應(yīng)選擇下圖的選項
第二步,工程應(yīng)至少包含以下4個基本庫文件
第三步,工程的配置
因為我們可以不使用printf,所以我們可以不包含MicroLIB,甚至我們不用在工程配置里包含STD標準庫的頭文件進來。
因為BSP的標準庫基于AC5編寫,所以我們這里最好選擇AC5,如果選擇AC6,應(yīng)在警告設(shè)置AC5-like ,否則編譯會因為打印幾百個警告而變慢。
第四步,rtconfig.h配置
第五步,按照#error設(shè)定的4個部分配置時鐘和硬件初始化,串口初始化,串口輸出,串口輸入。
時鐘初始化,我們可以找到一個廠家提供的模板,復(fù)制SYS_Init();并在其中完善滴答定時器的啟動與配置。
打開board.c添加系統(tǒng)初始化代碼
void SYS_Init(void)
{
? ? /*---------------------------------------------------------------------------------------------------------*/
? ? /* Init System Clock? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?*/
? ? /*---------------------------------------------------------------------------------------------------------*/
? ? /* Unlock protected registers */
? ? SYS_UnlockReg();
? ? /* Set XT1_OUT(PF.2) and XT1_IN(PF.3) to input mode */
? ? PF->MODE