首頁 > 評測 > Nucleo家族的后起之秀——ST Nucleo F091RC評測

Nucleo家族的后起之秀——ST Nucleo F091RC評測

Nucleo   ST   F091RC   
  • 作者:夜色風滿樓
  • 來源:21ic
  • [導讀]
  • Nucleo系列開發(fā)板推出已經(jīng)將近兩年了,它以其俊美的外表,超高的性價比吸引了無數(shù)中國工程師。

 

二 測試

拿到板子第一件事當然是開箱驗貨。ST的工程師周到的替用戶考慮到了這一點,在板子中預先置入了程序,只需用戶給板卡上電,就可通過預置程序來判斷板卡是否正常工作。首先拿出USB線,一端接PC機,一端接Nucleo板。上電后,我們可以發(fā)現(xiàn)綠色的LED在以極高的頻率閃爍著,這就是預先留在Nucleo板中程序的效果,當我們按下用戶按鍵時,可觀察到綠色LED閃爍的頻率變慢,往后再重復按鍵,綠燈閃爍頻率會成周期的變化。觀察到此現(xiàn)象,說明開發(fā)板是完好的。

ST Nucleo-F091RC開發(fā)板評測1889.png

接下來就是下載官方例程,這一步主要有兩個目的,第一是充分體會Nucleo的強大,第二則是建立起相應(yīng)的配套開發(fā)環(huán)境。Nucleo板載有ST-Link仿真器/編程器,所以要想使用它的全部功能,就必須安裝USB驅(qū)動。安裝包在官網(wǎng)下載后按雙擊即可自動安裝。另外需要用戶到ST官網(wǎng)下載Nucleo-F091RC相應(yīng)的例程。由于在現(xiàn)代控制領(lǐng)域,Pwm應(yīng)用越來越廣泛,所以我在這里以Pwm例程為例。例程下載完畢后,打開工程檢查工程配置,如下圖。

ST Nucleo-F091RC開發(fā)板評測2112.png

此時務(wù)必要保證Debug一欄下 選擇Use ST-Link Debugger,否則會出現(xiàn)程序下下載失敗的情況。

工程配置設(shè)置完成后,點擊Download下載程序,按下復位鍵,將B3、B10、B11分別接入示波器,可觀察到三路周期相同,占空比不同的PWM波形。

ST Nucleo-F091RC開發(fā)板評測2247.png

ST Nucleo-F091RC開發(fā)板評測2250.png
ST Nucleo-F091RC開發(fā)板評測2252.png

此時說明程序已經(jīng)正常運行,運行到這一步,用戶就可以通過自行編程來體驗Nucleo帶來的新鮮感了。

對于STM32系列而言,一般有三種常見的開發(fā)方式:

1 采用最新的mbed開發(fā),這種方式比較新穎也比較簡單, 無需下載集成ID,登陸mbed.org注冊賬號,即可以在網(wǎng)頁上完成編譯,生成.bin文件。大家可以登錄mbed云端查看;

2 采用標準外設(shè)庫(目前標準庫已經(jīng)停止更新)加MDK的開發(fā)方式。畢竟標準外設(shè)庫流行了這么多年,網(wǎng)上的代碼滿天飛,好處也顯而易見,那就是資料多。但是標準外設(shè)庫的寫法還不是特別規(guī)范,不過ST注意到了這一點,現(xiàn)在又推出了HAL庫。

3 采用STM32CubeMx加HAL庫加MDK的開發(fā)方式。這是目前ST比較推崇的。HAL庫和MDK自然不必介紹,我簡單的談一談STM32CubeMx。STM32CubeMX是一款圖形化工具,它用于STM32初始化代碼的配置。它可以直觀地進行STM32型號和板卡選擇;進行圖形化外設(shè)資源配置;C代碼項目產(chǎn)生,并且它可以很好地支持Eclipse,作為一個插件使用。在使用前,要安裝好java軟件 才能安裝該軟件。這種方式將我們從繁瑣的底層解放出來,使我們能專注于完成我們的開發(fā)而并非一直去鉆研浩如煙海的寄存器。

其實第三種開發(fā)方式終究也是基于庫的開發(fā),只不過代表著更加先進的方案,他可以通過圖形化來快速配置我們單片機。生成所需要的模塊初始化或者操作代碼。我相信這種開發(fā)方式一定會成為未來的主流開發(fā)方式。F0系列以低成本著稱,特別適用成本敏感的便攜式產(chǎn)品,而在便攜式產(chǎn)品中人機交互又是極其重要的功能,所以我主要以驅(qū)動Lcd-5110為例和大家分享下用這種方式開發(fā)的開發(fā)流程。

首先要安裝STM32Cube_FW_F0_V1.4.0。它是使用STM32CubeMx平臺的不可缺少的組件(如果開發(fā)F1系列,就要裝F1的),里面主要有相應(yīng)的HAL庫,和一些資料、底層驅(qū)動。

ST Nucleo-F091RC開發(fā)板評測3074.png

然后我們打開STM32CubeMX,進入主界面(如下圖),點擊New Project。此時我們可以選擇Mcu Selector和 Board Selector。前者與后者的區(qū)別主要在于,后者建立的工程有一些IO口已經(jīng)提前占用掉了(比如上電測試中的綠色LED),為了防止用戶誤用,已經(jīng)提前標注。而前者只有當用戶設(shè)置時,才會標注。這也是STM32CubeMX的一大好處,可以有效的防治開發(fā)過程中的引腳沖突。

ST Nucleo-F091RC開發(fā)板評測3279.png
ST Nucleo-F091RC開發(fā)板評測3281.png

通過查閱資料,我們可以發(fā)現(xiàn)Lcd-5110有如下特性:

總共有八根引腳,除去VCC、GND、背光LED外其實只有五根線需要我們編程操作分別是SCLK時鐘引腳、SDIN數(shù)據(jù)輸入、LCD_RST復位腳、LCD_CE片選腳、LCD_DC數(shù)據(jù)和命令切換腳。

在這里我選擇 PA0模擬LCD_RST、PA1模擬 LCD_CE、 PA4模擬LCD_DC、 PB0模擬SDIN、PC1模擬SCLK,驅(qū)動Lcd-5110。選擇以上五個IO口為輸出模式。

ST Nucleo-F091RC開發(fā)板評測3504.png

工程配置好后,點擊generate source code,生成工程,如果工程生成成功,會出現(xiàn)如下提示,如果不成功,要注意生成路徑有無中文字符,是否安裝了HAL庫等問題。

ST Nucleo-F091RC開發(fā)板評測3593.png

直接點擊Open Project,進入工程

ST Nucleo-F091RC開發(fā)板評測3619.png
  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評論