當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > STM32單片機(jī)如何編程
STM32單片機(jī)如何編程
1.前言
本博文針對(duì)于沒(méi)有stm32編程經(jīng)驗(yàn)的讀者,如博文中有任何問(wèn)題請(qǐng)與博主聯(lián)系,如需轉(zhuǎn)載請(qǐng)指明出處。本博文采用的芯片為STM32F103VET6,編程軟件為MDK,下載器為J-link
2.芯片
STM32F103VET6芯片外圍接口如下:(如下圖)
定時(shí)器:4個(gè)通用定時(shí)器 ,兩個(gè)高級(jí)定時(shí)器,兩個(gè)基本定時(shí)器.
通訊方式: 兩個(gè)SPI,兩個(gè)I2C,五個(gè)USART, 一個(gè)USB,一個(gè)CAN通信,一個(gè)SDIO.
GPIO: 112 個(gè) .
ADC : 12位 ADC 三路 共有 16個(gè)通道.
DAC : 12位 DAC 兩路 共有2個(gè)通道.
CPU : 72MHz .
操作電壓:2.0-3.6V.
最大耗散功率: 434mW.
3.編程軟件
3.1軟件的安裝(版本為4.72)
1.mdk472是安裝工具,KEIL_lic是破解軟件(建議購(gòu)買正版)。
2.雙擊安裝,選擇下一步就可以了,出現(xiàn)如下界面時(shí)輸入任意的字符串。
3.安裝成功
4.破解,以管理員身份運(yùn)行這keil uVision4和KEIL_Lic。在keil軟件中選擇file->license manager出現(xiàn)如下界面。
將上圖的CID號(hào)碼賦值到KEIL_Lic中,其余的選項(xiàng)按照如圖填寫,填寫完點(diǎn)擊generate就會(huì)生成激活碼47GJJ-UGXHR-7R9X3-A70L1-6MJ37-SF9RD(每個(gè)人的不一樣),然后將生成的激活碼填寫到keil軟件的New license ID code中,點(diǎn)擊Add lic即可。
出現(xiàn)如下界面表示激活成功
注:讀者還可以安裝STM32CubeMX軟件,這是一個(gè)圖像話的編程工具,但是對(duì)于初學(xué)者還是建議按照本文的方式來(lái)安裝,這樣更有利于對(duì)STM32這塊芯片的理解。
3.2創(chuàng)建工程
1.模板的創(chuàng)建
安裝完驅(qū)動(dòng)之后我們就可以來(lái)編寫應(yīng)用程序,但是這樣的話我們就必須一個(gè)文件一個(gè)文件的編寫實(shí)現(xiàn),但是對(duì)于STM32這些外圍的設(shè)備寄存器的地址都是一樣的,所以這里我們就采用ST公司做好的庫(kù)來(lái)實(shí)現(xiàn),STM32 lib3.5的固件庫(kù)在如下位置點(diǎn)擊get software即可獲。
登錄之后就可以吧這個(gè)固件庫(kù)下載下來(lái)了,那么如何根據(jù)固件庫(kù)區(qū)創(chuàng)建一個(gè)工程那?這個(gè)過(guò)程在百度上已經(jīng)很多了,這里就不在闡述了,創(chuàng)建好工程之后就會(huì)出現(xiàn)如下界面
2.軟件的編譯和下載
編譯:點(diǎn)擊從左邊數(shù)的第三個(gè)按鈕
下載:點(diǎn)擊最后一個(gè)按鈕即可
4.下載
讀者在下載代碼之前需要如下j-link的燒寫器,拿到燒寫器之后插入pc安裝對(duì)應(yīng)的驅(qū)動(dòng),然后直接點(diǎn)擊圖標(biāo)即可下載編譯好的代碼。
注意:不同的單片機(jī)的編程方法不同,但是步驟都是這些步驟,希望讀者能夠自行套用這個(gè)編程的模式,適配自己的單片機(jī)。