stm32f103可以使用arduino ide來寫程式
過程需要一點點手動的設定
用arduino IDE來開發stm32,比用eclipse簡單一點
雖然省掉stlink的硬體,但變成只能上傳程式而不能即時除錯了
如果說想要用arduino的方便性取得stm32的高效能
只能說程式設計方面要精簡一點~
方法出處:
https://wiki.stm32duino.com/index.php?title=Main_Page
大概的步驟如下:
1.stm32f103要寫入bootloader
可用st-link快速燒錄,要燒錄的bin檔善心人已經打好,下載即可
2.arduino IDE要保持最新版本,然後先安裝一個板子管理員名為:Arduino SAM Boards
這是為了取得compilier
3.根據出處的指示,下載硬體相關檔案放到arduino的程式碼資料夾中的hardware資料夾,如果沒有hardware資料夾就做一個
這個步驟是手動方式設定stm32在arduino ide中所需要的工具與設定檔
4.重新啟動arudino ide後,就可以看見新的選單,裡面就會有stm32f103(我是用這個晶片的板子做測試)。
5.可以開始寫程式了
在arduino ide的範例裡面有stm32duino的範例程式,甚至有rtos
我還測試了一下有一個範例叫做mass,可以把stm32變成usb隨身碟,哈哈,容量只有8kB,這個隨身碟讓我想到micro:bit,都是arm的mbed技術,也不意外就是了,倒是,是否有應用的場合?值得再測試看看。(構思中…)
要注意的事項:
有時候會無法上傳,這時候必須按著stm32的reset等到快要執行到上傳動作時放開,就可以順利上傳(彷彿之前把玩arudino的時候也有遇到這樣的問題)
心得:
如果說要用stm32取代avr系列的arduino,雖然說stm32功能強大,但是手動設定相對太多,可用性有疑慮(無法上傳的問題),但如果是進階玩家則是可以考慮替代。至於為什麼一定要用arduino ide來開發?除了想要試試看能否為部分客戶找到高速運算的快速解決方案外,就是對於使用bootloader技術上傳程式碼的方法有偏好,試想,軟體開發與硬體需求都大幅簡化了,只要插上usb就可上傳程式碼,好boot不試嗎?。