國內的 Stduino IDE 基於 STM32 的串列埠通訊與 LED 燈閃爍
本文內容:
大概是受到 Arduino IDE 的啟發,網上有一個國人版的 MCU 整合開發平臺, stduino IDE(http://www.stduino.com/pindex.php),請試玩之,然後談一下體會,比如:已經有了 Keil、Ardunio,覺得是否還有必要 “ 再造車輪 ” ?
Stduino IDE 安裝環境:Windows 10
——硬體:
一、安裝 Stduino
- 進入上面的官網地址,點選“ 開始使用 ”。
- 雲盤下載。
- 輸入密碼後,進入以下介面,選擇 Win版,進入該檔案。
- 隨意選擇一個壓縮包,都是相同的,只是壓縮方式不同而已。
- 解壓縮檔案後,進入資料夾。
- 找到 Stduino.exe 檔案,雙擊開啟即可執行 Stdino。
- 這個軟體的風格很像 VS2019 ,左邊檔案列表,中間程式碼編輯區,下面除錯結果顯示。
二、使用 Stduino
1、硬體連線
- 使用 USB 線連上 USB 轉串列埠,使用杜邦線連線 SWD ,SWD 怎麼連呢?繼續往下看。
- 看板子的背面,這裡我們只需要用杜邦線依次連線 SWCLK、GND、SWDIO、3V3 就行了。
說明:
NRST:非同步復位腳,重置除了 RTC 的暫存器以及後備儲存器的暫存器;
SWCLK:時鐘開關;
GND:接地;
SWDIO:輸入/輸出控制。
3V3:電源。
- 杜邦線的另一端接 ST_LINK ,根據正面提示的引腳來進行接入,如下圖:
- 然後將兩個 USB 介面插到電腦上,並開啟開關(這樣,板子就連通了電腦),之後可以進行程式的燒錄。
- 連上電腦後, Stduino 會檢測到埠(和我不一樣的話正常)。
2、燒錄程式
String data = "";
void setup() {
// put your setup code here, to run once:
pinMode(PB0, OUTPUT);
Serial.begin(115200);
}
void loop() {
// put your main code here, to run repeatedly:
while (Serial.available() > 0)
{
data += char(Serial.read());
delay(2);
}
if (data == "stop!")
{
digitalWrite(PB0, HIGH);
Serial.println("STM32 has stopped!\n");
data = "";
while(1);
}
digitalWrite(PB0, HIGH); //turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(PB0, LOW); //turn the LED off by making the voltage LOW
delay(1000); // wait for a second
Serial.println("Hello World!");
delay(1000); // wait for a second
}
說明:
STM32 指南者的 LED 燈的介面如下:
——PB5 紅色
——PB1 藍色
——PB0 綠色
可以自己改變程式碼中的 PB 介面,試驗下不同的 LED 閃爍,當然還可以自己更改程式碼設定成 3 種顏色迴圈閃爍,很簡單。
- 點選編譯按鈕進行編譯。
- 編譯完成後如下圖所示(編譯速度有點慢)。
- 點選下載按鈕燒錄程式到 STM32 上。
- 這時報錯了!
Error: Old ST-LINK firmware version. Upgrade ST-LINK firmware
- 到 Stduino 官網查了下,才知道需要手動更新驅動。
3、更新驅動
- 在安裝路徑
Stduino\main\tool\Servers\STM32CubeProgrammer\binst
下,雙擊ST-LinkUpgrade.exe
程式更新即可。
- 然後又彈出如下的錯誤。
- 拔掉兩個 USB 介面,重新插上去後,就可以了(記得開啟開關)。
- 然後點選 Device Connect ,然後點選 Yes>>>> 即可開始更新。
4、結果顯示
- 重新燒錄程式,顯示如下,即可成功。
- 此時 STM32 上的 LED 在不斷的閃爍。
- 開啟串列埠監視器(右上角的小眼睛)。
- 設定波特率為 115200 ,然後再開啟串列埠,就可以看到接收區不斷接收到字串,當我傳送 stop! 後,STM32 停止傳送資料,LED 燈也停止閃爍。
三、總結
這款軟體是根據國外的燒錄軟體 Arduino IDE 得到的靈感,並製作出的一款國內的燒錄軟體 Stduino IDE,其風格很像 VS2019 ,雖然整個介面看起來比 Arduino 要複雜得多,但是其實操作起來很簡單,我覺得唯一不足的地方就是第一次編譯的時候,時間有點長。
可以與我的另一篇部落格《Arduino 基於 STM32 的串列埠通訊與 LED 燈閃爍 》進行對比兩款軟體的區別,如果有什麼好的建議可以到 Stduino 官網提出來。
總之,能有一款國內的燒錄軟體是一大進步,希望的是能有自己的想法創造出一款全新的全概念的軟體,而不是仿照,加油!支援 Stduino IDE!
相關文章
- 初步使用Ardunio IDE實現STM32的串列埠通訊IDE串列埠
- Arduino下的STM32的串列埠通訊UI串列埠
- STM32串列埠通訊串列埠
- 微控制器小白學習之路(四)---led燈的閃爍
- 基於WebSocket的modbus通訊(三)- websocket和串列埠Web串列埠
- 【嵌入式系統】STM32串列埠通訊的四種方法(基於RTOS)串列埠
- (4)8個led每0.5s閃爍(跑馬燈)
- STM32從零開始 - 第二章:LED閃爍程式
- 串列埠通訊串列埠
- 基於AVR的串列埠與PC機通訊程式碼(uart8位資料)VR串列埠
- 串列埠通訊 (轉)串列埠
- VC++ 的串列埠通訊 (轉)C++串列埠
- 實現閃爍燈星星動畫動畫
- 【STM32】串列埠串列埠
- Arduino 初級使用 單LED等閃爍UI
- linux 串列埠通訊Linux串列埠
- 串列埠通訊協議串列埠協議
- Android 串列埠通訊Android串列埠
- C# 串列埠通訊C#串列埠
- 11. 串列埠通訊串列埠
- 串列埠通訊型別串列埠型別
- (10)uart串列埠通訊串列埠
- C#串列埠通訊遇到的坑C#串列埠
- 樹莓派4B基於OpenCV的C++環境的串列埠通訊樹莓派OpenCVC++串列埠
- 通過串列埠進行通訊 :串列埠
- stduino IDE試用UIIDE
- 串列埠資料抓取及串列埠通訊模擬串列埠
- 串列埠通訊與其他通訊方式相比有什麼優勢?串列埠
- .NET Compact Framework下的串列埠通訊Framework串列埠
- 安卓串列埠通訊疑問安卓串列埠
- java串列埠通訊例項 -Java串列埠
- VC++ 串列埠通訊(轉)C++串列埠
- 串列埠無法正常通訊串列埠
- 基於單連結串列的班級通訊錄
- STM32、ESP8266與MQTT連線阿里雲物聯網的串列埠通訊異常解析MQQT阿里串列埠
- Linux下串列埠通訊詳解(下)讀寫串列埠及關閉串列埠Linux串列埠
- AndroidSerialPort:安卓串列埠通訊庫Android安卓串列埠
- 串列埠通訊gui介面顯示串列埠GUI