當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 21ic電子網(wǎng)
[導(dǎo)讀]出品21ic論壇gaoyang9992006網(wǎng)站:bbs.21ic.com前提,安裝好Keilforarm,安裝好新唐pack,下載好新唐的BSP標(biāo)準(zhǔn)庫(kù)文件。新建文件夾用于存儲(chǔ)接下來(lái)的工程文件。本次演示采用的新唐M263A系列開(kāi)發(fā)板新建Keil工程,找到新唐目錄,選擇M23系列中...

出品 21ic論壇 gaoyang9992006
網(wǎng)站:bbs.21ic.com

前提,安裝好Keil for arm,安裝好新唐pack,下載好新唐的BSP標(biāo)準(zhǔn)庫(kù)文件。

新建文件夾用于存儲(chǔ)接下來(lái)的工程文件。

本次演示采用的新唐M263A系列開(kāi)發(fā)板


新建Keil工程,找到新唐目錄,選擇M23系列中你所使用的哪款單片機(jī),本次選擇M263KIAAE


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


可以看到只有AC6可以選擇,這說(shuō)明這個(gè)系列是很新的,廠家按照最新的AC6標(biāo)準(zhǔn)做的相關(guān)支持文件。


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


為防止過(guò)多的警告,在警告選項(xiàng)里選擇AC5-Like


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


選擇新唐的調(diào)試器,并設(shè)置芯片型號(hào)為你當(dāng)前所用的型號(hào)。


接下來(lái)在RTE配置里選擇以下基本項(xiàng)?


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


在新建的工程中添加User和Lib目錄,用于存放你自己編寫(xiě)的代碼和使用到的外設(shè)標(biāo)準(zhǔn)庫(kù),一般應(yīng)至少原則如下圖中4個(gè)基本內(nèi)容。


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


接下來(lái)配置RTOS的配置文件


超速移植!RT-Thread?nano在Cortex-M23內(nèi)核的旅程


在board.c和finsh_port.c中引入新唐頭文件


#include

然后在board.c中按照預(yù)編譯錯(cuò)誤提示,完成每一項(xiàng)的內(nèi)容,一共4項(xiàng)

1,找到M263的BSP,將模板工程中的系統(tǒng)初始化函數(shù)復(fù)制進(jìn)來(lái),并再其中

增加一條使能滴答時(shí)鐘的函數(shù)。


void SYS_Init(void)
{
? ? /* Unlock protected registers */
? ? SYS_UnlockReg();


? ? /* Enable HIRC clock (Internal RC 48MHz) */
? ? CLK_EnableXtalRC(CLK_PWRCTL_HIRCEN_Msk);


? ? /* Wait for HIRC clock ready */
? ? CLK_WaitClockReady(CLK_STATUS_HIRCSTB_Msk);


? ? /* Select HCLK clock source as HIRC and HCLK source divider as 1 */
? ? CLK_SetHCLK(CLK_CLKSEL0_HCLKSEL_HIRC, CLK_CLKDIV0_HCLK(1));
? ?? ?? ?? ?? ?
? ?? ?? ?? ?? ? CLK_EnableSysTick(CLK_CLKSEL0_STCLKSEL_HCLK , SystemCoreClock / RT_TICK_PER_SECOND);


? ? /* Enable UART0 clock */
? ? CLK_EnableModuleClock(UART0_MODULE);


? ? /* Switch UART0 clock source to HIRC */
? ? CLK_SetModuleClock(UART0_MODULE, CLK_CLKSEL1_UART0SEL_HIRC, CLK_CLKDIV0_UART0(1));


? ? /* Update System Core Clock */
? ? SystemCoreClockUpdate();


? ? /* Set PB multi-function pins for UART0 RXD=PB.12 and TXD=PB.13 */
? ? SYS->GPB_MFPH = (SYS->GPB_MFPH
21ic電子網(wǎng)

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
關(guān)閉
關(guān)閉