電路方案:基于51單片機(jī)紅外非接觸測(cè)溫儀閾值報(bào)警設(shè)計(jì)

來(lái)源:與非網(wǎng)

課題背景及其意義

紅外測(cè)溫儀采用非接觸式手段,突破了傳統(tǒng)測(cè)溫模式,具有不擾動(dòng)被測(cè)物體溫度分布場(chǎng),溫度分辨率高、響應(yīng)速度快、測(cè)溫范圍廣,穩(wěn)定性好、可同時(shí)測(cè)量環(huán)境溫度和目標(biāo)溫度的特點(diǎn)。本設(shè)計(jì)擬采用51單片機(jī)為控制核心,負(fù)責(zé)控制啟動(dòng)溫度測(cè)量,接收測(cè)量數(shù)據(jù) ,計(jì)算溫度值,并根據(jù)取得鍵值控制播放顯示過(guò)程,主要由光學(xué)系統(tǒng)、光電探測(cè)器、信號(hào)放大器及51單片機(jī)信號(hào)處理、顯示輸出等部分組成實(shí)現(xiàn)。該課題能夠考察我對(duì)單片機(jī)及其外圍電路與軟件編程、計(jì)算機(jī)輔助設(shè)計(jì)軟件等知識(shí)的學(xué)習(xí)和掌握水平,使我在硬件設(shè)計(jì)及實(shí)現(xiàn)、輔助設(shè)計(jì)軟件等方面的應(yīng)用能力得到全面的訓(xùn)練和提高。單片機(jī)應(yīng)用的發(fā)展及現(xiàn)狀 在20世界50年代中期,全世界第一臺(tái)用數(shù)字運(yùn)算方式的計(jì)算機(jī),自從美國(guó)著名大學(xué)實(shí)驗(yàn)室研究出來(lái),從此以后電子計(jì)算機(jī)經(jīng)過(guò)飛速的成長(zhǎng),主要有以下四個(gè)時(shí)期:第一代是電子管控制時(shí)期,第二代是晶體管控制時(shí)期,第三代是采用集成電路控制時(shí)期,第四代是采用超大規(guī)模集成電路控制時(shí)期。目前使用的計(jì)算機(jī)都是采用第四代超大規(guī)模集成電路控制方式的,由于是有很好的性能,主要表現(xiàn)在性價(jià)比高,體積小,性能穩(wěn)定等特點(diǎn);例外計(jì)算機(jī)發(fā)展趨向功能強(qiáng)大化,體積越小化,系統(tǒng)穩(wěn)定化和功能人性化。體積越小化是目前計(jì)算機(jī)主要的研究方向,其中主要研究的是把控制器的組成部分融合在一塊集成板上,因此就誕生了廣泛大規(guī)模的集成控制器的微小電子計(jì)算機(jī)——簡(jiǎn)稱單板小型數(shù)字控制器,英文縮寫為MCU,因?yàn)镸CU的主要運(yùn)用場(chǎng)所是高性能智能化電子產(chǎn)品上,主要是大多數(shù)產(chǎn)品都是要內(nèi)含嵌入的設(shè)備的系統(tǒng)。現(xiàn)在全世界有能力制造出數(shù)字控制器MCU的公司商主要是很多大型的國(guó)際公司,國(guó)內(nèi)也有一些上市公司進(jìn)行生產(chǎn)和研究數(shù)字控制器MCU,每個(gè)公司生產(chǎn)出來(lái)的單片機(jī)都有各自的特色,主要運(yùn)用場(chǎng)合也不盡相同 。

第二章 方案的設(shè)計(jì)與論證

控制方案的確定本設(shè)計(jì)由STC89C52單片機(jī)電路+1602液晶顯示電路+MLX90614ESF紅外非接觸溫度檢測(cè)電路+按鍵電路+蜂鳴器報(bào)警電路。控制方式的選擇 單片機(jī)芯片的選擇方案一采用可編程邏輯器件CPLD作為控制器,CPLD可以實(shí)現(xiàn)各種復(fù)雜的功能、規(guī)模大、密度高、體積小、穩(wěn)定性高、I/O資源豐富、易于進(jìn)行功能擴(kuò)展。采用并行的輸入輸出方式,提高了系統(tǒng)的處理速度,適合作為大規(guī)??刂葡到y(tǒng)的控制核心。但本系統(tǒng)不需要復(fù)雜的邏輯功能,對(duì)數(shù)據(jù)的處理速度的要求也不是非常高。且從使用及經(jīng)濟(jì)的角度考慮,最終放棄了此方案。方案二采用ST公司的STC89C52單片機(jī)作為主控制器,STC89S52是一種低功耗、高性能CMOS8位微控制器,具有8K 在系統(tǒng)可編程 Flash 存儲(chǔ)器。該單片機(jī)功耗低、接口豐富,成本低廉,完全能滿足本設(shè)計(jì)要求。方案三采用單片機(jī)芯片控制MSP430單片機(jī)是美國(guó)德州儀器(TI)推出的一種16位超低功 耗的混合信號(hào)處理器(Mixed Signal Processor),主要是針對(duì)實(shí)際應(yīng)用需求,把許多模擬電路、數(shù)字電路和微處理器集成在一個(gè)芯片上,以提供“單片”混合信號(hào)處理的解決方案。MSP430F149是一個(gè)16位的、具有精簡(jiǎn)指令集的、超低功耗的混合型單片機(jī),具有可靠性高、功耗低、擴(kuò)展靈活、體積小、價(jià)格低和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表、專用設(shè)備智能化管理及過(guò)程控制等領(lǐng)域,有效地提高了控制質(zhì)量與經(jīng)濟(jì)效益,已成為眾多單片機(jī)系列中一顆耀眼的新星。然而其成本太高,故舍棄。故選擇方案二。聲音報(bào)警電路方案的選擇方案一采用語(yǔ)音集成芯片ISD4004報(bào)警,由于ISD4004需要擴(kuò)充喇叭驅(qū)動(dòng)電路且其本身控制比較繁瑣、電路比較復(fù)雜,穩(wěn)定性差。基于以上考慮,所以放棄了此方案。方案二通過(guò)蜂鳴器實(shí)現(xiàn)報(bào)警電路,具有電路簡(jiǎn)單,性能可靠、穩(wěn)定等優(yōu)點(diǎn),最重要的是低成本,故選擇方案二。方案三采用音樂片作為本系統(tǒng)門鈴的音樂模塊,音樂芯片是一種比較簡(jiǎn)單的語(yǔ)音電路,它通過(guò)內(nèi)部的振蕩電路,再外接小量分立元件,就能產(chǎn)生各種音樂信號(hào),音樂芯片是語(yǔ)音集成電路的一個(gè)重要分支,目前廣泛用于音樂卡、電子玩具、電子鐘、電子門鈴、家用電器等場(chǎng)合。其具有電路簡(jiǎn)單,成本低廉等優(yōu)點(diǎn)。故選擇方案二。顯示方案的選擇方案一采用LED數(shù)碼管動(dòng)態(tài)掃描,LED數(shù)碼管價(jià)格適中,對(duì)于顯示數(shù)字十分合適,采用動(dòng)態(tài)掃描法與單片機(jī)連接時(shí),雖然占用的單片機(jī)口線少,電路簡(jiǎn)單,性價(jià)比較高。然而本設(shè)計(jì)顯示數(shù)據(jù)較多,數(shù)碼管明顯不符合要求,故舍棄。方案二采用點(diǎn)陣式數(shù)碼管顯示,點(diǎn)陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對(duì)于顯示文字比較適合,若采用在顯示數(shù)字顯得太浪費(fèi),且價(jià)格也相對(duì)較高,所以在此也不用此種作為顯示。 方案三LCD液晶顯示,由單片機(jī)驅(qū)動(dòng),它主要用來(lái)顯示大量數(shù)據(jù)、文字、圖形,能夠顯示的位數(shù)多,顯示得清晰多樣、美觀,同時(shí)液晶顯示器的編寫程序簡(jiǎn)單,價(jià)格便宜,故采用此種方案。采用1602液晶顯示屏,該液晶顯示屏的顯示功能強(qiáng)大,內(nèi)置192種字符,可顯示大量符號(hào)、數(shù)字,清晰可見,而且功率消耗小壽命長(zhǎng)抗干擾能力強(qiáng)。故選擇方案一。溫度采集模塊的選擇方案一采用PT100鉑電阻溫度傳感器,此傳感器屬于電阻式傳感器,它的電阻隨著溫度的變化而變化。這種溫度傳感器有零度電阻值和電阻變化率,它性能比較穩(wěn)定,測(cè)量范圍達(dá)到-200℃~850℃,但是使用它要復(fù)雜的轉(zhuǎn)換關(guān)系,要清楚的知道電阻和溫度之間的關(guān)系。其采集電路主要采用的是電阻分壓網(wǎng)絡(luò),在電阻分壓網(wǎng)絡(luò)的設(shè)計(jì)上,由于定值電阻隨著測(cè)量環(huán)境溫度變化時(shí),其阻值會(huì)有所變化,這就會(huì)給系統(tǒng)帶來(lái)誤差,使系統(tǒng)采集的溫度值產(chǎn)生偏差,并且其電壓值要進(jìn)行AD轉(zhuǎn)換,增加了系統(tǒng)的復(fù)雜程度。PT100自身體積較大,溫度變化時(shí),反應(yīng)速度會(huì)優(yōu)先減慢,如果環(huán)境變化溫度較快時(shí),將會(huì)有部分的中間溫度會(huì)被直接過(guò)濾掉,使實(shí)時(shí)溫度信息不準(zhǔn),實(shí)時(shí)性較差。方案二采用AD590,AD590是現(xiàn)在溫度測(cè)量較為常見的溫度傳感器,測(cè)量精度高、溫度范圍寬,但是成本很高,一般的廉價(jià)應(yīng)用上不會(huì)使用。AD590是電流型溫度傳感器,在檢測(cè)溫度變化時(shí),其兩端的輸出電流會(huì)有相應(yīng)的改變。應(yīng)用方法,一般是采用在輸出端接一個(gè)定值電阻(當(dāng)然這也要溫漂較低的電阻),在測(cè)量電阻兩端的電壓(電壓值=AD590輸出電流×定值電阻阻值),這與PT100的測(cè)量方式相同,使用AD轉(zhuǎn)換器,將模擬電壓值轉(zhuǎn)換為數(shù)字量。當(dāng)然AD590的體積也稍大,也會(huì)有高速溫度變化時(shí)產(chǎn)生出濾波效果,實(shí)時(shí)性降低。方案三采用DS18B20, DS18B20是數(shù)字式的溫度傳感器,測(cè)量的溫度范圍較廣,精度高,成本低,穩(wěn)定性較好。DS18B20采用單總線通信,減少了I/O的占用數(shù)量,減少了外圍電路,通信簡(jiǎn)單。DS18B20的集成度高,體積較小。因?yàn)槠潴w積小,可以測(cè)量到的溫度值變化快,實(shí)時(shí)性就好。方案三選擇MLX90614ESF非接觸式紅外測(cè)溫模塊對(duì)溫度進(jìn)行測(cè)量,真正實(shí)現(xiàn)了非接觸式測(cè)溫。本傳感器體積小,成本低,易集成??梢詿o(wú)線測(cè)溫。(醫(yī)用)高精度校準(zhǔn),在所需的溫度范圍精度為°C,分辨率為°C。有單個(gè) 和雙重區(qū)域版本。SMBus兼容數(shù)字接口用于快速讀取溫度并可建立傳感器網(wǎng)絡(luò)。

故選擇方案四。


【資料圖】

硬件電路的設(shè)計(jì)

系統(tǒng)的功能分析及體系結(jié)構(gòu)設(shè)計(jì)

系統(tǒng)功能分析本設(shè)計(jì)由STC89C52單片機(jī)電路+1602液晶顯示電路+MLX90614ESF紅外非接觸溫度檢測(cè)電路+按鍵電路+蜂鳴器報(bào)警電路。1、液晶實(shí)時(shí)顯示MLX90614ESF檢測(cè)的環(huán)境溫度值和被測(cè)物體溫度值,顯示中E環(huán)境溫度,O物體溫度。2、可以通過(guò)按鍵設(shè)置溫度的閾值,如果MLX90614檢測(cè)到的溫度高于設(shè)置的閾值,則蜂鳴器報(bào)警,否則,蜂鳴器不報(bào)警。系統(tǒng)總體結(jié)構(gòu)

本系統(tǒng)具體框圖如下圖所示:

系統(tǒng)原理框圖

模塊電路的設(shè)計(jì) STC89C52單片機(jī)核心系統(tǒng)電路設(shè)計(jì)

STC89C52RC是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K字節(jié)系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但是做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個(gè)16 位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級(jí)中斷結(jié)構(gòu)),全雙工串行口。另外 STC89C52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。

一、STC89C52主要特性如下:

(1)8K字節(jié)程序存儲(chǔ)空間;(2)512字節(jié)數(shù)據(jù)存儲(chǔ)空間;(3)內(nèi)帶4K字節(jié)EEPROM存儲(chǔ)空間;(4)可直接使用串口下載。

二、STC89C52主要參數(shù)如下:

(1)增強(qiáng)型8051單片機(jī),6時(shí)鐘/機(jī)器周期和12 時(shí)鐘/機(jī)器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051;(2)工作電壓:~(5V單片機(jī))/~(3V 單片機(jī));(3)工作頻率范圍:0~40MHz,相當(dāng)于普通8051的0~80MHz,實(shí)際工作 頻率可達(dá)48MHz;(4)用戶應(yīng)用程序空間為8K字節(jié);(5)片上集成512 字節(jié)RAM;(6)通用I/O 口(32個(gè)),復(fù)位后為:P1/P2/P3 是準(zhǔn)雙向口/弱上拉,P0口是漏極開路輸出,作為總線擴(kuò)展用時(shí),不用加上拉電阻,作為 I/O口用時(shí),需加上拉電阻;(7)ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無(wú)需專用編程器,無(wú)需專用仿真器,可通過(guò)串口(RxD/,TxD/)直接下載用戶程序,數(shù)秒即可完成一片;(8)具有EEPROM功能;(9)共3個(gè)16 位定時(shí)器/計(jì)數(shù)器。即定時(shí)器T0、T1、T2;(10)外部中斷4路,下降沿中斷或低電平觸發(fā)電路,Power Down 模式可 由外部中斷低電平觸發(fā)中斷方式喚醒;(11)通用異步串行口(UART),還可用定時(shí)器軟件實(shí)現(xiàn)多個(gè)UART;(12)工作溫度范圍:-40~+85℃(工業(yè)級(jí))/0~75℃(商業(yè)級(jí));(13)PDIP封裝。

三、STC89C52單片機(jī)相關(guān)引腳說(shuō)明:

(1)VCC:供電電壓。(2)GND:接地。(3) RXD(串行輸入口)(4) TXD(串行輸出口)(5) /INT0(外部中斷0)(6) /INT1(外部中斷1)(7) T0(記時(shí)器0外部輸入)(8) T1(記時(shí)器1外部輸入)(9) /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)(10) /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)

(11)RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。

(12)ALE/PROG:當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。(13)/PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。(14)/EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。(15)XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。(16)XTAL2:來(lái)自反向振蕩器的輸出。

單片機(jī)引腳圖如下圖所示:

STC89C52單片機(jī)引腳圖

四、STC89C52單片機(jī)最小系統(tǒng)說(shuō)明:

STC89C52單片機(jī)最小系統(tǒng)電路由復(fù)位電路、時(shí)鐘電路和電源電路。擁有這三部分電路后,單片機(jī)即可正常工作。單片機(jī)最小系統(tǒng)原理圖如下圖所示。

單片機(jī)最小系統(tǒng)原理圖

VCC和GND為單片機(jī)的電源引腳,為單片機(jī)提供電源:

復(fù)位電路由按鍵S1、電解電容EC1和電阻R1組成。具有手動(dòng)按鍵復(fù)位和上電自動(dòng)復(fù)位功能。系統(tǒng)上電復(fù)位按鍵接口采集到兩個(gè)高端信號(hào)后進(jìn)行手動(dòng)復(fù)位,就是非自動(dòng)的按鍵復(fù)位;系統(tǒng)檢測(cè)到的電壓由低電平上升到高電平的一段時(shí)間后,在這段時(shí)間過(guò)后,系統(tǒng)通過(guò)電阻與接地之間形成一條通路,然后自動(dòng)把高電平進(jìn)行拉低,使得單片機(jī)從高電位變?yōu)榈碗娢?,從而就是給單片機(jī)自動(dòng)進(jìn)行復(fù)位即上電復(fù)位。

時(shí)鐘電路由晶振Y1、瓷片電容C1和C2組成。有控制芯片的數(shù)字電路正常工作是少不了TIME(時(shí)鐘)電路的,我們需要時(shí)鐘電路自動(dòng)發(fā)出系統(tǒng)時(shí)間,讓控制芯片正常工作。給控制芯片正常工作的時(shí)鐘信號(hào),一般把這種工作方式稱為“拍”,以至于讓整個(gè)控制系統(tǒng)能正常工作,由于要保證控制系統(tǒng)能正常工作,提高他的工作能力,我們經(jīng)常用晶振和30PF的電容進(jìn)行組合,電容為了幫助晶振起振的,滿足了數(shù)字控制器上電以后可以正常工作。

JD1為單片機(jī)的下載接口。

5V電源電路設(shè)計(jì)本系統(tǒng)選擇5V直流電源作為系統(tǒng)總電源,為整個(gè)系統(tǒng)供電,電路簡(jiǎn)單、穩(wěn)定。DC為電源的DC插座,可以直接接USB電源線,一端插在DC插座上,另外一端可以插在5V電源上,如電腦USB、充電寶、手機(jī)充電器等等。LED為紅色LED燈,作為系統(tǒng)是否有點(diǎn)的指示燈,電阻為1K電阻,起到限流作用,保護(hù)LED燈,以防電流過(guò)大燒壞LED燈。SW為自鎖開關(guān),開關(guān)按下后,紅燈亮,此時(shí)系統(tǒng)電源5V直流輸出。開關(guān)再次按下后,紅燈滅,此時(shí)系統(tǒng)電源無(wú)5V電源輸出。5V電源電路原理圖 LCD1602液晶顯示模塊電路設(shè)計(jì)LCD顯示器分為字段顯示和字符顯示兩種。其中字段顯示與LED顯示相似,只要送對(duì)應(yīng)的信號(hào)到相應(yīng)的管腳就能顯示。字符顯示是根據(jù)需要顯示基本字符。本設(shè)計(jì)采用的是字符型顯示。系統(tǒng)中采用LCD1602作為顯示器件輸出信息。與傳統(tǒng)的LED數(shù)碼管顯示器件相比,液晶顯示模塊具有體積小、功耗低、顯示內(nèi)容豐富等優(yōu)點(diǎn),而且不需要外加驅(qū)動(dòng)電路,現(xiàn)在液晶顯示模塊已經(jīng)是單片機(jī)應(yīng)用設(shè)計(jì)中最常用的顯示器件了。LCD1602可以顯示2行16個(gè)漢字。

一、LCD1602主要技術(shù)參數(shù)如下:

(1)顯示容量為16×2個(gè)字符;(2)芯片工作電壓為~;(3)工作電流為();(4)模塊最佳工作電壓為;(5)字符尺寸為×(W×H)mm。

二、LCD1602采用標(biāo)準(zhǔn)的14腳,其接口的引腳說(shuō)明如下:

(1)第1腳:VSS為地電源。(2)第2腳:VDD接5V正電源。(3)第3腳:V0為液晶顯示器對(duì)比度調(diào)整端。(4)第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。(5)第5腳:RW為讀寫信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時(shí)可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平RW為低電平時(shí)可以寫入數(shù)據(jù)。(6)第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。(7)第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。(8)第15~16腳:空腳

三、控制指令說(shuō)明

LCD1602液晶模塊內(nèi)部的控制器共有11條控制指令,說(shuō)明下表所示:

序號(hào)指令RSR/WD7D6D5D4D3D2D1D0
1清顯示0000000001
2光標(biāo)返回000000001*
3置輸入模式00000001I/DS
4顯示開/關(guān)控制0000001DCB
5光標(biāo)或字符移位000001S/CR/L**
6置功能00001DLNF**
7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址
8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址
9讀忙標(biāo)志或地址01BF計(jì)數(shù)器地址
10寫數(shù)到CGRA或DDRAM)10要寫的數(shù)據(jù)內(nèi)容
11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容

表 控制命令表

四、1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過(guò)指令編程來(lái)實(shí)現(xiàn)的。(說(shuō)明:1為高電平、0為低電平)

(1)指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置(2)指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H(3)指令3:光標(biāo)和顯示模式設(shè)置 I/D:光標(biāo)移動(dòng)方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無(wú)效。(4)指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無(wú)光標(biāo) B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍(5)指令5:光標(biāo)或顯示移位 S/C:高電平時(shí)移動(dòng)顯示的文字,低電平時(shí)移動(dòng)光標(biāo)(6)指令6:功能設(shè)置命令 DL:高電平時(shí)為4位總線,低電平時(shí)為8位總線 N:低電平時(shí)為單行顯示,高電平時(shí)雙行顯示 F: 低電平時(shí)顯示5x7的點(diǎn)陣字符,高電平時(shí)顯示5x10的點(diǎn)陣字符(7)指令7:字符發(fā)生器RAM地址設(shè)置(8)指令8:DDRAM地址設(shè)置(9)指令9:讀忙信號(hào)和光標(biāo)地址 BF:為忙標(biāo)志位,高電平表示忙,此時(shí)模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。(10)指令10:寫數(shù)據(jù)(11)指令11:讀數(shù)據(jù)

系統(tǒng)中采用LCD1602作為顯示器件輸出信息。在本電路中電位器可以調(diào)節(jié)液晶顯示的對(duì)比度即清晰度。其具體電路原理圖如下圖所示。

LCD1602液晶顯示電路原理圖其實(shí)物圖如下圖所示。LCD1602液晶實(shí)物圖 蜂鳴器報(bào)警電路(低電平有效)設(shè)計(jì)

有源蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,采用直流電壓供電,廣泛應(yīng)用于計(jì)算機(jī)、打印機(jī)、復(fù)印機(jī)、報(bào)警器、電子玩具、汽車電子設(shè)備、電話機(jī)、定時(shí)器等電子產(chǎn)品中作發(fā)聲器件。本系統(tǒng)所采用的報(bào)警模塊為5V有源蜂鳴器模塊,電路中采用三極管9012來(lái)驅(qū)動(dòng),只要單片機(jī)控制引腳為低電平,蜂鳴器就會(huì)鳴叫報(bào)警,反之則不鳴叫,可以通過(guò)控制單片機(jī)引腳方波輸出形式控制蜂鳴器的鳴叫方式。電阻為限流電阻,保護(hù)作用。

系統(tǒng)軟件設(shè)計(jì)

完整的控制系統(tǒng)由硬件系統(tǒng)和軟件系統(tǒng)組成,前一章主要闡述了系統(tǒng)的硬件電路的設(shè)計(jì)方案,若要充分發(fā)揮系統(tǒng)的設(shè)計(jì)功能,則需要支持硬件平臺(tái)的軟件程序,即燒寫到單片機(jī)內(nèi)部的程序。

編程語(yǔ)言選擇由于整個(gè)程序比較復(fù)雜,且計(jì)算量較大,用到了較多的浮點(diǎn)數(shù)計(jì)算,所以程序的編寫采用了C語(yǔ)言。對(duì)于大多數(shù)51系列的單片機(jī),使用C語(yǔ)言這樣的高級(jí)語(yǔ)言與使用匯編語(yǔ)言相比具有如下優(yōu)點(diǎn):

不需要了解處理器的指令集,也不必了解存儲(chǔ)器結(jié)構(gòu)。

寄存器分配和尋址方式由編譯器進(jìn)行管理,編程時(shí)不需要考慮存儲(chǔ)器的地址和數(shù)據(jù)類型等細(xì)節(jié)。指定操作的變量選擇組合提高了程序的可讀性。可使用與人的思維更相近的關(guān)鍵字和操作函數(shù)。與使用匯編語(yǔ)言相比,程序的開發(fā)和調(diào)試時(shí)間大大縮短。C語(yǔ)言的庫(kù)文件提供了許多標(biāo)準(zhǔn)的例程。通過(guò)C語(yǔ)言可實(shí)現(xiàn)模塊化編程技術(shù),從而可將已編制好的程序加到 新程序中。C語(yǔ)言可移植性好且非常普及,C語(yǔ)言編譯器幾乎適用于所有的目標(biāo)系統(tǒng),己完成的項(xiàng)目可以很容易的轉(zhuǎn)換到其它的處理器或環(huán)境中與匯編語(yǔ)言相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可移植性、可維護(hù)性上有明顯的優(yōu)勢(shì),易學(xué)易用。

單片機(jī)程序開發(fā)環(huán)境

本設(shè)計(jì)中單片機(jī)開發(fā)環(huán)境是Keil uVision4,Keil uVision4開發(fā)軟件是目前51系列單片機(jī)系統(tǒng)的主流程序開發(fā)軟件,Keil uVision4是STC公司推出最新一代關(guān)于51系列單片機(jī)處理器的編譯、連接和調(diào)試集成環(huán)境??梢越档烷_發(fā)周期,從而減少很多成本。Keil uVision4不僅提供了完整的Windows開發(fā)環(huán)境界面,支持C/C++語(yǔ)言開發(fā),而且其C語(yǔ)言編輯效率很高,能夠使開發(fā)者非常容易地使用C語(yǔ)言進(jìn)行程序編程。其中Keil uVision4有以下特點(diǎn):

(1)Keil uVision4軟件同時(shí)支持WINXP和WIN7等多種操作系統(tǒng),提供了豐富的庫(kù)函數(shù)和功能強(qiáng)大的開發(fā)工具。(2)Keil uVision4可以完成從編輯、編譯、到連接、調(diào)試的一套開發(fā)流程。(3)Keil uVision4 C51在Keil C51的基礎(chǔ)上,增加了很多新的功能。如Keil uVision4更加增強(qiáng)了對(duì)內(nèi)核微控制器的開發(fā)支持,并對(duì)Keil C51的開發(fā)形式和開發(fā)界面進(jìn)行相應(yīng)的改進(jìn)。Keil uVision4軟件界面如下圖所示。Keil uVision4開發(fā)界面圖 Keil uVision4軟件開發(fā)流程首先,需要建立“Project”工程,點(diǎn)擊Keil uVision4界面中菜單中“Project”,選擇“New uVision Project”,為新建的工程命名后點(diǎn)擊保存;然后選擇開發(fā)單片機(jī)芯片的型號(hào),本工程選擇“STC89C52”,這樣就完成了“Project”的建立;當(dāng)工程建立完畢后,點(diǎn)擊“Source Group”,可以往里面添加.c文件,點(diǎn)擊Add就可以編輯了該文件了,也可以把常用的.c文件拷貝到建立的“Project”目錄下面,最后一個(gè)完成的工程軟件就建立完畢了。具體開發(fā)流程如圖所示。Keil uVision4軟件開發(fā)流程圖 程序燒錄軟件介紹在Keil uVision4開發(fā)環(huán)境下,STC89C52RC芯片程序燒寫軟件使用的是燒錄軟件,它是一款集成了代碼下載,在線仿真和串口查看于一起軟件備,在51系列智能產(chǎn)品研發(fā)過(guò)程中得到了廣泛使用,性能高,是目前51系列單片機(jī)控制系統(tǒng)研發(fā)中不可缺少的一部分。在Keil uVision4開發(fā)環(huán)境中,需要進(jìn)行一定的配置才能使用,當(dāng)把下載器(即PL2303串口燒寫模塊)、設(shè)備和PC連接好,首先需要在軟件中選擇單片機(jī)型號(hào)和串口號(hào),并把波特率設(shè)置和程序軟件一致。然后選在項(xiàng)目程序“hex”文件所在的地址,最后就可以點(diǎn)擊程序下載按鈕了。具體下載界面如下圖所示。

資料包括:

需要完整的資料可以加入我的紛傳圈子,里面有資源壓縮包的百度網(wǎng)盤下載地址及提取碼。

標(biāo)簽:

推薦

財(cái)富更多》

動(dòng)態(tài)更多》

熱點(diǎn)