李穎華 ,張偉崗 ,徐云龍 ,伍明高 ,樊 榮
(1.西北工業(yè)大學(xué)明德學(xué)院電子信息工程系,陜西西安710124;2.九江職業(yè)技術(shù)學(xué)院電氣工程學(xué)院,江西九江 332007)
微控制器實(shí)驗(yàn)平臺是通過軟、硬件聯(lián)調(diào)來達(dá)到智能控制電路的目的,這意味著在微控制器運(yùn)行能力許可的框架下,內(nèi)核電路與外圍電路功能的實(shí)現(xiàn)是依靠軟件驅(qū)動的,以此來完成聲光控制、傳感器、電機(jī)、遙控、顯示及鍵盤等功能[1-3]。微控制器系統(tǒng)的重點(diǎn)是突出可移植程序來控制各項(xiàng)功能,而不是單靠硬件電路,系統(tǒng)各項(xiàng)功能都是基于一個微控制器內(nèi)核,同時要求外圍電路配備恰當(dāng),運(yùn)行可靠,這樣才可以使整個系統(tǒng)最終運(yùn)行良好[4-5]。多年來的雙列直插式AT89C51實(shí)驗(yàn)平臺已經(jīng)跟實(shí)際應(yīng)用脫節(jié),每個模塊的原始電路器件測試?yán)щy、實(shí)驗(yàn)效率低下、調(diào)試時間過長,已不能滿足實(shí)際應(yīng)用。
基于STC15F2K60S2的多功能綜合平臺改進(jìn)了性價(jià)比較低的晶振電路及復(fù)位電路,將二者集成在內(nèi)核芯片內(nèi)部,節(jié)省了電路空間,提高了系統(tǒng)可靠性;集成化的方形貼片式封裝更是讓平臺貼近市場應(yīng)用,同時在入門和學(xué)習(xí)中銜接了老式平臺的復(fù)位電路和晶振電路的原理,有助于理解芯片內(nèi)部結(jié)構(gòu),也繼承了傳統(tǒng)的學(xué)習(xí)方式,使得用戶知識和技能更新變得并不困難[6-10]。此外,該平臺設(shè)計(jì)了專用的程序下載和電路控制界面,使得應(yīng)用更加便捷、高效,同時克服了傳統(tǒng)實(shí)驗(yàn)平臺體積過大、操作不便的問題。
智能平臺的硬件系統(tǒng)采用STC15F2K60S2內(nèi)核電路系統(tǒng),軟件系統(tǒng)采用Keil C程序語言開發(fā)和調(diào)試。系統(tǒng)輸入采用4×4矩陣鍵盤和2個獨(dú)立按鍵配合使用,信息采集通過內(nèi)核芯片自帶的數(shù)模轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換,需顯示的數(shù)據(jù)或輸出的信號通過I/O口與外圍電路連接。系統(tǒng)的總體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)的總體結(jié)構(gòu)
該智能電路平臺由輸入數(shù)據(jù)采集模塊、微控制器控制模塊、輸出顯示模塊、聲光報(bào)警模塊、通信模塊、時鐘模塊及傳感器模塊組成。位于平臺中央的核心控制模塊由STC15F2K60S2內(nèi)核芯片組成,實(shí)現(xiàn)所有的處理任務(wù)并將信號發(fā)送到各個外圍執(zhí)行機(jī)構(gòu);溫度檢測功能由DS1820溫度傳感器實(shí)現(xiàn),光線檢測功能由光敏傳感器HR202實(shí)現(xiàn),此外還可以實(shí)現(xiàn)濕度檢測功能;顯示模塊采用液晶顯示器、數(shù)碼顯示器、點(diǎn)陣顯示器和4路LED燈實(shí)現(xiàn);聲光報(bào)警模塊由發(fā)光二極管和交流蜂鳴器組成;實(shí)時時鐘模塊采用DS132時鐘芯片,設(shè)置時鐘采用獨(dú)立按鍵方式,顯示通過內(nèi)核模塊將信號送到顯示模塊;電機(jī)模塊可分別由步進(jìn)電機(jī)和5 V直流電機(jī)實(shí)現(xiàn);無線收發(fā)模塊采用三極管驅(qū)動紅外發(fā)射,通信模塊采用串口進(jìn)行全雙工串行數(shù)據(jù)通信。
STC15F2K60S2芯片具有高速、高可靠、低功耗、強(qiáng)抗干擾的特點(diǎn),并且加密性強(qiáng)、指令代碼兼容8051。芯片內(nèi)部集成高精度R/C時鐘,5MHz-35MHz寬范圍可設(shè)置,內(nèi)部集成高可靠復(fù)位電路和8級可選復(fù)位門檻電壓,徹底省掉外部電路性價(jià)比不高的晶振和復(fù)位電路。芯片集成了30萬次/秒的8路高速10位A/D轉(zhuǎn)換,并且內(nèi)置2K字節(jié)的大容量SRAM,還集成了兩組高速異步串行全雙工的通信端口[11-13]。其內(nèi)部結(jié)構(gòu)如圖2所示。
圖2 STC15F2K60S2內(nèi)部結(jié)構(gòu)
蜂鳴器是一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,在電子產(chǎn)品中用作發(fā)聲器件,有交流蜂鳴器和直流蜂鳴器之分[14]。本平臺選用交流蜂鳴器,如圖3(a)所示,采用PWM脈沖調(diào)制波來控制蜂鳴器的頻率,即利用I/O口輸出方波脈沖,通過高、低電平的切換驅(qū)動蜂鳴器發(fā)音。但由于蜂鳴器的驅(qū)動電流較大,不能用單片機(jī)的小電流I/O端口直接驅(qū)動,故采用三極管驅(qū)動,如圖3(b)所示。
圖3 蜂鳴器
按鍵電路如圖4所示。兩個獨(dú)立按鍵分別連接在單片機(jī)的P3.2和P3.3端口,采用軟件延時去抖動,先設(shè)置I/O口為高電平(一般默認(rèn)上電就為高電平),再讀取I/O口電平,確認(rèn)是否有按鍵按下,若I/O口為低電平,延時;再讀取該I/O口電平,若仍為低電平,說明對應(yīng)按鍵按下,則可執(zhí)行相應(yīng)按鍵指令。
圖4 按鍵電路
數(shù)碼管電路是平臺顯示模塊實(shí)現(xiàn)的關(guān)鍵。本平臺使用共陰極數(shù)碼管,并在每段數(shù)碼管前端加一個限流電阻。數(shù)碼管顯示電路如圖5所示。
圖5 數(shù)碼管顯示電路
共陰極數(shù)碼管由于芯片輸出電流偏小而顯示昏暗,平臺使用者可自行開發(fā)共陽極數(shù)碼管電路,如將平臺電源接數(shù)碼管公共端,加大驅(qū)動電源的功率。
電機(jī)運(yùn)行需要大電流,而平臺以及各模塊的電源功率較小,故需配置一個外部供電電源來給ULN2003達(dá)林頓管驅(qū)動的步進(jìn)電機(jī)和直流電機(jī)供電。本平臺采用板載繼電器和基準(zhǔn)電壓器件TL431為電機(jī)供電,保證內(nèi)核芯片工作更穩(wěn)定,電機(jī)電路如圖6所示。
在基本模塊的基礎(chǔ)上,本平臺擴(kuò)展了傳感器等檢測模塊,更加接近實(shí)際工程案例,平臺內(nèi)核芯片控制傳感器監(jiān)測信號判斷和執(zhí)行,以及相應(yīng)的實(shí)時顯示和設(shè)置。擴(kuò)展模塊最典型的實(shí)例是溫度測量。本平臺采用的數(shù)字溫度傳感器DS18B20是一種單總線的溫度-電流傳感器[15-16],集溫度測量和A/D轉(zhuǎn)換于一體,傳輸距離遠(yuǎn),可多點(diǎn)測量,其接口電路如圖7所示。
根據(jù)設(shè)計(jì)方案制作的硬件電路如圖8所示,其中按鍵輸入、輸出顯示和輸出執(zhí)行不僅是平臺正常運(yùn)行的基礎(chǔ),也是后續(xù)實(shí)現(xiàn)各擴(kuò)展模塊的基礎(chǔ)。另外,平臺上電時首先提供復(fù)位信號,復(fù)位使CPU及系統(tǒng)各部件處于初始狀態(tài),電源穩(wěn)定后還需經(jīng)過一定的延時才能撤銷復(fù)位信號,從而防止電源開關(guān)或電源插頭分合過程中引起的抖動。最后可利用Keil C軟件測試和開發(fā)硬件平臺。
圖6 電機(jī)電路
圖7 溫度傳感器接口電路
圖8 平臺的硬件電路
本平臺選用4×4矩陣鍵盤,將16個按鍵排成4行4列,第一行將每個按鍵的一端連接在一起構(gòu)成行線,第一列將每個按鍵的另一端連接在一起構(gòu)成列線,4行4列共8根線分別連接到單片機(jī)的8個I/O口上。掃描矩陣鍵盤時,先把某一條行線置為低電平,而列線全部置為輸入方向,然后檢測列線,如果檢測到某一條列線是低電平,那么就表示位于這條列線與輸出低電平的行線的交點(diǎn)處的按鍵被按下,以此類推。
字符型液晶顯示器件LCD1602、12864與實(shí)時時鐘器件DS1302配合顯示時間;溫度感知器件DS18B20與液晶、4位7段數(shù)碼管配合顯示溫度,并同時顯示當(dāng)前時間;配備掉電保護(hù)時間的時鐘器件在斷電后保持時間正常。啟用定時功能并配合時間顯示來控制LED發(fā)光二極管的亮、滅時間,可以靈活選擇非自動和自動設(shè)定的方式。此外,平臺配置的聲光報(bào)警功能由四個LED發(fā)光二極管和蜂鳴器實(shí)現(xiàn),無源蜂鳴器正常情況下靜音,否則發(fā)出間斷性警報(bào)聲。
除了溫度檢測,平臺還實(shí)現(xiàn)了利用濕敏電阻檢測空氣濕度,利用熱敏電阻檢測環(huán)境冷熱,利用光敏電阻HR202檢測光線的明暗,及配備了EEPROM存儲器24C02。平臺上的紅外發(fā)射和接收通過IR紅外接收頭實(shí)現(xiàn)。此外,串行通信接口配備了串行數(shù)據(jù)和并行數(shù)據(jù)的相互轉(zhuǎn)換電路,若用戶需要開發(fā)短信功能,可選擇西門子TC35器件來判斷是否進(jìn)行電話呼叫或短信發(fā)送。
本綜合實(shí)驗(yàn)平臺采用模塊化設(shè)計(jì),各功能模塊的VCC采用短線帽連接,省去了接線的繁瑣。主處理器芯片選用集成度更好、速度更快的STC15F2K60S2微控制器,與外部電路構(gòu)成一個完整的智能實(shí)驗(yàn)系統(tǒng),是傳統(tǒng)STC89C51芯片速度的12倍,并可通過USB接口實(shí)現(xiàn)一鍵下載燒錄程序。系統(tǒng)數(shù)據(jù)傳輸方便,電路穩(wěn)定,可實(shí)現(xiàn)后期的修改、維護(hù)及二次開發(fā)。
[1]丁超,楊立君,吳蒙.一種基于異常檢測的傳感器網(wǎng)絡(luò)容侵?jǐn)?shù)據(jù)聚合方案[J].南京郵電大學(xué)學(xué)報(bào),2016,36(5):105-113.
[2]郭艷青,劉征宇,楊善春,等.ZigBee與航跡推算混合定位的電動輪椅導(dǎo)航控制系統(tǒng)[J].電子測量與儀器學(xué)報(bào),2016,30(7):1076-1082.
[3]YU L,LI J,CHENG S,et al.Secure continuous aggregation in wireless sensor networks[J].IEEE Transactions on Parallel and Distributed Systems,2014,25(3):762-774.
[4]李遠(yuǎn)茂,劉桂雄,曾成剛.基于GPS的室外放射源信息監(jiān)控系統(tǒng)設(shè)計(jì)[J].電子測量與儀器學(xué)報(bào),2016,30(8):1244-1254.
[5]樊春霞,楊過,盛菲斐,等.多頻采樣復(fù)雜動態(tài)網(wǎng)絡(luò)的自適應(yīng)狀態(tài)觀測器設(shè)計(jì)[J].南京郵電大學(xué)學(xué)報(bào),2016,36(3):112-120.
[6]Ejiofor Virginia Ebere,Oladipo Onaolapo Francisca.Microcontroller based Automatic Water level Control System[J]. International Journal of Innovative Research in Computer and Communication Engineering,2013(1):1390-1396.
[7]鄧寧,宋森森,羿昌宇,等.軟件無線電系統(tǒng)綜合診斷平臺設(shè)計(jì)與實(shí)現(xiàn)[J].電子測量與儀器學(xué)報(bào),2016,30(6):968-974.
[8]孫玉環(huán).基于STC12C5410AD單片機(jī)的兩輪自平衡小車的系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013(20):162-164.
[9]吳宏岐,郭夢宇.基于STC單片機(jī)的仿生六足機(jī)器人設(shè)計(jì)[J].電子器件,2013,36(1):128-131.
[10]曹應(yīng)明.基于STC單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)[J].計(jì)量與測試技術(shù),2014(11):28-29.
[11]向楠,鄒華東.基于STC89C52RC單片機(jī)智能搬運(yùn)電動小車設(shè)計(jì)[J].湖南工程學(xué)院學(xué)報(bào)(自然科學(xué)版),2014,24(1):19-21.
[12]馬杏.基于STC單片機(jī)的電動客車空調(diào)控制系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2013(21):71-73.
[13]鄧舜耕,李宏民,楊宣兵,等.基于DSP的高速感應(yīng)無線位置檢測系統(tǒng)[J].電子測量與儀器學(xué)報(bào),2016(6):880-886.
[14]徐敏.基于STC單片機(jī)的氣體監(jiān)測器設(shè)計(jì)[J].輕工科技,2014(6):73-74.
[15]閆坤.一款基于單片機(jī)的多功能電子日歷的設(shè)計(jì)[J].科技創(chuàng)新導(dǎo)報(bào),2013(29):245-246.
[16]王凱.基于STC型的單片機(jī)控制的體育場多功能電子日歷設(shè)計(jì)[J].電子設(shè)計(jì)工程,2016,24(23):26-28.