首頁(yè) > 評(píng)測(cè) > STM32F0入門(mén)級(jí)開(kāi)發(fā)板——STM32F072RB Nucleo評(píng)測(cè)
STM32F0入門(mén)級(jí)開(kāi)發(fā)板——STM32F072RB Nucleo評(píng)測(cè)
- [導(dǎo)讀]
- STM32F0系列MCU是意法半導(dǎo)體公司(以下簡(jiǎn)稱(chēng)ST)推出的入門(mén)級(jí)32位微控制器,基于ARM Cortex M0內(nèi)核,最高頻率可達(dá)48MHz,面向低成本入門(mén)級(jí)應(yīng)用領(lǐng)域。
打開(kāi)STM32CUBEMX軟件,選擇New Project新建一個(gè)工程,

選擇STM32F072RB開(kāi)發(fā)板,

生成工程后可以看到,軟件已經(jīng)自動(dòng)按照STM32F072RB開(kāi)發(fā)板的外設(shè)資源配置好了,現(xiàn)在要做的就是打開(kāi)需要使用的相應(yīng)外設(shè),這里需要打開(kāi)RCC和USART就好了,而開(kāi)發(fā)板的USART2是直接連接到ST-LINK的虛擬串口的,我們可以直接虛擬串口來(lái)傳輸數(shù)據(jù)。

然后配置時(shí)鐘,時(shí)鐘選擇HSE,經(jīng)過(guò)PLL倍頻,得到系統(tǒng)時(shí)鐘,設(shè)置為最大的48MHz,

接著配置USART2的參數(shù),波特率設(shè)置為115200,數(shù)據(jù)位8位,停止位1位,無(wú)檢驗(yàn)位

配置完成后就可以生成工程了,

編譯工具選擇比較常見(jiàn)的Keil MDK,最后生成并打開(kāi)工程:


先編譯一下確定工程沒(méi)有錯(cuò)誤,

從上面截圖可以看到,生成的工程中首先調(diào)用HAL_Init();函數(shù)初始化HAL庫(kù),接著SystemClock_Config();配置了系統(tǒng)時(shí)鐘位之前cube中設(shè)置好的頻率,然后MX_GPIO_Init();
和MX_USART2_UART_Init();分別初始化一些GPIO口和USART2,最后就是應(yīng)用程序部分,而這部分也是需要我們自己來(lái)寫(xiě)的部分。
接下來(lái)添加代碼,首先在main.c文件中添加下面的代碼
#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
HAL_UART_Transmit(&huart2, (uint8_t *)&ch, 1, 0xFFFF);
return ch;
}
這段代碼的作用是重定向printf函數(shù),使其原本的標(biāo)準(zhǔn)輸出指向串口2,這樣我們就能使用printf函數(shù)從串口輸出,在調(diào)試時(shí)可以非常方便的查看運(yùn)行信息和輸出需要的數(shù)據(jù)。
接下來(lái)在主函數(shù)中添加代碼測(cè)試使用printf發(fā)送數(shù)據(jù)。

HAL_GPIO_TogglePin(LD2_GPIO_Port,LD2_Pin);的作用是反正LD2接的IO口,這樣就能看到開(kāi)發(fā)板上LED的閃爍,最后HAL_Delay(500);延時(shí)等待500ms;完成代碼添加后編譯下載運(yùn)行,可以從電腦端用串口助手連接虛擬串口,就能接收到開(kāi)發(fā)板發(fā)出的數(shù)據(jù)了,同時(shí)開(kāi)發(fā)板上的LED以1秒間隔閃爍,結(jié)果如下圖。

一個(gè)簡(jiǎn)單的例子就完成了,有了STM32CUBEMX之后,真的是方便了工程師們的開(kāi)發(fā),節(jié)省了很多底層配置的時(shí)間,真是一個(gè)很好用的開(kāi)發(fā)工具,ST嘔心瀝血開(kāi)發(fā)出來(lái)并大力推廣的工具,真是名副其實(shí),造福廣大工程師們。而看了上面的介紹,應(yīng)該對(duì)這塊開(kāi)發(fā)板已經(jīng)有一定了解,作為入門(mén)級(jí)開(kāi)發(fā)板,比較簡(jiǎn)單,但也功能豐富,適合新手學(xué)習(xí)入門(mén)。
資源鏈接:
本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載
-
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評(píng)論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開(kāi)放投稿
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開(kāi)發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車(chē)啟動(dòng)電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開(kāi)發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動(dòng)電機(jī)控制器開(kāi)發(fā)
預(yù)算:¥1100001天前