https://m.toutiao.com/is/Nof9jc4/?=STM32 搭載STM32F103C8 核心的 STM32 開發(fā)板由于其 ARM Cortex M3 架構(gòu)而越來越受歡迎,它具有較高的運行速度和更多的外設(shè)選項。此外,由于該板可以使用 Arduino IDE 輕松編程,因此它已成為許多愛好者和工程師快速原型設(shè)計的首選。 在前面的文章中,我們介紹了使用“Arduino IDE + FTDI ”對STM32F103C8 開發(fā)板進行了編程使板載 LED 閃爍。但它有一個小小的缺點,需要對其燒錄時,我們需要使用FTDI模塊,并且在燒錄和測試代碼時還必須在跳線0和 1 之間來回切換,有點麻煩。開發(fā)板上的 mini-USB 端口也完全未使用。而我們把USB插上電腦時,是識別不到該板的,因為它沒有 Arduino bootloader。接下來我們就把Arduino bootloader燒寫進STM32F103C8 ,實現(xiàn)USB燒錄程序。目前尚不知道這種方式會不會出現(xiàn)不可預(yù)知的bug,不建議用于關(guān)鍵應(yīng)用程序。 所需材料§ STM32 開發(fā)板 ( STM32F103C8 ) § FTDI 模塊 § 面包板 § 連接線 § 一臺聯(lián)網(wǎng)的電腦 連接電路圖要直接通過 USB 端口對 STM32 進行燒錄, 我們需要先將引導(dǎo)加載程序刷入 MCU。為此,我們需要使用FTDI 板(也可以使用CH340這類模塊)。該板連接到 STM32 的 Rx 和 Tx 引腳,如下所示。 FTDI板的Vcc管腳連接到板子供電的STM32 5V管腳。地連接到STM32的地。FTDI板的Rx和Tx引腳分別連接到STM32的A9和A10引腳。其中 A9 是 STM32 MCU 的 Tx 引腳,A10 是 Rx 引腳。 在上傳引導(dǎo)加載程序時,確保板上的引導(dǎo) 0 跳線針設(shè)置為 1。上傳(燒錄)完成,該引腳更改回初始位置。 將Bootloader 上傳到 STM32 開發(fā)板完成上述連接后,將 FTDI 板連接到您的計算機,然后按照步驟將BootLoader 刷入 STM32。 第 1 步:準備好BootLoader 文件。 第2步: 接下來下載并安裝STM Flash loader軟件,將下BootLoader 文件刷入STM32。 進入ST網(wǎng)站,滾動到底部點擊Get latest https://www./en/development-tools/flasher-stm32.html#get-software 第 3 步:下載前需要填寫相關(guān)信息,主要是輸入郵箱要正確,其他信息不重要,下載地址會發(fā)送到郵箱,從郵箱點擊下載。 第 4 步:下載安裝軟件后,確保STM32 板Boot 0跳線置于1位置,并已通過 FTDI 板連接到計算機,然后啟動軟件。軟件會自動檢測 COM 端口,但還是建議查看硬件管理以確保您選擇了正確的 COM 口號。 第 5 步: 點擊Next按鈕兩次,軟件會再次自動檢測板子詳細信息并顯示如下圖。我們使用的板子是 STM32F1,帶有 128K 閃存。 第 6 步: 在Next中,選擇“Download to device”,瀏覽到我們在第 1 步中準備 BootLoader 文件的位置并選擇它。點擊Next。 第7步: 等待燒寫完成。 第 8 步: 燒寫成功后,我們將看到以下屏幕。單擊關(guān)閉并退出應(yīng)用程序。接著我們準備 Arduino IDE 并安裝驅(qū)動程序,然后才能使用USB燒錄 STM32 板。 準備 Arduino IDE 并安裝驅(qū)動程序按照以下步驟下載并準備與 STM 32 開發(fā)板一起使用的 Arduino IDE。 第 1 步: - 安裝步驟(略) 第 2 步: - 安裝 Arduino IDE 后,下載安裝 STM32 開發(fā)板所需的包參考之前的文章 通過下面的網(wǎng)址安裝STM32的開發(fā)庫 http://dan./stm32duino/package_STM32duino_index.json 第 3 步: 安裝驅(qū)動文件(找不到網(wǎng)址了) install_drivers.bat 和 第 4 步: 單擊兩個 bat 文件并安裝驅(qū)動程序。您將看到如下所示的 DOS 屏幕。 現(xiàn)在 Arduino IDE 已準備好對 STM32開發(fā)板進行編程,并且驅(qū)動程序也已安裝。 通過 USB 端口直接燒錄STM32從開發(fā)板上移除 FTDI 板及其他連接。只需使用STM32板上的micro-USB端口將其連接到計算機,如下圖所示。確保 跳線 0 引腳定位回 0 。此后,我們不再需要切換跳線來燒錄和運行程序。 把開發(fā)板用USB線連上計算機,現(xiàn)在計算機應(yīng)該能夠發(fā)現(xiàn)開發(fā)板了。如果您看到正在安裝任何其他驅(qū)動程序,請稍等片刻。然后進入 “設(shè)備管理器” 并檢查是否發(fā)現(xiàn)了您的 STM32 板,如下所示。我的連接到 COM6,名稱為 Maple。 打開Arduino IDE轉(zhuǎn)到 “工具” 并向下滾動以找到通用 STM32F103C 系列,如下所示。然后確保變體為 64k Flash 類型,CPU 速度為 72MHz ,并將“Upload method”更改為 STM32duino Bootloader。還要根據(jù)“設(shè)備管理器”選擇正確的 COM 端口。 完成所有更改后,檢查 Arduino IDE 的右下角,您應(yīng)該看到配置信息。我的 STM32 板連接到 COM6,但你的可能不同。 現(xiàn)在 Arduino IDE 已準備好對 STM32F103C8 開發(fā)板進行編程。讓我們將示例閃爍程序從 Arduino IDE 上傳到 STM32F103C8 板,測試是否正常。示例程序可以通過如下步驟找到 在打開的示例程序中, 我們必須做一點小改動。默認情況下,該示例是為 PB1 編寫程序,但在我們的板載 LED 連接到 PC13 ,因此將所有 PB1 替換為 PC13 。修改后的 完整示例程序 如下。 按下 Arduino IDE 上的“上傳”按鈕,您的程序應(yīng)該被編譯和上傳。如果一切順利,那么你應(yīng)該在 Arduino IDE 控制臺上看到以下內(nèi)容。 接下來,您應(yīng)該會看到藍色 LED 以 1 秒的間隔閃爍,您還可以修改延時時間以增加或減少延遲,檢驗是否上傳(燒錄)成功?,F(xiàn)在您可以像使用任何其他 Arduino 板一樣開始使用 STM32F103C8開發(fā)板了,即不再需要更改跳線的位置或使用外部硬件來上傳(燒錄)和測試程序。 |
|
來自: 山峰云繞 > 《編程仿真模擬移植下載燒寫》