圖一 : Arduino官方網站透露將推出Arduino UNO R4開發板 |
|
Arduino自2005年推出後歷經一段時間的摸索改進,過程中推出過Diecimila、Duemilanove等開發板,一直到2010年推出Arduino UNO,才出現真正大宗使用的開發板,並以第三版(Release 3, R3)最為人所熟知。
雖然Arduino廣受歡迎,但規格已逐漸老舊,近年來Arduino官方積極將Arduino從8位元升級到32位元,如2012年推出Arduino Due、2014年推出Arduino Zero,但多數人仍是使用8位元的開發板。
或許為了增強32位元取代8位元的力道與進度,近期Arduino官方宣布推出Arduino UNO R4,繼承原本Arduino UNO之名,並將版本數字從3變成4,但內容卻是重大提升,以下將對R4的改變進行觀察。
Arduino UNO R3 vs. R4
首要不同是MCU主控晶片,R3為AVR架構的美國艾特梅Microchip/Atmel ATmega328P,R4為Cortex-M4架構的日本瑞薩Renesas RA4M1,兩者運作時脈有3倍差異(16MHz vs. 48MHz)且後者為32位元。
SRAM方面ATmega328P僅2KB而RA4M1為32KB,Flash方面ATmega328P為32KB而RA4M1為256KB。簡言之,R4在硬體效能、資源上是R3的3~16倍強。
另外因社群的反應,R4改用近年來已普遍使用的USB Type-C接頭供電(最高可接入24V直流電壓,並搭配改善開發板的散熱設計),比R3更方便接取電力;R4也加入CAN匯流排、SPI連接埠,如此開發板在與多個外部板卡連接時可以大幅簡化連接線路,這是過去R3所不具備的;R4還提供一個比過往更精密的類比數位轉換器,可達12位元解析度,R3為10位元。
註1:Arduino官方部落格未提及R4具備SPI連接埠,但Arduino官方線上商店的產品型錄頁面提及具備SPI連接埠。
圖二 : Arduino UNO R4的主控晶片為Renesas的RA4M1(圖片來源:Arduino官網) |
|
R4與R3高度相容
雖有提升、突破之處,但既然延續UNO之名,那麼R4必然有相同相似之處。R4在整個開發板外型尺寸(form factor)上與R3相仿,接腳位置也相同,且R4也持續提供5V電壓的輸出供電,供功能擴充子卡(Shield)使用,因此過往用於R3的子卡幾乎都可相容用於R4上。過去使用R3開發板完成的創客作品,也積極可以直接把R3拆起,直接換裝上R4以此升級。
註2:早期晶片的運作電壓為5V,隨著半導體製程技術不斷縮密,運作電壓也持續降低,如降至3.3V、2.5V、1.8V等,故許多新的開發板因使用新製程技術實現的主控晶片,連帶只提供較低的電壓,而逐漸捨棄對5V電壓的支援。
兩種版本的R4
R4另一個特別點是有兩種版本(version),分別稱為UNO R4 WiFi、UNO R4 Minima,前者具有WiFi無線通訊功能,會在開發板上配置一個Espressif S3 WiFi模組,後者則否。
Arduino官方對此的論述是,有WiFi的版本適合教育用、創客用、電子嗜好者用,沒有WiFi的版本適合單純只想使用新款微控制器的效益,簡言之有WiFi的版本貴一點。
函式庫高度相容
除了開發板尺寸相容、擴充子卡相容外,軟體開發方式、軟體撰寫時的函式庫(library)呼叫引用,乃至範例程式(example)等也是高度相容。不過,主控晶片從8位元升級成32位元,想要軟體完全相容是極困難的,所以Arduino官方也坦言理論上如此,實際上有些範例程式、函式庫等已經是針對8位元AVR架構特別最佳化撰寫,難以直接用於新的32位元開發板上。
為了讓這個過渡更快、更平順、更無痛,Arduino官方啟動一個先期採用者推動案(early adopter program),把一些已針對8位元最佳化、必須改寫移植成32位元的函式庫列出來,號召過往已在Arduino社群貢獻過的程式開發者能提供協助,加速新版函式庫的完整化速度,相關網址為https://sites.arduino.cc/UNOr4
最後,UNO R4雖在3月發表,但實際發貨要到5月下旬,目前開放線上排隊(加入等候清單)。
(本文由VMAKER授權轉載;連結原文網址)