新聞中心
隨著linux系統(tǒng)越來越廣泛的被用于物聯(lián)網(wǎng)、物聯(lián)網(wǎng)技術(shù)使用場景。使用STM32在Linux系統(tǒng)下開發(fā)在許多芯片開發(fā)中是必不可少的步驟之一。

黃驊網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,黃驊網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為黃驊近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個(gè)售后服務(wù)好的黃驊做網(wǎng)站的公司定做!
STM32是一款A(yù)RM體系結(jié)構(gòu)的32位微控制器,具有低功耗、高性能處理器技術(shù)、集成各種外設(shè)和大量自定義模塊等優(yōu)點(diǎn),為應(yīng)用提供了極大的便利。據(jù)調(diào)研,此款芯片同樣也可以在Linux下進(jìn)行開發(fā),發(fā)揮它的優(yōu)點(diǎn),特別是物聯(lián)網(wǎng)還原造成爆發(fā)。
在Linux系統(tǒng)下進(jìn)行STM32開發(fā)有兩個(gè)主要步驟,第一步是編寫代碼,第二步是調(diào)試。
編寫STM32代碼可以使用開源編譯器GCC,GCC除了可以編譯ARM架構(gòu)的匯編、C、C++等代碼外,還可以用GDB(GNU Debugger)進(jìn)行調(diào)試。如果想使用商業(yè)編譯器如Keil MDK,應(yīng)該使用轉(zhuǎn)換工具將Keil MDK生成的文件轉(zhuǎn)換成GCC的可用的ELF文件,然后再使用GCC進(jìn)行編譯即可。
STM32的調(diào)試有兩個(gè)主要的方式,一種是使用ST-Link來上傳程序,另一種是使用電腦的串口線來上傳程序。
如果使用ST-Link來上傳程序,首先要安裝stm32flash,它是用于在Linux上燒錄STM32的套件,可以從以下鏈接安裝下載:https://sourceforge.net/projects/stm32flash/。它需要先安裝以下依賴環(huán)境:gcc, make, libusb-1.0-dev。
安裝完成后,使用如下命令使用ST-Link燒錄:
$ stm32flash -w -v /dev/ttyUSB0
查看燒錄進(jìn)度和燒錄狀態(tài)只需要加入?yún)?shù)-g來燒錄程序:
$ stm32flash -w -v -g 0x08000000 /dev/ttyUSB0
另外一種上傳程序的方式是使用電腦的串口線,即把串口線一端接STM32,另一端接電腦的串口,然后使用串口燒錄工具OpenOCD進(jìn)行上傳程序。使用OpenOCD可以很方便地對我們的程序進(jìn)行調(diào)試,同時(shí)還可以做半自動(dòng)測試,比如程序斷點(diǎn)、內(nèi)存監(jiān)控等操作,從而簡化調(diào)試過程,提高開發(fā)效率。OpenOCD使用如下代碼來執(zhí)行串口上傳程序:
$ openocd -f board/stm32f1x_se.cfg -f interface/stlink-v2.cfg
其中board/stm32f1x_se.cfg和interface/stlink-v2.cfg是OpenOCD的配置文件,分別對應(yīng)不同的板子和interface類型。
總結(jié)而言,在Linux系統(tǒng)下進(jìn)行STM32的開發(fā),最主要的就是熟悉開發(fā)環(huán)境,STM32的開發(fā)步驟很容易掌握,使用GCC編譯和ST-Link上傳程序可以輕松實(shí)現(xiàn),同時(shí)可以使用OpenOCD進(jìn)行USB串口上傳程序,最方便快捷。
香港服務(wù)器選創(chuàng)新互聯(lián),香港虛擬主機(jī)被稱為香港虛擬空間/香港網(wǎng)站空間,或者簡稱香港主機(jī)/香港空間。香港虛擬主機(jī)特點(diǎn)是免備案空間開通就用, 創(chuàng)新互聯(lián)香港主機(jī)精選cn2+bgp線路訪問快、穩(wěn)定!
當(dāng)前文章:探索Linux下STM32的開發(fā)之路(linuxstm32)
網(wǎng)頁網(wǎng)址:http://fisionsoft.com.cn/article/dpddehd.html


咨詢
建站咨詢
