趙春陽(yáng)
摘 要:微控制器在生活中的應(yīng)用變得越來(lái)越普遍,也同時(shí)讓生活變得更方便、更美好。許多智能硬件都應(yīng)用到了微控制器本文以STM32為例分析了STM32微控制器的分類(lèi)、背景、特點(diǎn)、開(kāi)發(fā)板結(jié)構(gòu)和其特點(diǎn)以及應(yīng)用場(chǎng)景和未來(lái)展望。
關(guān)鍵詞:STM32;微控制器;應(yīng)用場(chǎng)景;未來(lái)分析
一、STM32的概述
意法半導(dǎo)體公司(簡(jiǎn)稱(chēng)ST)推出的STM32微處理器是意法半導(dǎo)體公司推出的第一個(gè)基于ARM Cortex-M3內(nèi)核的微控制器。STM32的出現(xiàn)將當(dāng)前微控制器的性?xún)r(jià)比水平提升到了新的高度,步入了一個(gè)新的時(shí)代。
STM32微控制器是近年來(lái)迅速興起的基于ARM Cortex一M3內(nèi)核的高端32位微控制器代表。同時(shí)它在低功耗場(chǎng)合和硬實(shí)時(shí)控制場(chǎng)合中也表現(xiàn)出色。
STM32作為一個(gè)經(jīng)典的微控制器系列,在市面流通的型號(hào)有:
基本型:STM32F101R6、STM32F101R8、STM32F101V8、STM32F101RB、STM32F101VB
增強(qiáng)型:STM32F103R8、STM32F103V8、STM32F103RB、STM32F103VB、 STM32F103VE、STM32F103ZE
二、STM32的特點(diǎn)
談到STM32的特點(diǎn),我們先來(lái)看看其內(nèi)核Cortex-M3 的特點(diǎn)。Cortex-M3采用目前主流 ARM V7-M 架構(gòu),相比曾風(fēng)靡一時(shí)的 ARMV4T 架構(gòu)擁有更加強(qiáng)勁的性能,更高的代碼密度,更高的性?xún)r(jià)比。 Cortex-M3 處理器結(jié)合多種突破性技術(shù),在低功耗、低成本、高性能三方面具有突破性的創(chuàng)新。
從而STM32具有如下特點(diǎn)
(一)精密性
12位精度的ADC具備多種轉(zhuǎn)換模式,并帶有一個(gè)內(nèi)部溫度傳感器,帶有雙ADC的STM32器件,還可以使兩個(gè)ADC同時(shí)工作,從而衍生出更為高級(jí)的9種轉(zhuǎn)換模式。如STM32的每一個(gè)定時(shí)器都具備4個(gè)捕獲比較單元,而且每個(gè)定時(shí)器都可以和另外的定時(shí)器聯(lián)合工作以生成更為精密的時(shí)序;如STM32有專(zhuān)門(mén)為電機(jī)控制而設(shè)的高級(jí)定時(shí)器,帶有6個(gè)死區(qū)時(shí)間可編程的PWM輸出通道,同時(shí)其帶有的緊急制動(dòng)通道可以在異常情況出現(xiàn)時(shí),強(qiáng)迫PWM信號(hào)輸出保持在一個(gè)預(yù)定好的安全狀態(tài);如SPI接口設(shè)備含有一個(gè)硬件CRC單元,支持8位字節(jié)和16位平多數(shù)據(jù)的CRC計(jì)算,在對(duì)SD或MMC等存儲(chǔ)介質(zhì)進(jìn)行數(shù)據(jù)存取時(shí)相當(dāng)有用。
(二)可靠性
包括一個(gè)低電壓檢測(cè)器、一個(gè)時(shí)鐘安全管理系統(tǒng)和兩個(gè)看門(mén)狗定時(shí)器。兩個(gè)看門(mén)狗定時(shí)器中的一個(gè)稱(chēng)為窗口看門(mén)狗。窗門(mén)看門(mén)狗必須在事先定義好的時(shí)間上下限到達(dá)之前刷新,如果過(guò)早或過(guò)晚地刷新它都將觸發(fā)窗門(mén)看門(mén)狗復(fù)位。第2個(gè)看門(mén)狗稱(chēng)為獨(dú)立看門(mén)狗。獨(dú)立桿門(mén)狗使用外部振蕩器驅(qū)動(dòng),二者相互獨(dú)立,保證了可靠性。
(三)安全性
STM32可以鎖住其內(nèi)部Flash而使得破解人員無(wú)法通過(guò)調(diào)試端口讀取其內(nèi)容。當(dāng)Flash的讀保護(hù)功能開(kāi)啟之后,其寫(xiě)保護(hù)功能也就隨之開(kāi)啟了。寫(xiě)保護(hù)功能常用于防止一些來(lái)歷不明的代碼寫(xiě)人中斷向量表。但寫(xiě)保護(hù)不僅可以保護(hù)中斷向量表,還可以更進(jìn)一步地將其保護(hù)范圍延伸到整個(gè)Flash中未被使用的區(qū)域。
三、STM32的應(yīng)用場(chǎng)景
通信值班智能輔助系統(tǒng)的通信值班智能輔助系統(tǒng)、智能游客尋呼系統(tǒng)、智能家居系統(tǒng)設(shè)計(jì)、門(mén)戶(hù)智能鎖網(wǎng)絡(luò)等等智能領(lǐng)域。目前在工業(yè)控制、消費(fèi)電子、手持設(shè)備、汽車(chē)電子、安防監(jiān)控、通訊、物聯(lián)網(wǎng)、車(chē)聯(lián)網(wǎng)等行業(yè)應(yīng)用很普遍,在功能豐富的同時(shí)擁有超高的性?xún)r(jià)比。正因?yàn)槠涓咝詢(xún)r(jià)比、適合手工DIY的優(yōu)點(diǎn),在高校學(xué)生群體中也有非常高的人氣。
四、STM32開(kāi)發(fā)板介紹
這里選擇MiniSTM32 V3 開(kāi)發(fā)板作為例子,因?yàn)槠浣Y(jié)構(gòu)精小:
CPU: STM32F103RCT6, LQFP64, FLASH:256K, SRAM: 48K;
1 個(gè)標(biāo)準(zhǔn)的 JTAG/SWD 調(diào)試下載口 1 個(gè)紅外接收頭,配備一款小巧的紅外遙控器 1 個(gè) IIC 接口的 EEPROM 芯片, 24C02,容量 256 字節(jié) 1 個(gè) SPI FLASH 芯片, W25Q64,容量為 8M 字節(jié)(即 64M bit) 1個(gè) DS18B20/DS1820 溫度傳感器預(yù)留接口 1 個(gè)標(biāo)準(zhǔn)的 2.4/2.8/3.5/4.3/7 寸 LCD 接口,支持觸摸屏1 個(gè) OLED 模塊接口(與 LCD 接口部分共用) 1 個(gè) USB 串口接口,可用于程序下載和代碼調(diào)試 1 個(gè) USB SLAVE 接口等設(shè)備,用于 USB 通信
ALIENTEK MiniSTM32 V3 開(kāi)發(fā)板的特點(diǎn)
a)小巧
整個(gè)板子尺寸為 8cm*10cm*2cm(包括液晶,但不計(jì)算銅柱的高度)。
b)靈活
板上除晶振外的所有的 IO 口全部引出,特別還有 GPIOA 和 GPIOB 的 IO 口是按順序引出的,可以極大的方便大家擴(kuò)展及使用,另外板載獨(dú)特的一鍵下載功能,避免了頻繁設(shè)置 B0、 B1 帶來(lái)的麻煩,直接在電腦上一鍵下載。
c) 資源豐富
板載十多種外設(shè)及接口,可以充分挖掘 STM32 的潛質(zhì)。
五、對(duì)STM32的展望
筆者認(rèn)為STM32微控制器依托意法半導(dǎo)體公司本身雄厚的研發(fā)和生產(chǎn)實(shí)力,在正確的市場(chǎng)推廣策略引導(dǎo),迅速占據(jù)了國(guó)內(nèi)高端微控制器的大部分應(yīng)用領(lǐng)域。ARM7會(huì)被STM32取代,STM32偏向不帶系統(tǒng)的工業(yè)控制,外圍設(shè)備甚至比ARM7、ARM9更豐富。
參考文獻(xiàn):
[1]蒙博宇.STM32自學(xué)筆記[M].北京航空航天大學(xué)出版社,2012(02).
[2]正點(diǎn)原子團(tuán)隊(duì) STM32 不完全手冊(cè)(庫(kù)函數(shù)版)[EB/OL].http://www.openedv.com/ Forum.php,2016.
[3]謝健華,任毅,李文峰,張欣龍,袁臣虎. 數(shù)控電源的模塊化設(shè)計(jì)[J]. 電源世界. 2010(11).
[4]張東,黃莉,潘德情.高精度智能遙控式數(shù)控電源設(shè)計(jì)[J]. 重慶文理學(xué)院學(xué)報(bào)(自然科學(xué)版), 2010(03).
[5] 吳家平,沈建華.基于STM32微控制器的過(guò)采樣技術(shù)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2010(02).