準(zhǔn)備用STM32的開發(fā)板寫一個直流無刷電機(jī)BLDC的驅(qū)動程序,對Arduino IDE的編程模式比較熟悉,通過相應(yīng)的插件,Arduino IDE同樣可以支持STM32。
另外因?yàn)槭诸^沒有STM32的下載器,需要通過串口燒錄程序。準(zhǔn)備先用一個Samples中的點(diǎn)亮LED的示例來跑通這個STM32的開發(fā)流程,沒想到竟然折騰了差不多一天的時間,不懈努力,不輕言放棄,最后才在STM32開發(fā)板上,通過Arduino IDE,串口燒錄程序,成功點(diǎn)亮了IDE。看到IDE一閃一閃,體驗(yàn)了成功的喜悅。
記錄一下折騰的過程。
手頭的STM32開發(fā)板的型號為STM32F401CxUx。本來準(zhǔn)備買來做USB聲卡的。
STM32F401.JPG
STMF401CxUx.JPG
一、軟件安裝
1、在Adruino IDE中安裝STM32開發(fā)板插件。
點(diǎn)擊Adruino IDE File菜單,選擇'preferences..'
preferences.png
點(diǎn)開”Additional boards manager URLS' 添加STM32開發(fā)板的URL
打開左下方的連接,打開網(wǎng)址,查找STM32的官方鏈接。拷貝后加入到列表中。
STM32_BOARD_URL.png
打開Board Manager面板
board_manager.jpg
安裝STM32插件
install_stm32_board.jpg
安裝好之后,tools菜單中會出現(xiàn)STM32芯片的選項
tools_menu_stm32.jpg
2、安裝STM32CubeProgrammer
到ST的官網(wǎng)注冊下載STM32CubeProgrammer,下載STM32CubeProgrammer后安裝,并安裝STM32的Bootloader串口驅(qū)動程序。
STM32CubeProgrammer.jpg
安裝好之后,設(shè)備管理器會出現(xiàn)STM32 bootloader設(shè)備
bootloader.jpg
二、串口連接STM32
為了讓電腦識別STM32的串口,需要設(shè)置STM32的BOOT0, BOOT1引腳,網(wǎng)上搜了一大遍,知道了設(shè)置BOOT0=1, BOOT1=0啟動。但是把STM32板子前后翻了一個遍,也沒找到這兩個引腳在哪里。
最后問店家要了STM32板子的文檔,耐心的看了一下文檔。終于知道怎么設(shè)置BOOT0,BOOT1
BOOT_modes.jpg
BOOT_SETTINGS.jpg
boot_switch.jpg
把板子上的撥碼開關(guān)1和3用一根牙簽撥到ON的位置。即可設(shè)置成'System memory'的啟動模式。
打開STM32CubeProgrammer,選擇USB,COM端口選COM1.即可連接STM32成功。這時可以通過STM32CubeProgrammer下載燒錄。
STM32CubeProgrammer_connection.jpg.png
三、Arduino IDE連接STM32
首先要將STM32CubeProgrammer程序所在的目錄添加到系統(tǒng)的PATH路徑中,因?yàn)锳rduino將調(diào)用命令行的STM32CubeProgrammer_CLI程序
STM32CubeProgrammer_cli.png.jpg
選擇STM32板子,COM1端口,將上傳模式更改為DFU模式
STM32CubeProgrammer_DFU.jpg
至此,所有的設(shè)置完成。
三、燒錄測試BLINK代碼
打開Arduino的閃燈Blink例子,編譯上傳,提示上傳成功。
blink_sample.jpg
blink_upload_completed.jpg
可是,這個LED就是沒有閃。
用牙簽把BOOT0,BOOT1恢復(fù),拔掉USB重啟。仍然不閃。反復(fù)實(shí)驗(yàn),浪費(fèi)了幾根牙簽后,依然無果。。。
最后即將放棄的時候,看到有篇文章說要更改一下LED的管腳,打開STM32的圖一看,LED連接到PC13引腳。
STM32_PC13.jpg
把代碼中的LED_BUILTIN全部改成PC13, 編譯上傳。
奇跡出現(xiàn)了。
小藍(lán)燈終于閃了。
一天的功夫啊
PS:說明書中的文字綠燈應(yīng)該是藍(lán)燈
上一篇:STM32中斷系統(tǒng)
下一篇:嵌入式單片機(jī)之stm32串口你懂了多少!!
推薦閱讀最新更新時間:2025-06-18 11:36


- 熱門資源推薦
- 熱門放大器推薦
-
【Follow me第三季第1期】任務(wù)五光線強(qiáng)度檢測——實(shí)現(xiàn)一款智能臺燈,根據(jù)環(huán)境光線強(qiáng)度自動調(diào)節(jié)亮度
-
【Follow me第三季第1期】任務(wù)三:Arduino環(huán)境運(yùn)動傳感器數(shù)據(jù)讀取
-
【Follow me 第三季第1期】任務(wù)二——Arduino控制板載LED燈,并實(shí)現(xiàn)呼吸燈效果
-
【Follow me 第三季第1期】任務(wù)一 源碼-——Arduino環(huán)境Hello EEWorld
-
AD元件庫
-
工業(yè)總線常見類型
-
深度學(xué)習(xí)Deep Learning中文版
-
電子工程師必備-元器件應(yīng)用寶典
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦
- Microchip 升級數(shù)字信號控制器(DSC)產(chǎn)品線 推出PWM 分辨率和 ADC 速度業(yè)界領(lǐng)先的新器件
- 意法半導(dǎo)體STM32MP23x:突破成本限制的工業(yè)AI應(yīng)用核心
- 意法半導(dǎo)體推出用于匹配遠(yuǎn)距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹莓派進(jìn)行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測試
- 解決方案 | 芯佰微助力電動車安全:通用型OPA、LDO、RS485芯片,提升報警器性能
- ASML 技術(shù)高級副總裁:已攜手蔡司啟動 5nm 分辨率 Hyper NA 光刻機(jī)開發(fā)
- 搭載Integrity Guard安全架構(gòu)的芯片交付量突破100億, 充分彰顯英飛凌在安全領(lǐng)域的領(lǐng)導(dǎo)地位
- QNX與Vector簽署諒解備忘錄,共同打造基礎(chǔ)性車輛軟件平臺
- 瑞薩電子放緩增長預(yù)期,200 億美元營收目標(biāo)延后五年至 2035 年
- 消息稱小米玄戒 O2 芯片有望“上車”,自研四合一域控制器已在鋪路
- 優(yōu)化電動汽車車載充電器瞬態(tài)電壓保護(hù)和浪涌保護(hù)
- 新能源汽車電子水泵溫控系統(tǒng)及靜電浪涌
- 車載顯示接口測試趨勢分析
- Arm+AWS實(shí)現(xiàn)AI定義汽車 基于Arm KleidiAI優(yōu)化并由AWS提供支持
- 運(yùn)動控制市場下滑,機(jī)器人前景如何?
- 如果中國不買芯片了,外國供應(yīng)商該何去何從?
- 恒元界人形AI教育機(jī)器人,不僅萌萌噠,而且很燒腦
- TI已集成!CAN FD讓汽車神經(jīng)網(wǎng)絡(luò)強(qiáng)化升級
- 【技術(shù)文章】準(zhǔn)確測量開關(guān)損耗
- 一加9系列低價型號將命名成OnePlus 9R
- 蘋果:過去四年推出iPhone中86%已經(jīng)安裝iOS14系統(tǒng)
- Counterpoint :iPhone 12/Pro延遲發(fā)布或?qū)μO果有利
- 華為Mate 40E將在3、4月發(fā)布:搭載麒麟990E
- 取消Lightning怎么刷機(jī)?蘋果正為iPhone 13研發(fā)網(wǎng)絡(luò)恢復(fù)模式