也因為如此,本來可用於Arduino上的Shield,改轉接到LinkIt ONE上,有可能不能動,這點要注意,最好重新確認一下電壓、電流等差異,比較妥當。
2.PWM數目的不同
正規Arduino有6組脈寬調變輸出(PWM Output)可用,但MT2502A沒有,只有2組,僅剩D3、D9接腳有,原本可以用的D5、D6、D10、D11無法使用,如果本來撰寫的控制程式是使用D5、D6、D10、D11接腳輸出PWM信號的,必須改寫程式。
縮減成剩2組,各位可能很失望,但與完全沒有PWM的樹莓派(Raspberry Pi)相比,可能就會安慰點,至少還有2組。樹莓派由於完全沒有PWM,只能用兩種方式補償,一是用軟體模擬PWM,但會耗用較多的樹莓派主控晶片(BCM2835/BCM2836)的運算力、電力,或者透過GPIO接腳外接其他具有PWM輸出能力的晶片。
就算一起頭就是使用D3、D9接腳輸出PWM,程式改寫可能性也相當高,因為MT2502A提供的是13-bit解析度(大陸稱:分辨率)的PWM輸出,與Arduino/ATmega提供的8-bit輸出不同。所以,有關PWM的Duty Cycle還是要檢視或調整一下。
3.ADC數目的不同:
正規Arduino有6組類比(大陸稱為:模擬)輸入可用,即A0∼A5,但MT2502A只有3組,即A0∼A2,且LinkIt ONE的參考電壓固定為5V,不像Arduino還可以自行選擇參考電壓。
因此,過去使用A3∼A5的ADC(類比數位轉換)的程式必須改寫。不過,LinkIt ONE與Arduino的ADC解析度都是10-bit,這方面較能直接沿用。
4.時間不同
Arduino只跑自己的Arduino控制程式,但LinkIt ONE其實還有跑其他程式,最底層、最優先執行的是GSM數據通訊,其次是裝置程式,更次為Link OS作業系統,最後才是Arduino控制程式。所以,過去把時間掐很緊的控制程式寫法,有可能在LinkIt ONE會造成時間偏差,也是建議改寫。
其他建議:
另外,有些L字母開頭的函式是專供LinkIt ONE使用,若與Arduino本有的函式功能相重疊,建議盡量用LinkIt ONE提供的。
還有,LinkIt ONE是以外掛程式方式,附掛(檔案解壓縮後,拷貝到與Arduino相同的安裝路徑、資料夾內)在正規Arduino整合開發環境下,本以為只要新版的整合開發環境均可附掛,但後來發現1.6.x版無法在選單上找到LinkIt ONE,之後閱讀常見問答集,才了解依然建議用舊版1.5.7版來附掛。
其他也包含電腦會偵測到LinkIt ONE有2個COM埠,一是除錯(Debug)埠,另一是數據(MODEM)埠,真正傳輸程式到LinkIt ONE上,必須選用除錯埠。而正規Arduino只有1個COM埠。