2012-11-13

MSP430 Launchpad vs Arduino Leonardo

經過一個禮拜以來的使用,感覺Leonardo 還是略勝一籌。

首先是IDE 方面Launchpad用的energia 會有抓不到板子的問題,以致
拖累整個OS, 讓系統hang住,而且相當嚴重。後來改用command line
方式compile 以及upload, 是可以避開IDE 這個問題,不過還不是根本解決。
有時在command line 跟Launchpad 溝通還是不通,要再次插拔。

最後根據 http://www.43oh.com 討論文章去抓另外的 cdcacm 來compile
取代Linux 系統原有的cdc-acm, 情況才有改善。在這裡:
https://github.com/energia/Energia/wiki/Linux-Serial-Communication

再來就是energia 給Linux 的只有32-bit 版本, 無法在64-bit Linux 使用,
為了寫Launchpad 的程式就必須另外跑一套32-bit Linux, 還好有各種Live
Linux system 可用,還不是太大的問題。

arduino 則是32/64 都有提供,IDE 作業時也很穩定的可以抓到板子。

發現另一個問題就是同樣程式碼的一個程式,在兩塊板子表現出來的結果卻
不一樣。我遇到的是自己寫的一個Morse 程式,它可以從電腦傳送「字串」
給這兩塊板子,讓它轉換成人耳可聽的電報碼,在使用tone 這個函數時
tone(x, y, z); delay(n); 
'z' 跟 'n' 關係人耳的感覺,Leonardo 很快就調好比例,但是Launchpad
調很久聽起來還是不順,我指的不是音調而是節拍,沒調好的話對聽得懂
電報碼的人來說,會覺得是一種困擾。

這同時又發現Launchpad 在接收指令方面有問題, 就是第一次送出指令後,
Launchpad 沒有動作, 例如我送出 "green blink" 是要它閃綠色LED, 但是
要在送第二次時才會閃,之後比這串指令短的指令是沒問題,但是比這串字
更長的指令,在第一次傳送時一樣又是沒有反應動作,要傳第二次才會動。

Leonardo 則是很誠實的有指令來,不分長短,送來就有動作!很穩定。

Launchpad 不曉得會不會還有什麼其他類似的潛在問題?

Leonardo 還有一個好處,就是只需插上USB, 就有3.3V及5V兩種電源輸出,
Launchpad只有3.3V, 有一些SSRelay 最低需求是4V 以上電源,這時用Leonardo
就不需額外的電源。

看來如果要做一些比較重要的工作,可能還是用Leonardo 比較方便可靠。

不過Launchpad 有一些方便的地方,像是onboard 紅、綠各一粒LED, 而
Leonardo 只有一粒黃色LED(User可定義的), Launchpad 也比Leonardo 多
一粒按鍵可以自行定義。

然而Launchpad 的LED 很刺眼,反觀Leonardo 的LED 顏色柔和。

最後就外觀的工藝來看,Leonardo 在藍色板面上用白色點標示Analog pin,
而在白色背面上也標示出Analog pin, Launchpad 背面什麼都沒標。

Leonardo 看起來乾乾淨淨的,Launchpad 板子上可以看到一些像是膠或是
漆的黏著物,感覺有點髒髒的,我想畢竟Leonardo是Made in Italy 而不
是Made in China 吧!

沒有留言: