Maker入門:開發平台怎麼選?包括樹莓派,5大開發板選擇指南
類似的,相關的系統與開發板、開發平台還有聯發科提出的LinkIt(也稱LinkIt One)平台,或北京君正科技(Ingenic)提出的牛頓(Newton)參考設計平台,或者是國產的香蕉派(Banana Pi)等。
這些新興的系統、系統開發板、參考平台,就Maker的角度當如何選擇呢?筆者嘗試從兩個角度提供分析與建議。
1. 了解開發板定位訴求
首先是了解其定位訴求,Raspberry Pi的原初定位是提供學生平價的電腦教育學習系統,絕大多數的情況下是將Raspberry Pi當一般的電腦在操作,例如使用鍵盤、滑鼠、網路、螢幕等,當然也可以對硬體進行擴充延伸,電路板上有13×2的針腳,可用來連接其他的外部電子裝置,例如無線網路、攝影鏡頭等,使Raspberry Pi變身成其他的電子應用系統。
Raspberry Pi如此,Banana Pi也是相同的定位,差別是Banana Pi的硬體規格較佳,但價格也稍高,Raspberry Pi約25美元或35美元,但Banana Pi約45美元,且Banana Pi的13×2針腳(General Purpose Input/Output, GPIO)幾乎與Raspberry沒有差異,擺明鼓勵他人轉用Banana Pi進行相關發展。
簡單說,Raspberry Pi與Banana Pi多數情況是由USB埠供電,並固接使用,但另外三種平台(LinkIt、Edison、Newton)基本上都是訴求穿戴式與物聯網應用,是更嬌小的平台,其中LinkIt沒有言明尺寸,Edison則如前述,Newton的系統則僅22×38公釐,必要時以電池運作。
2. 晶片架構與軟體開發支援
第二是從晶片架構與軟體開發的角度來評估,先簡單列出5個平台的晶片架構:
雖然全是32位元處理器,但卻有高低、新舊之別,其中ARM7、ARM11屬於古典、經典版的ARM架構,基本上英國安謀(ARM)公司不太推崇繼續使用舊架構,通常鼓勵改行Cortex-M系列(新架構)取代,且LinkIt所用的ARM7比ARM11更低階簡陋,連記憶體管理單元(Memory Management Unit, MMU)都缺乏,其開發幾乎與一般微控制器無異。至於Cortex-A7(Cortex-A系列,新架構)、Edison、Newton比較適合高階應用的開發。
了解架構後,也就了解其開發軟體支援性,其中ARM架構、Intel x86架構有較多的開發工具、作業系統、範例程式、驅動程式等軟體生態系統(Ecosystem)可支援,但MIPS就相對為少,雖然MIPS支持者也宣稱MIPS支援Linux、Android等,然就實務經驗,其Android的支援性較難完整,或雖支援但仍需較多最佳化心力。
雖然ARM、x86架構的支援軟體多,但x86的相關軟體多半較肥大(從個人電腦上的軟體精簡而來),如此較不易開發小型化的應用,因此就軟體開發角度而言,ARM架構最為合適小型化專案的開發。
最後,也當從晶片架構來考慮未來的換用自由度,x86架構晶片除Intel外僅有AMD、VIA供貨,但短期內無法提供與Edison(使用夸克Quark處理器)相同小體積、低功耗的方案;MIPS雖有廣泛授權,晶片供貨業者較Intel多,但MIPS已多年走弱,可選擇的晶片亦不多。
至於ARM架構的換用性最多,而ARM自2008年即開始推展Cortex-A(微處理器)、Cortex-R(即時處理的微控制器)、Cortex-M(微控制器)等新架構,若選用古典版ARM架構,隨著時間用的人將逐漸減少。
LinkIt採用ARM7架構的核心,是較舊型的架構。
依此觀察,LinkIt所用的ARM7EJ-S(MediaTek MT2502A)為2001年的架構,Raspberry Pi所用的ARM1176JZ-F(Broadcom BCM2835)也為2007年,均屬古典版ARM架構。若不在意開發的未來升級、相容延續性,以現階段管用為著眼,依然是理想的選擇。
(本文作者為陸向陽,創新曼波授權轉載)
加入T客邦Facebook粉絲團