嵌入式開發環境建置
選擇開發語言
開發語言 | 特點 | 優缺點 |
---|---|---|
C/C++ | 嵌入式系統開發的主流語言 | 優點: 效能高 缺點: 開發速度慢,需要較深入的硬體知識 |
Python | 開發速度快 | 優點: 易於上手 缺點: 效能較差,不適合嵌入式系統 |
Arduino C++ | 基於C/C++的開發環境 | 優點: 適合初學者入門 缺點: 功能有限 |
Rust | 新興的系統語言 | 優點: 效能高,安全性好 缺點: 學習曲線陡峭 |
本來想要選擇Rust, 但是因為原生是用C/C++, 怕有些功能無法透過Rust實現 ex: 深度睡眠, 所以選擇C/C++.
選擇開發平台
以下是主流嵌入式開發平台的比較表:
開發平台 | 語言支援 | 特點 | 優點 | 缺點 |
---|---|---|---|---|
Arduino IDE | C/C++ (Arduino) | 簡單易用,專為Arduino開發設計 | 適合初學者,安裝簡單,社群資源豐富 | 功能有限,不適合大型專案 |
VSCode + PlatformIO | C/C++, Python | 跨平台,支持多個嵌入式框架 (如ESP32、STM32) | 擴展性強,插件豐富,自動補全功能佳 | 初始設定較為複雜 |
Keil uVision | C/C++ | 專業的ARM處理器開發工具 | 強大的除錯功能,支持CMSIS | 價格昂貴,對Windows依賴高 |
IAR Embedded Workbench | C/C++ | 用於高效能微控制器的開發 | 高效能編譯器,優化能力強 | 授權費用高,學習成本高 |
Eclipse IDE + STM32CubeMX | C/C++ | 開放源碼,支持多平台 | 對STM32開發友好,插件靈活 | 介面較為複雜,啟動速度慢 |
Mbed Studio | C/C++ | 針對ARM Mbed開發框架 | 雲端整合,社群資源豐富 | 嵌入式硬體支援不如其他平台廣泛 |
CLion + PlatformIO | C/C++, Python | 強大的IDE,專注於多語言開發 | 智能代碼補全、重構工具豐富 | 需要訂閱JetBrains授權 |
只用過VSCODE, 有空再來試試Arduino IDE.