当前位置: 首页>编程笔记>正文

arduino怎么把程序傳到板上,STM32替換Arduino直通車

arduino怎么把程序傳到板上,STM32替換Arduino直通車

STM32替換Arduino直通車

前言(廢話較多,可直接滾動到教程)

眾所周知,用Arduino進行開發簡單快捷,一個項目能很快的做好,而Arduino相比STM32,貴且性價比也很低,Arduino Uno可用的針腳也少得可憐,怎么辦??換做STM32吧!STM32高性能,STM32的最小系統版價格很低,對我這種窮學生來說是福利啊!于是我興致勃勃的淘了STM32的最小系統版準備入坑STM32。

可接下來我就要下載各種各樣的軟件進行編程,燒錄,寫個最簡單的Blink程序都非常麻煩,折騰我一天。

要是能像Arduino一樣簡單方便快捷就好了,怎么辦呢?那么現在正式開始教程!

所需工具

1,STM32最小系統板,配套數據線,20元以下的就可以了。
2,Arduino(不是必須,但如果你不想買USB轉TTL就可以把Arduino用作USB轉TTL)或者USB轉TTL模塊一個。
3,跳線數根。

教程

1,配置Arduino并下載所需的文件

首先我們下載這個人開源的Arduino-STM32項目
https://github.com/rogerclarkmelbourne

下載下來并解壓

Arduino快捷方式右鍵打開文件所在位置,將解壓下來的文件移動到如下圖所示目錄,并將文件夾改名為STM32

接下來是重點,打開Arduino,進入開發板管理器,安裝如下圖所示的開發板文件


安裝完后選擇你的STM32開發板型號

Arduino新建一個空文件,點擊左上角的驗證按鈕,看看能不能編譯,如果可以就繼續

2,為STM32下載和燒寫Bootloader

接下來我們需要用USB轉TTL給STM32燒錄Bootloader,首先我們要下載Bootloader,進入剛剛那個人的另一個開源項目,這個地址:
https://github.com/rogerclarkmelbourne/STM32duino-bootloader/tree/master/binaries
選擇你的STM32最小系統板的D2所對應的接口名字的文件下載(一定要選擇對應的)
比如我這里找到開發板的原理圖,D1是通電后的指示燈,D2是另外的LED燈,它連接了PC13針腳

那么我就選擇這個文件下載

下載完成后,我們要燒錄這個文件到STM32里,我們先下載所需要的軟件,叫做FlyMcu。
下載地址:https://pan.baidu.com/s/1bqkVY6j
密碼:vygm

然后,這里我用Arduino代替USB轉TTL進行燒錄,降低額外的成本。

arduino怎么把程序傳到板上、需要注意的是,STM32的BOOT0要接上VCC高電平,BOOT1要接上GND低電平,然后按STM32版上的REST按鈕使之重啟進入ISP下載模式,我們才可以燒錄Bootloader進去(重要)。

然后我們還可以看到,PA9是TX,PA10是RX。STM32的TX連接Arduino的RX(0接口),STM32的RX連接Aruidno的TX(1接口)。
緊接著,如果要把Arduino用作USB轉TTL一定要把Arudino的RST接口一直連接Arduino的GND!Arduino連接電腦,STM32也要供電!

OK,恭喜你來到了這一步,接下來我們要用FlyMcu燒錄程序,但FlyMcu無法燒錄.bin文件(可以打開但無法燒錄),這時我們要需要把剛剛下載下來的Bootloader從.bin文件轉換成.hex文件進行燒錄!
所以我們還需要一個軟件,來完成這個操作,叫做BinToHex。
下載地址:https://pan.baidu.com/s/1kWkFGgB
密碼:ox9g

選擇我們剛剛下載的bootloader文件,然后選擇文件夾導出成.hex文件,隨便取個名字。

這時我們還需要很重要的一步,將生成的.hex文件用文本編輯器打開,將第一行的:020000040000FA更改成:020000040800F2(非常非常重要)


緊接著保存退出,我們打開FlyMcu,選擇已經修改好的.hex文件,點擊開始編程

注意,如果長時間無法連接,請按STM32版上的RST按鈕或者斷電重試!
如果燒錄Bootloader成功,并且STM32版是通過USB連接電腦供電的話,你的電腦會提示你USB設備異常,這是沒用安裝正確的驅動造成的,我們打開設備管理器看一下

3,為電腦安裝連接STM32的驅動

解決這個問題,接下來我們安裝驅動程序。
進入我們之前下載的文件目錄,點擊下圖所示的.bat文件安裝驅動,一定要要管理員身份運行


success就是成功了,我們按STM32上的RST鍵,隨著電腦的提示音,這時我們再看看設備管理器

我們發現多了一個串口,如果不行就重啟電腦試一試。

4,用Arduino IDE為STM32燒錄Blink程序

最后我們打開Aruidno IDE,選擇上傳程序的模式,如下圖

然后寫入一個Blink程序

void setup() {pinMode(PC14, OUTPUT);
}void loop() {digitalWrite(PC14, HIGH);delay(50);digitalWrite(PC14, LOW);delay(50);
}

隨著紅色的“Done!”和電腦一聲USB提示,STM32自動重啟,然后連接在STM32PC14接口上的LED開始閃爍了!
以后我們不需要額外的硬件,直接用數據線連接STM32最小系統版和電腦,并打開Arduino IDE就可以像玩Arduino一樣簡單方便快捷了!

教程結束,如果博文有錯誤或者有疑問,歡迎評論來告訴我,謝謝!

https://www.nshth.com/bcbj/338422.html
>

相关文章:

  • arduino怎么把程序傳到板上
  • arduino 1602
  • arduino串口和i2c沖突
  • arduino模塊化編程
  • STM32庫開發實戰指南
  • STM32教程
  • arduino子程序
  • arduino四軸
  • 編程語言難度排名,8 月最新編程語言排行榜
  • 手機usb調試被禁用怎么恢復,解決安卓手機USB接口被外設占用導致無法調試的問題
  • 手機上的安卓模擬器,連接手機模擬器
  • 搜狗輸入法怎么手寫和拼音一起輸入,零彝輸入法用戶協議
  • ubuntu自帶gcc編譯器嗎,安裝ubuntu20.04(安裝vim、gcc、VMtools、中文輸入法、漢化、修改IP、無法連網問題)
  • 輸入法哪個最好用,android ip格式化輸入法,Android設置默認輸入法
  • blkmov指令使用例子,ORB-SLAM2代碼解析
  • windows補丁kb3033929怎么安裝,Win8.1 kb2919355安裝不上怎么辦?
  • 淘寶店鋪如何增加流量,淘寶賣家開店怎么做有效減少淘寶垃圾流量
  • 商標使用必須加TM或R嗎,商標中R標和TM標的區別
  • 沒有商標可以上速賣通嘛,速賣通商標授權怎么弄?速賣通官方授權模板書分享
  • 商標中R跟C分別代表什么,商標TM和R有什么區別
  • 商標中R跟C分別代表什么,CSDN Markdown 商標標志 C、TM、R
  • 有關向量的重要結論,專題-句向量(Sentence Embedding)
  • 信息安全等級保護的5個級別,信息安全等級保護措施之網絡安全技術
  • 書是黃金屋下一句是什么,書中的“黃金屋”
  • gps定位,定位iowait問題
  • 渲染軟件哪個好用,Android平臺上基于OpenGl渲染yuv視頻
  • C# wpf 通過HwndHost渲染視頻
  • h5商城源碼,H5全新紅包直通車網站源碼 包含多款游戲已對接支付
  • android基礎面試題及答案,安卓手機系統開發教程!BTAJ面試有關散列(哈希)表的面試題詳解,大廠直通車!
  • 中交第一公路勘察設計研究院,緯地道路縱斷面設計教程_直通車 | 中交一公局公路勘察設計院有限公司招聘公告...
  • arduino怎么把程序傳到板上,STM32替換Arduino直通車
  • 記錄2015年年初跳槽的經歷!
  • 什么情況下可以跳槽,記錄 2015 年年初跳槽的經歷!
  • 聚合支付公司前十,聚合支付行業的2019年終總結大會!細品,你細品~
  • mastercam后處理論壇,mastercam2017后處理升級_如何升級Mastercam 9.1版后處理?
  • 動態表情包制作,android 視頻轉表情,視頻怎么轉gif?好用軟件分享,自己也能制作出搞笑表情包...
  • pc頁面怎么打開,頁面的版心html,關于PC端網頁版心及網頁自適應問題
  • webp圖片怎樣改成jpg,如何給圖片更改格式?jpg轉webp怎么操作