2017年6月24日 星期六

[Ted好玩專欄:IoT] MPU(Micro Processor Unit,微處理器)+MCU(Micro Controller Unit,微控制器)兩晶(片) 的玩法

MPU(Micro Processor Unit,微處理器)+MCU(Micro Controller Unit,微控制器)兩晶(片) 的玩法@Ted好玩

Ted Lee
Jun. 24, 2017

Line:ted2016.kpvs
Email:Lct4246@gmail.com
Blog(泰布布):http://lct4246.blogspot.tw/
URL(Ted's Bu Bu):https://sites.google.com/site/lct4246/
FB(Ted's BuBu):https://www.facebook.com/ted.lee.10420321
88x31.png[1]


自從Arduino在2003年面世後[2],開始有人為它添加各式各樣的擴充板(extension shields)。這些板子中,有一類的「飛行翼」,像ESP8266者流,使之可以衝向雲端而完整介接了整個物聯網的最後一哩路(the last mile)[3]。因此,時至今日,各類常見的物聯網開網發板中若內含Arduino功能者[4],它們大致可分為兩大類:

1.一晶(片)  將Arduino MCU和MPU/CPU整合成單一顆晶片(single chip)。例如:Arduino.cc與Intel合作的Arduino 101/Genuino 101開發板,它搭載了x86(Quark)與ARC(Argonaut RISC Core)雙核心(dual core)的Intel Curie晶片。
2.兩晶(片) 將Arduino MCU和MPU/CPU整合成單一系統晶片(System on Chip)。Arduino.cc推出含有Wi-Fi路由功能的Arduino Yun開發板,它是由Qualcomm(高通)的Atheros AR9331和Atmel ATmega32U4兩顆晶片構成。此外,聯發科的LinkIt Smart 7688開發板是由MT7688AN與Atmel ATmega32U4整合而成。而新一代的LinkIt Smart 7697開發板更是由ARM(Advanced RISC Machines)的Cortex-M4 CPU與Atmel ATmega32U4搭配的準系統。更有甚者,DFRobot的LattePanda是由Intel Atom x5-Z8350的x86架構CPU和Atmel ATmega32U4兩個晶片合體的系統。

以上是說明含有Arduino功能開發板的硬體佈署(deployment)。而軟體的程式架構(software architecture)方面,則在Arduino MCU上使用類C(C-like)程式來控制此MCU的運作。然後透過橋接介面(bridge interface)來與MPU/CPU溝通。在MPU/CPU端則可以使用各種已有函式庫(libraries)支援的各類程式語言(programming languages),像JavaScript、Node.js、C、Java、Python…等等。


[1]六種授權條款。
[2]Arduino:https://en.wikipedia.org/wiki/Arduino#History。
[3]將開發板與行動Apps藉由雲端跨網段(cross-network segment)的特性將整個物聯網完整地架接了起來。
[4]未含Arduino晶片的開發板像英國樹莓派(Raspberry Pi)的單板電腦(single board computer)及其相容板(compatible board),例如:香蕉派、蓮霧派(Roseapple Pi)、華碩的Tinker…。

沒有留言: