蔡晨
摘 要 本系統(tǒng)運(yùn)用Cortex-M3系列l(wèi)pc1768芯片微控制器實(shí)現(xiàn)對(duì)外部送入電壓的測(cè)量。該系統(tǒng)可以精確地檢測(cè)到外部的一個(gè)待測(cè)電壓值,并通過(guò)TFT彩色LCD模塊顯示出其值。把待檢測(cè)的電壓送入lpc1768芯片AD輸入通道,經(jīng)過(guò)AD轉(zhuǎn)換并通過(guò)處理,最后在TFT彩色LCD模塊上顯示其電壓值,當(dāng)電壓超過(guò)一定的數(shù)值時(shí),就會(huì)報(bào)警;并通過(guò)串口發(fā)送到電腦上,在電腦顯示其電壓值,實(shí)現(xiàn)簡(jiǎn)便、方便快捷、精確度高。
關(guān)鍵詞 嵌入式lpc1768芯片 電壓檢測(cè) LCD模塊 串口通訊
中圖分類(lèi)號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A
LPC1768-based Voltage Detection System Design and Implementation
CAI Chen
(Liuzhou Railway Vocational and Technical College Adult Education Branch, Liuzhou, Guangxi 545007)
Abstract This system uses the Cortex-M3 series lpc1768 chip microcontrollers into external voltage measurement. The system can accurately detect an external voltage measured value, and a color TFT LCD module by the value shown. The voltage to be detected is input into the AD lpc1768 chip channels, and by processing through AD conversion, the final voltage value displayed on a color TFT LCD module when the voltage exceeds a certain value, will alarm; transmitted to the computer through the serial port and on the computer display its voltage to achieve simple, convenient, high accuracy.
Key words embedded Lpc1768 chip; voltage detection; LCD module; serial communication
1 系統(tǒng)總體框架
設(shè)計(jì)應(yīng)用到LPC1768內(nèi)部的AD轉(zhuǎn)換器對(duì)外部的電壓進(jìn)行采集,并把檢測(cè)結(jié)果顯示在顯示屏上,當(dāng)檢測(cè)值超過(guò)設(shè)定值就進(jìn)行報(bào)警,還可以把檢測(cè)結(jié)果通過(guò)串口發(fā)送到電腦上顯示。因此,電路主要由電壓模擬量輸入電路、串口模塊、顯示模塊、按鍵模塊、報(bào)警模塊等組成。具體如圖1所示。
圖1 系統(tǒng)基本結(jié)構(gòu)圖
2 Cortex-M3 系列 lpc1768微控制器
Cortex-M3 系列l(wèi)pc1768 微控制器的工作頻率可達(dá)100MHz,CPU具有3 級(jí)流水線和哈佛結(jié)構(gòu),具備獨(dú)立的本地指令和數(shù)據(jù)總線以及用于外設(shè)的稍微低性能的第三條總線,內(nèi)置了嵌套的向量中斷控制器(NVIC ),外設(shè)豐富,具有ISP和IAP功能,工作電壓低。包含高達(dá)512KB 片上Flash 程序存儲(chǔ)器。把增強(qiáng)型的Flash 存儲(chǔ)加速器和Flash 存儲(chǔ)器在CPU 本地代碼/數(shù)據(jù)總線上的位置進(jìn)行整合,則Flash 可提供高性能的代碼。
3 電路硬件設(shè)計(jì)
3.1 電源供電設(shè)計(jì)
本設(shè)計(jì)采用兩種方式供電:一是通過(guò)外接+5V電源供電,另一種使用USB供電。5V電源輸入 1117-3.3以獲得 3.3V電源,給系統(tǒng)供電。
3.2 報(bào)警電路
報(bào)警電路采用了三極管8550和LED、蜂鳴器組成的聲光報(bào)警。當(dāng)LPC1768處理器的引腳輸出低電平時(shí),三極管8550導(dǎo)通,接在發(fā)射極上的LED點(diǎn)亮,并且蜂鳴發(fā)出報(bào)警聲音。
3.3 LCD液晶顯示模塊
液晶顯示模塊采用的是240?20的彩色液晶顯示器,可以顯示漢字、圖片和數(shù)字,界面更加直觀、生動(dòng)??紤]到觸摸功能,因此采用的是2.8寸彩屏觸摸模塊。
3.4 串口通訊電路
Max3232是工作在3.3V的RS232電平轉(zhuǎn)換芯片,內(nèi)部有2組串口轉(zhuǎn)換電路,系統(tǒng)采用LPC1768 的串口 0 和串口 2 。串口0是用于ISP編程,串口2是用于傳輸數(shù)據(jù)。
4 軟件設(shè)計(jì)
系統(tǒng)軟件由電壓檢測(cè)程序、顯示程序、報(bào)警程序等組成。電壓檢測(cè)程序負(fù)責(zé)檢測(cè)外部電壓,顯示程序主要是將檢測(cè)的電壓值顯示在顯示屏上。報(bào)警程序主要是當(dāng)檢測(cè)電壓值超過(guò)設(shè)定值進(jìn)行報(bào)警。主要工作過(guò)程是:系統(tǒng)上電后,按鍵按下,系統(tǒng)正常工作,并開(kāi)始檢測(cè)到當(dāng)前的電壓值,電壓值經(jīng)過(guò)芯片內(nèi)部AD轉(zhuǎn)換處理后,在液晶屏顯示出來(lái),并可通過(guò)串口與電腦連接把檢測(cè)到的電壓值發(fā)送到電腦并顯示其值??梢哉{(diào)節(jié)電位器使電壓值變化。當(dāng)電壓值大于等于設(shè)定值時(shí),發(fā)生報(bào)警,揚(yáng)聲器響。
4.1 系統(tǒng)的主程序
當(dāng)產(chǎn)品通電后,液晶顯示屏上顯示相關(guān)的信息,點(diǎn)擊觸摸屏上的“啟動(dòng)”按鍵,系統(tǒng)就開(kāi)始采集外部電壓,電壓經(jīng)過(guò)AD轉(zhuǎn)換后,送處LPC1768處理器進(jìn)行數(shù)學(xué)運(yùn)算和處理,把計(jì)算的電壓值在LCD液晶顯示屏上顯示,數(shù)據(jù)也會(huì)將通過(guò)串口傳送室PC機(jī)上的采集軟件中保存。實(shí)時(shí)采集的電壓值小于設(shè)定的上限數(shù)據(jù)時(shí),蜂鳴器不響、LED不亮,系統(tǒng)正常。當(dāng)電壓值超過(guò)設(shè)定的上限數(shù)據(jù)時(shí),LED閃爍,同時(shí)揚(yáng)聲器報(bào)警。此時(shí),可以點(diǎn)擊觸摸屏上的“停止”按鍵,系統(tǒng)停止工作,此時(shí)液晶顯示屏上的數(shù)據(jù)不再發(fā)生變化。
4.2 AD轉(zhuǎn)換數(shù)據(jù)采集程序
AD轉(zhuǎn)換器需要正確配置內(nèi)部的寄存器。當(dāng)給指定信號(hào)后才能接受外部輸入的電壓,在一定脈沖頻率下進(jìn)行轉(zhuǎn)換, 當(dāng)檢測(cè)到轉(zhuǎn)換結(jié)束停止ADC轉(zhuǎn)換, 接著把數(shù)據(jù)送入處理器進(jìn)行處理。為了減少數(shù)據(jù)的誤差,通常采取采集數(shù)次數(shù)據(jù)結(jié)果取平均值作為采集結(jié)果。
4.3 液晶顯示程序
液晶顯示主要是為把采集和處理后的數(shù)據(jù)在顯示屏的指定位置上顯示,增加直觀的效果。液晶顯示程序主要包括液晶初始化、字符轉(zhuǎn)換、結(jié)果顯示幾個(gè)組成部分。液晶初始化主要是配置液晶的寄存器,通常有工作方式、顯示模式等;字符轉(zhuǎn)換轉(zhuǎn)換主要是把需要顯示的結(jié)果轉(zhuǎn)換成液晶顯示的固定格式;結(jié)果顯示是把數(shù)據(jù)在固定的位置顯示。
5 測(cè)試結(jié)果
把編寫(xiě)好的程序編譯好下載系統(tǒng)中,按下開(kāi)始鍵觀察LCD屏上顯示的電壓值,用萬(wàn)用表測(cè)待測(cè)電壓的兩端,調(diào)節(jié)電位器并觀察萬(wàn)用表和LCD屏上的電壓值。開(kāi)發(fā)板通過(guò)串口與電腦連接把檢測(cè)到的電壓發(fā)送到電腦上,觀察電腦上顯示的電壓值。采樣電壓是0000mv,0500 mv,2250 mv,2460 mv,5000 mv時(shí),顯示電壓值分別為:0000 mv、0500 mv、2250 mv、2460 mv、3300 mv。由于系統(tǒng)工作的電壓是3.3V,所以當(dāng)檢測(cè)最大顯示電壓值得為3300mv。使用串口調(diào)試助手可以接收到發(fā)送回來(lái)的電壓值,具體如圖2所示。
圖2 串口通信PC顯示圖
參考文獻(xiàn)
[1] 周立功,張華等.深入淺出ARM7—LPC213x/214x.北京:北京航空航天大學(xué)出版社,2005.
[2] 潘松,黃繼業(yè).EDA 技術(shù)與VHDL.北京:清華大學(xué)出版社,2005.