Nucleo開發(fā)平臺是ST在2014年最新發(fā)布的易用性好、可擴展性佳的低成本平臺,因其簡單自由、靈活可擴展受到多數(shù)工程師的喜愛,特有的支持ARM mbed項目開發(fā),支持云端開發(fā)以及兼容Arduino擴展接口等特性讓它一度有取代Discovery系列板卡之勢,可以說,Nucleo系列板卡讓ST融入了一個更加寬廣的生態(tài)圈。
最近,我們又拿到了兩款ST Nucleo系列板卡,不過不同于先前評測過的兼容Arduino?R3擴展接口的Nucleo系列板卡,此次拿到的STM32F042以及STM32L031開發(fā)板設(shè)計的更加小巧,同時兼容Arduino?Nano的擴展接口,廢話不多說,我們直接看實物圖。
?
STM32F042以及STM32L031開發(fā)板采用了Nucleo系列板卡的一貫包裝,兩者的板型也保持一致,與Arduino?Nano的板型十分相似。通過ST的產(chǎn)品線可以發(fā)現(xiàn),單看板卡上的功能,STM32F042 Nucleo以及STM32L031 Nucleo幾乎持平,主要的不同在于兩者搭載了不同型號的微控制器。比如,ST將STM32F042微控制器歸在主流的應(yīng)用產(chǎn)品,而STM32L031則更偏向于需要低功耗應(yīng)用的場景,比如,可穿戴設(shè)備等。
?
?
雖然乍眼一看這兩塊板卡極其相識,很難分辨誰是誰,但是仔細觀察的話,還是能發(fā)現(xiàn)稍許的不同之處。
?
?
首先當然是主控制器,STM32F042 Nucleo搭載的是STM32F042K6T6,基于ARM Cortex-M0處理器,主頻48MHz,屬于主流的微控制器系列;而STM32L031搭載了STM32L031K6T6,基于ARM Cortex-M0+,主頻32MHz,屬于ST的低功耗系列MCU。
?
?
其次,低功耗的STM32F031 Nucleo開發(fā)板上搭載了外部的32.768kHz晶振,而STM32F042 Nucleo開發(fā)板上沒有。
至于其它功能上,板卡維持了一致的設(shè)計,在板卡的背面則主要是設(shè)計了一個STLINK/V2-1調(diào)試器,方便工程師學習開發(fā)的時候下載調(diào)試。
?
?
總的來說,STM32F042 Nucleo以及STM32L031 Nucleo開發(fā)板在板卡的功能實現(xiàn)上基本保持了一致的設(shè)計,這也主要是方便兼容Arduino?Nano 開發(fā)板,而兩者最大的不同之處也就是在于所搭載的微控制器的區(qū)別,下表則是兩款MCU產(chǎn)品具體特性的對比。
?
?
從表格中可以看到,在系統(tǒng)資源上,STM32F042K6相對于STM32L031K6多了CEC、CAN、觸摸通道等功能,而STM32L031K6更多偏向于自身低功耗特性,比如:
0.25uA的Standyby模式
0.38uA的Stop模式
低至76uA/MHz的Run模式等
STM32L031K6還擁有比STM32F042K6更低的工作電壓,并且具有掉電復(fù)位功能,非常適合電池供電設(shè)備的低功耗產(chǎn)品應(yīng)用。
開發(fā)環(huán)境?
Nucleo系列板卡的開發(fā)環(huán)境相信大家已經(jīng)不會再陌生了,除了第三方IDE工具如Keil、IAR等,就屬mbed云端開發(fā)比較方便快捷了,但是有個缺點就是無法調(diào)試,寫寫小程序還可以,但是涉及到復(fù)雜的代碼程序還是要回歸到第三方的IDE工具上來。在開發(fā)資料方面,ST為工程師準備一個完整的開發(fā)庫,比如針對STM32F042 Nucleo開發(fā)板的STM32CubeF0,針對STM32L031 Nucleo開發(fā)板的STM32CubeL0,這些我們都可以通過官網(wǎng)下載獲取。
?
?
上電
此次的Nucleo板卡可以通過多種方式供電,最為普遍的是直接通過板載的MicroUSB接口供電,其次,我們還可以通過外部的外部3.3V/ 5V/ 7~12V電源供電,非常靈活。
?
?
?
?
ST Nucleo系列板卡內(nèi)置的出廠程序基本都是LED閃爍的例程,此次的板卡也不例外,不過,不同于之前的Nucleo系列板卡可以通過用戶按鍵調(diào)節(jié)LED占空比以達到改變LED的閃爍頻率,STM32F042以及STM32L031開發(fā)板上并沒有設(shè)計用戶按鍵,有且只有一個復(fù)位按鍵。
?
?
作為兩款功能類似的板卡,官方提供的例程也較為常見,不過針對低功耗的STM32L031 Nucleo開發(fā)板,官方也提供相應(yīng)的低功耗測試例程,我們也重點來了解下STM32L031K6T6微控制器的功耗狀況。
本次測試的實驗例程出自ST官網(wǎng)提供的例程。
?
?
確保安裝好STLINK/V2-1驅(qū)動。
?
?
以Keil IDE工具為例,安裝STM32L0xx_DFP database。
?
?
載入相應(yīng)的例程通過STLINK下載到開發(fā)板中。
?
?
不過在實際功耗測試的時候也遇到了點問題,由于電流測試跳帽處的接口太狹小,想接杜邦線的時候一不小心直接把排針座給扯下了,只能焊接兩根導(dǎo)線測試。
?
?
選取幾組實測結(jié)果供大家參考。
PWR_LPRUN模式
?
?
PWR_LPSLEEP模式
?
?
待機模式
?
?
待機模式+RTC
?
?
相比ST官方提供的數(shù)據(jù)來看,我們發(fā)現(xiàn)實際測試的結(jié)果與官方給出的數(shù)據(jù)還是有些許出入,當然本身的測量儀器也不是很好,精度也不夠,只供大家參考。不過,話說回來,在ST的同級別微控制器中,L系列的產(chǎn)品在功耗上的表現(xiàn)確實比較出色,加上ST微控制器在同類產(chǎn)品的競爭中一直保持著不錯的價格優(yōu)勢,在實際的產(chǎn)品研發(fā)中,相信會讓工程師更加偏向于選用ST的產(chǎn)品吧。
小結(jié)
介紹并對比了ST最新推出的STM32F042以及STM32L031?Nucleo開發(fā)板,板卡基于Arduino?Nano原型設(shè)計,板載STLINK/V2-1調(diào)試器、兼容Arduino?Nano擴展接口、支持ARM mbed在線編譯器以及第三方的IDE設(shè)計工具,簡單、方便、好用;另外,板卡搭載面向低功耗應(yīng)用的ARM Cortex-M0以及ARM Cortex-M0+處理器,是想要學習或者開發(fā)基于ARM系列微控制器的低功耗產(chǎn)品的理想選擇。
評論