《智能溫控儀表設(shè)計》課程設(shè)計_第1頁
已閱讀1頁,還剩37頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  太原理工大學(xué)現(xiàn)代科技學(xué)院</p><p>  智能溫控儀表設(shè)計 課程設(shè)計 </p><p>  設(shè)計名稱 烘干箱的智能溫控儀表設(shè)計 </p><p>  專業(yè)班級 自動化09-1班 </p><p>  學(xué) 號 </p><p>  姓 名

2、 </p><p>  指導(dǎo)教師 </p><p><b>  摘 要</b></p><p>  近年來隨著計算機(jī)在社會領(lǐng)域的滲透, 單片機(jī)的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月益更新。</p><p>  本文從硬件和軟件兩方面來講述對烘干箱溫

3、度的自動控制過程,在控制過程中主要應(yīng)用AT89C51、ADC0809、LED顯示器、LM324比較器,而主要是通過 AD590數(shù)字溫度傳感器采集環(huán)境溫度,以單片機(jī)為核心控制部件,并通過四位數(shù)碼管顯示實時溫度的一種數(shù)字溫度計。軟件方面采用匯編語言來進(jìn)行程序設(shè)計,使指令的執(zhí)行速度快,節(jié)省存儲空間。為了便于擴(kuò)展和更改,軟件的設(shè)計采用模塊化結(jié)構(gòu),使程序設(shè)計的邏輯關(guān)系更加簡潔明了,使硬件在軟件的控制下協(xié)調(diào)運(yùn)作。</p><p&

4、gt;  關(guān)鍵詞:單片機(jī)系統(tǒng);傳感器;數(shù)據(jù)采集;模數(shù)轉(zhuǎn)換器;溫度</p><p><b>  目 錄</b></p><p><b>  1 緒 論2</b></p><p>  1.1課題的背景及其意義2</p><p>  1.2課題研究的內(nèi)容及要求3</p><p&g

5、t;  1.2.1 課題的主要研究的內(nèi)容3</p><p>  2 STC89C51系列單片機(jī)介紹及硬件設(shè)計5</p><p>  2.1 STC89C51系列單片機(jī)介紹5</p><p>  2.1.1 SATC89C51系列基本組成及特性5</p><p>  2.1.2 STC89C51系列引腳功能6</p>&

6、lt;p>  2.1.3 STC89C51系列單片機(jī)的功能單元9</p><p>  2.2 硬件設(shè)計15</p><p>  2.2.1 溫度采樣部分18</p><p>  2.2.2 控制溫度18</p><p>  2.2.3 模數(shù)轉(zhuǎn)換部分18</p><p>  2.2.4 模數(shù)轉(zhuǎn)換技術(shù)18

7、</p><p>  2.2.5 積分型模數(shù)轉(zhuǎn)換器19</p><p>  2.2.6 顯示部分19</p><p><b>  3 軟件設(shè)計22</b></p><p>  3.1主程序流程圖22</p><p>  3.2 讀溫度子程序23</p><p> 

8、 3.3 計算溫度子程序23</p><p>  3.4按鍵流程圖24</p><p>  3.5 顯示流程圖25</p><p><b>  結(jié) 論27</b></p><p><b>  參考文獻(xiàn)28</b></p><p>  專業(yè)班級 自動化09-1 學(xué)

9、號 2009100624 姓名 邸漢生 成績 </p><p><b>  1 緒 論</b></p><p>  1.1課題的背景及其意義</p><p>  現(xiàn)代工業(yè)設(shè)計,工程建設(shè)及日常生活中溫度控制都起著重要的作用,早期的溫度控制主要用于工廠時間生產(chǎn)中,能起到實時采集溫度數(shù)據(jù),提高生產(chǎn)效率

10、,產(chǎn)品質(zhì)量之用。隨著人們生活質(zhì)量的提高,現(xiàn)代社會中的溫度控制不僅應(yīng)用在工廠生產(chǎn)方面也應(yīng)用于酒店,廠房以及家庭生活中,在有些應(yīng)用中,如高精度的生產(chǎn)廠房,對溫度的要求極其嚴(yán)格,溫度的變化極有可能對生產(chǎn)的產(chǎn)品造成極大的影響。因此,這就需要一種能夠及時檢測溫度變化以及溫度變化的設(shè)備,提供溫度數(shù)據(jù)值,使人們對溫度的變化做及時的調(diào)整,多點溫度控制可根據(jù)人們不同的應(yīng)用環(huán)境自行設(shè)置該環(huán)境的溫度值,及時反映生產(chǎn),生活中溫度變化使人們能及時看到溫度變化的第

11、一手資料,提示人們溫度變化情況,協(xié)助人們能及時的調(diào)整,起到溫度報警作用,使溫度控制更好的服務(wù)于社會生產(chǎn),生活。</p><p>  電子技術(shù)的飛速發(fā)展,給人類的生活帶來了根本的的變革,特別是隨著大規(guī)模集成電路的產(chǎn)生而出現(xiàn)了微型計算機(jī),更是將人類社會帶入了一個新的時代。利用微機(jī)的強(qiáng)大功能。人們可以完成各種各樣的控制。然而,微機(jī)造價高,對于大多數(shù)的工業(yè)控制來說,也并不需要微機(jī)那樣強(qiáng)大的功能,于是單片機(jī)就運(yùn)用而生了。單

12、片機(jī)其實就是一個簡化的微機(jī),將微機(jī)的CPU,存儲器,I/O接口。定時器/計數(shù)器等集成在一片芯片上就是單片機(jī)了,它主要用來完成各種控制功能。相對微機(jī)來說,單片機(jī)價格低,非常適合于應(yīng)用在簡單 的控制場合以降低成本。另外,單片機(jī)是按照工業(yè)控制要求設(shè)計的,其可靠性很高,可在工業(yè)現(xiàn)場復(fù)雜的環(huán)境下運(yùn)行。單片機(jī)依靠其高的可靠性和極高的性價比,在工業(yè)控制,數(shù)據(jù)采集,智能化儀表,家用電器等方面得到極為廣泛的應(yīng)用。</p><p>

13、  溫度是表征物體冷熱程度的物理量,溫度測量則是工農(nóng)業(yè)生產(chǎn)過程中一個很重要而普遍的參數(shù)。溫度的測量及控制對保證產(chǎn)品質(zhì)量、提高生產(chǎn)效率、節(jié)約能源、生產(chǎn)安全、促進(jìn)國民經(jīng)濟(jì)的發(fā)展起到非常重要的作用。由于溫度測量的普遍性,溫度傳感器的數(shù)量在各種傳感器中居首位。而且隨著科學(xué)技術(shù)和生產(chǎn)的不斷發(fā)展,溫度傳感器的種類還是在不斷增加豐富來滿足生產(chǎn)生活中的需要。</p><p>  在單片機(jī)溫度測量系統(tǒng)中的關(guān)鍵是測量溫度、控制溫度和

14、保持溫度,溫度測量是工業(yè)對象中主要的被控參數(shù)之一。因此,單片機(jī)溫度測量則是對溫度進(jìn)行有效的測量,并且能夠在工業(yè)生產(chǎn)中得到了廣泛的應(yīng)用,尤其在電力工程、化工生產(chǎn)、機(jī)械制造、冶金工業(yè)等重要工業(yè)領(lǐng)域中,擔(dān)負(fù)著重要的測量任務(wù)。在日常生活中,也可廣泛實用于地?zé)?、空調(diào)器、電加熱器等各種家庭室溫測量及工業(yè)設(shè)備溫度測量場合。但溫度是一個模擬量,如果采用適當(dāng)?shù)募夹g(shù)和元件,將模擬的溫度量轉(zhuǎn)化為數(shù)字量雖不困難,但電路較復(fù)雜,成本較高。</p>

15、<p>  1.2課題研究的內(nèi)容及要求</p><p>  1.2.1 課題的主要研究的內(nèi)容 </p><p>  本文所要研究的課題是基于單片機(jī)控制的水溫控制系統(tǒng)的設(shè)計,主要是介紹了對水箱溫度的顯示、控制及報警,實現(xiàn)了溫度的實時顯示及控制。水箱水溫控制部分,提出了用DS18S20、AT89C51單片機(jī)及LED的硬件電路完成對水溫的實時檢測及顯示,利用DS18S20與單片機(jī)連接

16、由軟件與硬件電路配合來實現(xiàn)對加熱電阻絲的實時控制及超出設(shè)定的上下限溫度的報警系統(tǒng)。而爐內(nèi)溫度控制部分,采用一套PID閉環(huán)負(fù)反饋控制系統(tǒng),由DS18S20檢測爐內(nèi)溫度,用中值濾波的方法取一個值存入程序存取器內(nèi)部一個單元作為最后檢測信號,并在LED中顯示??刂破魇怯?9C51單片機(jī),用PID算法對檢測信號和設(shè)定值的差值進(jìn)行調(diào)節(jié)后輸出控制信號給執(zhí)行機(jī)構(gòu),去調(diào)節(jié)電阻爐的加熱功率,從而控制爐內(nèi)溫度。它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配

17、微處理器等優(yōu)點,特別適合于構(gòu)成多點的溫度測控系統(tǒng),可直接將溫度轉(zhuǎn)化成串行數(shù)字信號供微機(jī)處理,而且每片DS18S20都有唯一的產(chǎn)品號,可以一并存入其ROM中,以便在構(gòu)成大型溫度測控系統(tǒng)時在單線上掛接任意多個AD590芯片。從AD590讀出或?qū)懭階D590信息僅需要一根口線,其讀寫及其溫度變換功率來</p><p>  1.2.2 用單片機(jī)實現(xiàn)其具體控制功能如下:</p><p> ?。?)能

18、夠連續(xù)測量水的溫度值,用十進(jìn)制數(shù)碼管來顯示水的實際溫度。</p><p> ?。?)能夠設(shè)定水的溫度值,設(shè)定范圍是30℃~90℃。</p><p> ?。?)能夠?qū)崿F(xiàn)水溫的自動控制,如果設(shè)定水溫為85℃,則能使水溫保持恒定在85℃的溫度下運(yùn)行。</p><p> ?。?)用單片機(jī)STC89C51控制,通過按鍵來控制水溫的設(shè)定值,數(shù)值采用數(shù)碼管顯示。</p>

19、;<p>  2 ST89C51系列單片機(jī)介紹及硬件設(shè)計</p><p>  2.1 ST89C51系列單片機(jī)介紹</p><p>  2.1.1 ST89C51系列基本組成及特性</p><p>  ST89C51是一種帶4k字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Onl

20、y Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。STC89C52RC是采用8051核的ISP(In System Programming)在系統(tǒng)可編程芯片,最高工作時鐘頻率為80MHz,片內(nèi)含8K Bytes的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,具有在系統(tǒng)可編程(ISP)特性,配合PC端的控制

21、程序即可將用戶的程序代碼下載進(jìn)單片機(jī)內(nèi)部,省去了購買通用編程器,而且速度更快。STC89C52RC系列單片機(jī)是單時鐘/ 機(jī)器周期(1T)的兼容8051 內(nèi)核單片機(jī),是高速/ 低功耗的新一代8051 單片機(jī),全新的流水線/ 精簡指令集結(jié)構(gòu),內(nèi)部集成MAX810 專用復(fù)位電路。</p><p>  ST89C51基本功能描述如下:</p><p><b>  特點</b>

22、</p><p>  (1)增強(qiáng)型1T 流水線/ 精簡指令集結(jié)構(gòu)8051 CPU</p><p>  (2)工作電壓:3.4V-5.5V (5V 單片機(jī))/ 2.0V-3.8V (3V 單片機(jī)</p><p>  (3)工作頻率范圍:0 -35 MHz,相當(dāng)于普通8051 的0~420MHz.實際工作頻率可達(dá)48MHz.</p><p>  

23、(4)用戶應(yīng)用程序空間12K / 10K / 8K / 6K / 4K / 2K 字節(jié)</p><p>  (5)片上集成512 字節(jié)RAM</p><p>  (6)通用I/O 口(27/23個),復(fù)位后為:準(zhǔn)雙向口/ 弱上拉(普通8051 傳統(tǒng)I/O 口)</p><p>  可設(shè)置成四種模式:準(zhǔn)雙向口/ 弱上拉,推挽/ 強(qiáng)上拉,僅為輸入/ 高阻,開漏</

24、p><p>  每個I/O 口驅(qū)動能力均可達(dá)到20mA,但整個芯片最大不得超過55mA</p><p>  (7)ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程),無需專用編程器</p><p>  可通過串口(P3.0/P3.1)直接下載用戶程序,數(shù)秒即可完成一片</p><p>  (8)EEPROM 功能</p><p&g

25、t;<b>  (9)看門狗</b></p><p>  (10)內(nèi)部集成MAX810 專用復(fù)位電路(外部晶體20M 以下時,可省外部復(fù)位電路)</p><p>  (11)時鐘源:外部高精度晶體/ 時鐘,內(nèi)部R/C 振蕩器。用戶在下載用戶程序時,可選擇是使用內(nèi)部R/C 振蕩器還是外部晶體/ 時鐘。常溫下內(nèi)部R/C 振蕩器頻率為:5.2MHz ~6.8MHz。精度要求

26、不高時,可選擇使用內(nèi)部時鐘,因為有溫漂,請選4MHz ~8MHz</p><p>  (12)有2個16 位定時器/ 計數(shù)器</p><p>  (13)外部中斷2 路,下降沿中斷或低電平觸發(fā)中斷,Power Down 模式可由外部中斷低電平觸發(fā)中斷方式喚醒</p><p>  (14)PWM( 4 路)/ P C A(可編程計數(shù)器陣列),也可用來再實現(xiàn)4個定時器或

27、4個外部中斷(上升沿中斷/ 下降沿中斷均可支持)</p><p>  (15)STC89Cc516AD具有ADC功能。10 位精度ADC,共8 路</p><p>  (16)通用異步串行口(UART)</p><p>  (17)SPI 同步通信口,主模式/ 從模式</p><p>  (18)工作溫度范圍:0 -75℃/ -40 -+85

28、℃</p><p>  (19)封裝:PDIP-28,SOP-28,PDIP-20,SOP-20,PLCC-32,TSSOP-20(超小封狀,定貨)</p><p>  2.1.2 STC89C51系列引腳功能</p><p>  STC89C51有40引腳雙列直插(DIP)形式。其與80C51引腳結(jié)構(gòu)基本相同,其邏輯引腳圖如圖2-1。</p><

29、;p>  圖2-1 STC89C51邏輯引腳圖</p><p>  各引腳功能敘述如下:</p><p><b>  1.電源和晶振</b></p><p>  VCC——運(yùn)行和程序校驗時加+5V</p><p><b>  GND——接地</b></p><p>  

30、XTAL1——輸入到振蕩器的反向放大器</p><p>  XTAL2——反向放大器的輸出,輸入到內(nèi)部時鐘發(fā)生器</p><p>  (當(dāng)使用外部振蕩器時,XTAL1接地,XTAL2接收振蕩器信號)</p><p>  RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地

31、址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。</p><p>  2.I/O(4

32、個口,32根)</p><p>  P0口——8位、漏極開路的雙向I/O口。當(dāng)使用片外存儲器(ROM、RAM)時,作地址和數(shù)據(jù)分時復(fù)用。在程序校驗期間,輸出指令字節(jié)(需加外部上拉電路)。P0口(作為總線時)能驅(qū)動8個LSTTL負(fù)載。</p><p>  P1口——8位、準(zhǔn)雙向I/O口。在編程/校驗期間,用于輸入低位字節(jié)地址。P1口可驅(qū)動4個LSTTL負(fù)載。對于80C51,P1.0——T2,

33、是定時器的計數(shù)端且位輸入;P1.1——T2EX,是定時器的外部輸入端。這時,讀兩個特殊輸入引腳的輸出鎖存器應(yīng)由程序置1。</p><p>  P2口——8位、準(zhǔn)雙向I/O口。當(dāng)使用片外存儲器(ROM及RAM)時,輸出高8位地址。在編程/校驗期間,接收高位字節(jié)地址。P2口可以驅(qū)動4個LSTTL負(fù)載。</p><p>  P3口——8位、準(zhǔn)雙向I/O口,具有內(nèi)部上拉電路。P3口提供各種替代功能

34、。在提供這些功能時,其輸出鎖存器應(yīng)由程序置1。P3口可以輸入/輸出4個LSTTL負(fù)載。</p><p><b>  3.串行口</b></p><p>  P3.0——RXD(串行輸入口),輸入。</p><p>  P3.1——TXD(串行輸出口),輸出。</p><p><b>  4.中斷</b&g

35、t;</p><p>  P3.2——INT0外部中斷0,輸入。</p><p>  P3.3——INT1外部中斷1,輸入。</p><p><b>  5.定時器/計數(shù)器</b></p><p>  P3.4——T0定時器/計數(shù)器0的外部輸入,輸入。</p><p>  P3.5——T1定時器/

36、計數(shù)器1的外部輸入,輸入。</p><p><b>  6.?dāng)?shù)據(jù)存儲器選通</b></p><p>  P3.6——WR低電平有效,輸出,片外存儲器寫選通。</p><p>  P3.7——RD低電平有效,輸出,片外存儲器讀選通。</p><p>  7.控制線(共4根)</p><p><

37、b>  輸入:</b></p><p>  RST——復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機(jī)器周期的高電平時間。</p><p>  EA/Vpp——片外程序存儲器訪問允許信號,低電平有效。在編程時,其上施加21V的編程電壓。</p><p>  注意:在加密方式1時,EA將內(nèi)部鎖定為RESET;當(dāng)EA端保持高電平時,此間內(nèi)部程序存儲器

38、。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p><b>  輸入、輸出:</b></p><p>  ALE/PROG——地址鎖存允許信號,輸出。ALE以1/6的振蕩頻率穩(wěn)定速率輸出,可用作對外輸出的時鐘或用于定時。在EPROM編程期間,作輸入,輸入編程脈沖(PROG)。ALE可以驅(qū)動8個LSTTL負(fù)載。當(dāng)訪問外部存儲器時,地址鎖存

39、允許的輸出電平用于鎖存地址的低位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。</p><p>  注意:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。

40、如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p><b>  輸出:</b></p><p>  PSEN——片外程序存儲器選通信號,低電平有效。在從片外程序存儲器取址期間,在每個機(jī)器周期中,當(dāng)PSEN有效時,程序存儲器的內(nèi)容被送上P0口(數(shù)據(jù)總線)。PSEN可以驅(qū)動8個LSTTL負(fù)載。</p><p>  2.1.3 STC8

41、9C51系列單片機(jī)的功能單元</p><p>  1.并行I/O接口:</p><p>  單片機(jī)芯片內(nèi)有一項主要功能就是并行I/O口。51系列共有4個8位的并行I/O口,分別記作P0、P1、P2、P3每個口都包含一個鎖存器,一個輸出驅(qū)動器和輸入緩沖器。實際上,它們已被歸入專用寄存器之列,并且具有字節(jié)尋址和位尋址功能。在訪問片外擴(kuò)展存儲器時,低八位地址和數(shù)據(jù)由P0口分時傳送,高八位地址由P

42、2口傳送。</p><p><b>  2.定時器/計數(shù)器</b></p><p>  定時器/計數(shù)器(timer/counter)是單片機(jī)中的重要部件,其工作方式靈活、編程簡單,使用它對減輕CPU的負(fù)擔(dān)和簡化外圍電路都大有好處。</p><p>  C51系列包含有兩個16位的可編程定時器/計數(shù)器分別稱為定時器/計數(shù)器T0和定時器/計數(shù)器T1

43、;在C51部分產(chǎn)品中,還包含有一個用做看門狗的8位定時器。定時器/計數(shù)器的核心是一個加1計數(shù)引腳上施加器,其基本功能是加1功能。在單片機(jī)的定時器T0或T1中,有一個定時器發(fā)生由0到1的跳變時,計數(shù)器增1,即為計數(shù)功能;在單片機(jī)內(nèi)部對機(jī)器周期或其分頻進(jìn)行計數(shù),從而得到定時,這就是定時功能。在單片機(jī)中,定時功能和計數(shù)功能的設(shè)定和控制都是通過軟件來進(jìn)行的。</p><p>  定時器/計數(shù)器內(nèi)部結(jié)構(gòu)及其原理:由定時器0

44、、定時器1、定時器方式寄存器TMOD和定時器控制寄存器TCON組成。當(dāng)定時器/計數(shù)器設(shè)置為定時工作方式時,計數(shù)器對內(nèi)部機(jī)器周期計數(shù),每過一個機(jī)器周期,計數(shù)器加1,直至計滿溢出。定時器的定時時間與系統(tǒng)的振蕩頻率緊密相關(guān),因為C51系列單片機(jī)的一個機(jī)器周期由12個振蕩脈沖組成,所以,計數(shù)頻率fc=fosc/12。如果單片機(jī)系統(tǒng)采用12MHz晶振,則計數(shù)周期為:</p><p>  (2-1) &

45、lt;/p><p>  這是最短的定時周期,適當(dāng)選擇定時器的初值可獲取各種定時時間。</p><p>  當(dāng)定時器/計數(shù)器設(shè)置為計數(shù)工作方式時,計數(shù)器對來自輸入引腳T0(P3.4)和T1(P3.5)的外部信號計數(shù),外部脈沖的下降沿將觸發(fā)計數(shù)。在每個機(jī)器周期的S5P2期間采樣引腳輸入電平,若前一個機(jī)器周期采樣值為1,后一個機(jī)器周期采樣值為0,則計數(shù)器加1。新的計數(shù)值是在檢測到輸入引腳電平發(fā)生1到

46、0的負(fù)跳變后,于下一個機(jī)器周期的S3P1期間裝入計數(shù)器中的,可見,檢測一個由1到0的負(fù)跳變需要兩個機(jī)器周期,所以最高檢測頻率為振蕩頻率的1/24。計數(shù)器對外部輸入信號的占空比沒有特別的限制,但必須保證輸入信號的高電平與低電平的持續(xù)時間在一個機(jī)器周期以上。</p><p><b>  3.振蕩器</b></p><p>  XTAL1和XTAL2分別為反向放大器的輸入和

47、輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2應(yīng)不接。當(dāng)輸入至內(nèi)部時鐘信號時要通過一個二分頻觸發(fā)器,而對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p><b>  4.芯片擦除</b></p><p>  整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持

48、ALE管腳處于低電平10ms 來完成。在芯片擦除操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM、定時器、計數(shù)器、串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。</p><p><

49、;b>  5.中斷系統(tǒng)</b></p><p>  中斷系統(tǒng)是單片機(jī)的重要組成部分。實時控制、故障自動處理、單片機(jī)與外圍設(shè)備間的數(shù)據(jù)傳送往往采用中斷系統(tǒng)。中斷系統(tǒng)大大提高了系統(tǒng)的效率。</p><p>  C51系統(tǒng)有關(guān)中斷的寄存器有4個,分別為中斷源寄存器TCON和SCON、中斷允許控制寄存器IE和中斷優(yōu)先級控制寄存器IP;中斷源有5個,分別為外部中斷0請求INT0、外

50、部中斷1請求INT1、定時器0溢出中斷請求TF0、定時器1溢出中斷請求TF1和串行中斷請求R1或T1。5個中斷源的排列順序由中斷優(yōu)先級控制寄存器IP和順序查詢邏輯電路共同決定,5個中斷源分別對應(yīng)5個固定的中斷入口地址。中斷的特點是分時操作,實時處理和故障處理。</p><p>  簡單介紹一下本次設(shè)計所需的單片機(jī)芯片STC89C51的中斷系統(tǒng)中要用到的中斷類型。</p><p><b

51、> ?。?) 外部中斷源</b></p><p>  STC89C51有INT0和INT1兩條外部中斷請求輸入線,用于輸入兩個外部中斷源的中斷請求信號,并允許外部中斷源以低電平或負(fù)邊沿兩種中斷觸發(fā)方式來輸入中斷請求信號。STC89C51究竟工作于哪種中斷觸發(fā)方式,可由用戶對定時器控制寄存器TCON中IT0和IT1位狀態(tài)的設(shè)定來選取。STC89C51在每個機(jī)器周期的S5P2時對INT0、線上中斷請

52、求信號進(jìn)行一次檢測,檢測方式和中斷觸發(fā)方式的選取有關(guān)。若STC89C51設(shè)定為電平觸發(fā)方式(IT0=0或IT1=0),則CPU檢測到INT0、INT1上低電平時就可認(rèn)定其上中斷請求有效;若設(shè)定為邊沿觸發(fā)方式(IT0=1或IT1=1),則CPU需要兩次檢測INT0、INT1線上電平方能確定其上中斷請求是否有效,即前一次檢測為高電平和后一次檢測為低電平時中斷請求才有效。</p><p>  (2) 定時器溢出中斷源&

53、lt;/p><p>  定時器溢出中斷由STC89C51內(nèi)部定時器分的中斷源產(chǎn)生,故它們屬于內(nèi)部中斷。STC89C51內(nèi)部有兩個16位定時器/計數(shù)器,受內(nèi)部定時脈沖(主脈沖經(jīng)12分頻后)或T0/T1引腳上輸入的外部定時脈沖計數(shù)。定時器T0/T1在定時脈沖作用下從全“1”變成全“0”時可以自動向CPU提出溢出中斷請求,以表明定時器T0或T1的定時時間已到。 </p><p> ?。?) 串行口中

54、斷源</p><p>  串行口中斷由STC89C51內(nèi)部串行口的中斷源產(chǎn)生,也是一種內(nèi)部中斷。串行口中斷分為串行口發(fā)送中斷和串行口接收中斷兩種。在串行口進(jìn)行發(fā)送/接收數(shù)據(jù)時,每當(dāng)串行口發(fā)送/接收完一組串行數(shù)據(jù)時串行口電路自動使串行口控制寄存器SCON中的RI或TI中斷標(biāo)志位置位,并自動向CPU發(fā)出串行口中斷請求,CPU響應(yīng)串行口中斷后便立即轉(zhuǎn)入串行口中斷服務(wù)程序執(zhí)行。因此,只要在串行口中斷服務(wù)程序中安排一段對S

55、CON中RI和TI中斷標(biāo)志位狀態(tài)的判斷程序,便可區(qū)分串行口發(fā)生了接收中斷請求還是發(fā)送中斷請求。</p><p><b> ?。?) 中斷標(biāo)志</b></p><p>  STC89C51在S5P2時檢測(或接收)外部(內(nèi)部)中斷源發(fā)來的中斷請求信號后先使相應(yīng)中斷標(biāo)志位置位,然后便在下個機(jī)器周期檢測這些中斷標(biāo)志位狀態(tài),以決定是否響應(yīng)該中斷。</p><

56、;p>  STC89C51新特點和功能一、ISP與IAP編程方式STC89C系列單片機(jī)芯片內(nèi)置了ISP(在系統(tǒng)可編程)/IAP(在應(yīng)用可編程)功能,無需專用編程器即可通過串口(P3.0/P3.1)用STC提供的STC-ISP.exe軟件進(jìn)行燒錄。  新出廠的STC89C51系列單片機(jī)芯片,已經(jīng)設(shè)置為單片機(jī)徹底放電后再復(fù)位,即會先進(jìn)行ISP監(jiān)控。當(dāng)單片機(jī)檢測到P3.0/RxD引腳有合法的下載命令流時,就會先將用戶程序下載并燒錄

57、到用戶程序區(qū),再運(yùn)行用戶程序,否則軟復(fù)位到用戶程序區(qū),運(yùn)行用戶程序。在進(jìn)行ISP燒錄時,可以選擇下次冷啟動時是依舊先進(jìn)行ISP監(jiān)控,還是需要P1.0和P1.1引腳同時為0才進(jìn)行ISP監(jiān)控,否則跳過ISP監(jiān)控直接運(yùn)行用戶程序(見圖)?!?二.6時鐘,機(jī)器周期模式標(biāo)準(zhǔn)的8051每個機(jī)器周期為12時鐘。增強(qiáng)型的STC89C系列單片機(jī)在進(jìn)行ISP燒錄程序時,可以設(shè)置為6時鐘/機(jī)器周期(雙倍速)或12時鐘/機(jī)器周期工作模式.  6時鐘/機(jī)器

58、周期(雙倍速)工作模式下,定時器的計數(shù)速度會加倍,相應(yīng)的12時鐘/機(jī)器周期模式下的串口波特率也會加倍,因此單片機(jī)使用的最高的波特率可以提</p><p><b>  2.2 硬件設(shè)計</b></p><p>  本設(shè)計采用按鍵作為輸入控制,通過溫度多采樣單元采集溫度信息,經(jīng)過LM324放大器放大及ADC0809數(shù)模轉(zhuǎn)換器將其轉(zhuǎn)換,由主機(jī)STC89C51進(jìn)行處理并將實際

59、溫度值和設(shè)定溫度值分別顯示在共陽極數(shù)碼顯示管LED上。</p><p>  2.2.1 溫度采樣部分</p><p>  溫度采樣單元用于采集被控制對象的溫度采集參數(shù),它由溫度電壓轉(zhuǎn)換,小信號放大及A/D轉(zhuǎn)換三部分組成,其中將溫度轉(zhuǎn)化為電量的溫度電壓轉(zhuǎn)換由溫度傳感器——熱敏電阻實現(xiàn),A/D轉(zhuǎn)換選擇模數(shù)轉(zhuǎn)換器ADC0809將采集的溫度模擬信號轉(zhuǎn)換為8255能處理的二進(jìn)制數(shù)字信號。</p

60、><p>  ADC0809是位A/D轉(zhuǎn)換芯片,它是采用逐次逼近的方法完成A/D轉(zhuǎn)換的。ADC0809由單+5V電源供電;片內(nèi)帶有鎖存功能的8路模擬多路開關(guān),可對8路0~5V的輸入模擬電壓分時進(jìn)行轉(zhuǎn)換,完成一次轉(zhuǎn)換約需100µS;片內(nèi)具有多路開關(guān)的地址譯碼器和鎖存器、高阻抗斬波器、穩(wěn)定的比較器,256電阻T型網(wǎng)絡(luò)和樹狀電子開關(guān)以及逐次逼近寄存器。</p><p>  ADC0809是

61、引腳雙列直插式封裝,引腳及其功能(圖2.1):</p><p>  1.D7~D0:8位數(shù)字量輸出引腳。</p><p>  2.IN0~I(xiàn)N7:8路模擬量輸入引腳。</p><p>  3.VCC:+5V工作電壓。</p><p><b>  4.GND:接地。</b></p><p>  5.

62、REF(+):參考電壓正端。</p><p>  6.REF(-):參考電壓負(fù)端。</p><p>  7.START:A/D轉(zhuǎn)換啟動信號輸入端。</p><p>  8.A、B、C:地址輸入端。</p><p>  9.ALE:地址鎖存允許信號輸入端。</p><p>  10.EOC:轉(zhuǎn)換結(jié)束信號輸出引腳,開始轉(zhuǎn)換

63、時為低電平,當(dāng)轉(zhuǎn)換結(jié)束時為高電平。</p><p>  11.OE: 輸出允許控制端,用以打開三態(tài)數(shù)據(jù)輸出鎖存器。</p><p>  12.CLK:時鐘信號輸入端,譯碼后可選通IN0~I(xiàn)N7八個通道中的一個進(jìn)行轉(zhuǎn)換。</p><p>  圖2-1.1 ADC0809的管腳圖</p><p>  溫度采樣單元,如2.2所示,用于采集被控對象

64、的溫度參數(shù),它由溫度電壓轉(zhuǎn)換、小信號放大及A/D轉(zhuǎn)換三部分組成。其中,將溫度轉(zhuǎn)化為電量的溫度電壓轉(zhuǎn)換由溫度傳感器-熱敏電阻實現(xiàn),小信號放大由橋式放大電路實現(xiàn),A/D轉(zhuǎn)換選擇模數(shù)轉(zhuǎn)換器ADC0809,將采集到的溫度模擬信號轉(zhuǎn)換為STC89C51能夠處理的二進(jìn)制數(shù)字信號。</p><p>  圖2-2 溫度采樣單元</p><p>  該系統(tǒng)的下位機(jī)8255單片機(jī)作為控制核心,負(fù)責(zé)采集現(xiàn)場溫度

65、值。溫度傳感器將溫度轉(zhuǎn)換為電壓信號,經(jīng)模/數(shù)轉(zhuǎn)換器ADC0809轉(zhuǎn)換成8位數(shù)字量,并經(jīng)8255的P1口進(jìn)入單片機(jī)保存。上位PC機(jī)通過串行口與下位機(jī)聯(lián)絡(luò),向下位機(jī)發(fā)送控制命令和接收下位機(jī)上傳的數(shù)據(jù)以及進(jìn)行人機(jī)交互。上位機(jī)采用VB 6.0進(jìn)行人機(jī)交互界面設(shè)計,并利用其MSComm控件實現(xiàn)與下位機(jī)簡單而高效的串行通信。充分發(fā)揮了單片機(jī)在實時數(shù)據(jù)采集和PC機(jī)對圖形處理、顯示以及數(shù)據(jù)庫管理上的優(yōu)點。使得單片機(jī)的應(yīng)用已不僅僅局限于傳統(tǒng)意義上的自動監(jiān)

66、測或控制,而是形成了以網(wǎng)絡(luò)為核心的分布式多點系統(tǒng)的發(fā)展趨勢。</p><p>  2.2.2 控制溫度</p><p>  單片機(jī)是集成了中央處理部件,存儲器、定時器和各種輸入輸出設(shè)備等接口部件。具有集成度高,功能強(qiáng)、速度快、體積小、功耗小、使用方便、價格便宜等優(yōu)點,在工業(yè)生產(chǎn)中,電流、電壓、溫度、壓力流量和開關(guān)量都是常用的被控參數(shù)。其中,溫度控制也越來越重要。在工業(yè)生產(chǎn)的很多領(lǐng)域中,人們

67、都需要對各類加熱爐、熱處理爐、反應(yīng)爐中的溫度進(jìn)行檢測和控制。采用單片機(jī)對溫度進(jìn)行控制方便、簡單、靈活。而且可以大幅度提高被控溫度的技術(shù)指標(biāo),從而能夠大大的提高產(chǎn)品的質(zhì)量和數(shù)量。</p><p>  2.2.3 模數(shù)轉(zhuǎn)換部分</p><p>  模數(shù)轉(zhuǎn)換是將模擬輸入信號轉(zhuǎn)換為N位二進(jìn)制數(shù)字輸出信號的技術(shù)。采用數(shù)字信號處理能夠方便地實現(xiàn)各種先進(jìn)的自適應(yīng)算法,完成模擬電路無法實現(xiàn)的功能,因此,越

68、來越多的模擬信號處理正在被數(shù)字技術(shù)所取代。與之相應(yīng)的是,作為模擬系統(tǒng)和數(shù)字系統(tǒng)之間橋梁的模數(shù)轉(zhuǎn)換的應(yīng)用日趨廣泛。為了滿足市場的需求,各芯片制造公司不斷推出性能更加先進(jìn)的新產(chǎn)品、新技術(shù),令人目不暇接。</p><p>  2.2.4 模數(shù)轉(zhuǎn)換技術(shù)</p><p>  本次設(shè)計還涉及到數(shù)模轉(zhuǎn)換技術(shù),而模數(shù)轉(zhuǎn)換技術(shù)包括采樣、保持、量化和編碼四個過程。</p><p>  

69、1.采樣就是將一個連續(xù)變化的模擬信號x(t)轉(zhuǎn)換成時間上離散的采樣信號x(n)。根據(jù)奈奎斯特采樣定理,對于采樣信號x(t),如果采樣頻率fs大于或等于2fmax(fmax為x(t)最高頻率成分),則可以無失真地重建恢復(fù)原始信號x(t)。實際上,由于模數(shù)轉(zhuǎn)換器器件的非線性失真、量化噪聲及接收機(jī)噪聲等因素的影響采樣速率一般取fs=2.5fmax。通常采樣脈沖的寬度tw是很短的,故采樣輸出是斷續(xù)的窄脈沖。</p><p&g

70、t;  2.要把一個采樣輸出信號數(shù)字化,需要將采樣輸出所得的瞬時模擬信號保持一段時間,這就是保持過程。</p><p>  3.量化是將連續(xù)幅度的抽樣信號轉(zhuǎn)換成離散時間、離散幅度的數(shù)字信號,量化的主要問題就是量化誤差。假設(shè)噪聲信號在量化電平中是均勻分布的,則量化噪聲均方值與量化間隔和模數(shù)轉(zhuǎn)換器的輸入阻抗值有關(guān)。</p><p>  4.編碼是將量化后的信號編碼成二進(jìn)制代碼輸出。這些過程有些

71、是合并進(jìn)行的,例如,采樣和保持就利用一個電路連續(xù)完成,量化和編碼也是在轉(zhuǎn)換過程中同時實現(xiàn)的,且所用時間又是保持時間的一部分。</p><p>  2.2.5 積分型模數(shù)轉(zhuǎn)換器</p><p>  積分型模數(shù)轉(zhuǎn)換器稱雙斜率或多斜率數(shù)據(jù)轉(zhuǎn)換器,是應(yīng)用最為廣泛的轉(zhuǎn)換器類型。雙斜率轉(zhuǎn)換器包括兩個主要部分:一部分電路采樣并量化輸人電壓,產(chǎn)生一個時域間隔或脈沖序列,再由一個計數(shù)器將其轉(zhuǎn)換為數(shù)字量輸出。

72、雙斜率轉(zhuǎn)換器由1個帶有輸人切換開關(guān)的模擬積分器、1個比較器和1個計數(shù)單元構(gòu)成。積分器對輸入電壓在固定的時間間隔內(nèi)積分,該時間間隔通常對應(yīng)于內(nèi)部計數(shù)單元的最大計數(shù)。時間到達(dá)后將計數(shù)器復(fù)位并將積分器輸入連接到反極性(負(fù))參考電壓。在這個反極性信號作用下,積分器被“反向積分”直到輸出回到零,并使計數(shù)器終止,積分器復(fù)位。 </p><p>  積分型模數(shù)轉(zhuǎn)換器的采樣速度和帶寬都非常低,但它們的精度可以做得很高,并且抑制高

73、頻噪聲和固定的低頻干擾(如50 Hz或60 Hz)的能力,使其對于嘈雜的工業(yè)環(huán)境以及不要求高轉(zhuǎn)換速率的應(yīng)用非常有效。</p><p>  2.2.6 顯示部分</p><p>  本部分電路主要使用七段數(shù)碼管和移位寄存器芯片74LS164.單片機(jī)通過I2CC總線將要顯示的數(shù)據(jù)信號傳送到移位寄存器芯片74LS164寄存,再由移位寄存器控制數(shù)碼管的顯示,從而實現(xiàn)移位寄存點亮數(shù)碼管顯示。由于單片

74、機(jī)的時鐘頻率達(dá)到12M,移位寄存器的移位速度相當(dāng)快,所以我們根本看不到數(shù)據(jù)是一位一位傳輸?shù)?。從人類視覺的角度看,就仿佛是全部數(shù)碼管同步顯示的一樣。</p><p>  移位寄存器74LS164的引腳如圖2-6所示:</p><p>  圖2-12移位寄存器74LS164引腳圖</p><p>  74LS164為串行輸入、并行輸出移位寄存器,其引腳功能如下:<

75、/p><p>  A、B —— 串行輸入端;</p><p>  Q0~Q7 —— 并行輸出端;</p><p>  —— 清除端,低電平有效;</p><p>  CLK —— 時鐘脈沖輸入端,上升沿有效。</p><p>  多片74LS164串聯(lián),能實現(xiàn)多位LED靜態(tài)顯示。每擴(kuò)展一片164就可增加一位顯示。MR接+5

76、V,不清除。</p><p>  在本系統(tǒng)中使用的移位寄存器74LS164時,是用芯片的貼片封裝。貼片封裝直接焊接在數(shù)碼管電路的背面,這樣既能實現(xiàn)強(qiáng)大的功能又合理利用電路的空間,而且整個顯示電路小巧玲瓏,在總安裝時方便。采用移位寄存器控制數(shù)碼管顯示出本系統(tǒng)的數(shù)據(jù),也是本系統(tǒng)的一個優(yōu)點。</p><p>  圖2—13 LED 顯示電路</p><p><b&g

77、t;  3 軟件設(shè)計</b></p><p><b>  3.1主程序流程圖</b></p><p>  系統(tǒng)的軟件部分由主程序流程圖、中斷子程序流程圖、按鍵流程圖和顯示流程圖四部分組成。系統(tǒng)的主程序流程圖如圖4-1,當(dāng)有信號輸入時,主程序啟動,根據(jù)內(nèi)部設(shè)定的條件逐步運(yùn)行,達(dá)到設(shè)計目的。</p><p>  圖4-1主程序流程圖&l

78、t;/p><p>  3.2 讀溫度子程序</p><p>  本文選用AD590傳感器,讀出溫度子程序的主要功能包括初始化,判斷AD590是否存在?;虼嬖趧t進(jìn)行一系列的讀操作,若不存在則返回。其程序流程圖如圖4—3所示。</p><p><b>  圖4—3</b></p><p><b>  讀溫度流程圖<

79、;/b></p><p>  3.3 計算溫度子程序</p><p>  計算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖4—4所示。</p><p>  4—4計算溫度子程序</p><p><b>  3.4按鍵流程圖</b></p><p>

80、;  圖4-3為系統(tǒng)的按鍵流程圖。主要是通過人為的對外部按鍵的控制來調(diào)節(jié)系統(tǒng)的溫度,從而實現(xiàn)系統(tǒng)對溫度的手動和自動控制。</p><p>  圖4-3 按鍵流程圖</p><p><b>  3.5 顯示流程圖</b></p><p>  圖4-4為系統(tǒng)的顯示流程圖。主要是通過對傳輸過來的信號進(jìn)行顯示后,給操作者提供提示。已達(dá)到為本系統(tǒng)提供對溫

81、度的顯示和監(jiān)控的目的。</p><p>  圖4-4 顯示流程圖</p><p>  本章節(jié)主要講的是單片機(jī)溫度系統(tǒng)的軟件設(shè)計部分的主要的流程圖,這也是系統(tǒng)程序設(shè)計的基本設(shè)計思路,通過依照四部分的流程圖進(jìn)行設(shè)計,已達(dá)到對系統(tǒng)完整的運(yùn)行,對溫度的顯示、監(jiān)控和控制。</p><p><b>  結(jié) 論</b></p><p>

82、;  本系統(tǒng)能夠?qū)崿F(xiàn)單片機(jī)的溫度控制系統(tǒng)的設(shè)計,在控制過程中主要應(yīng)用STC89C51、ADC0809、LED顯示器、LM324比較器,而主要是通過AD590數(shù)字溫度傳感器采集環(huán)境溫度,以單片機(jī)為核心控制部件,并通過四位數(shù)碼管顯示實時溫度的一種數(shù)字溫度計。這些單片機(jī)的功能都為我們實現(xiàn)電路提供了非常有利的條件,同時也為開發(fā)環(huán)境友好,易用,方便,大大加快本系統(tǒng)設(shè)計開發(fā)。鍵盤的使用,是操作更為簡潔,易懂,方便,迅速。本制作的設(shè)計中使用了繼電器控

83、制的只是插座電路,因此,該系統(tǒng)的可擴(kuò)展性很強(qiáng),隨著插入插座的電器不同,可以實現(xiàn)許多其他功能的電路。本設(shè)計的單片機(jī)溫度控制系統(tǒng)結(jié)構(gòu)簡單、測溫準(zhǔn)確,具有一定的實際使用價值。該智能溫度控制器只是AD590數(shù)字溫度傳感器在溫度控制領(lǐng)域的一個簡單實例,還有許多需要完善的地方,例如可以將測得的溫度通過單片機(jī)與通訊模塊相連接,以手機(jī)短息的方式發(fā)送給用戶能夠隨時對溫度進(jìn)行控制。</p><p><b>  參考文獻(xiàn)&l

84、t;/b></p><p>  唐俊翟.單片機(jī)原理與應(yīng)用[M]. 冶金工業(yè)出版社, 2003 78-89 </p><p>  付家才.單片機(jī)控制工程實踐技術(shù)[M].化學(xué)工業(yè)出版社 ,2004 69-82 </p><p>  陳麗芳.單片機(jī)原理與控制技術(shù)[M]. 東南大學(xué)出版社 ,2003 </p><p>  侯繼紅.Pr

85、otelSE實用技術(shù)教程[M]. 中國電力出版社 , 2004 56-65 </p><p>  沈慶陽.8051單片機(jī)實踐與應(yīng)用[M]. 清華大學(xué)出版社, 2004 </p><p>  朱定華.微機(jī)原理與借口技術(shù)[M]. 清華大學(xué)出版社 , 2004 </p><p>  溫冬嬋. 匯編語言程序設(shè)計[M]. 清華大學(xué)出版社 , 2004 112-1

86、32</p><p>  8. 馬忠梅.單片機(jī)的C語言應(yīng)用程序設(shè)計[M]. 北京航空航天大學(xué)出版社,1998 115-124</p><p>  9. 李曉荃. 單片機(jī)原理與應(yīng)用[M]. 電子工業(yè)出版社,2000年8月</p><p>  10. 何立民. AVR單片機(jī)原理與接口技術(shù)[M]. 北京航空航天大學(xué)出版社,2002 67-86</p>&

87、lt;p>  11. 楊幫文. 新型繼電器實用手冊[M]. 北京人民郵電出版社.2004</p><p>  12. 何立民. 單片機(jī)的C語言應(yīng)用程序設(shè)計[M]. 北京航空航天大學(xué)出版社,1997 143-164</p><p>  13.何希才.傳感器及其應(yīng)用電路[M].北京:電子工業(yè)出版社,2001.131-135.</p><p>  14.丁鎮(zhèn)生.傳感

88、器及傳感技術(shù)應(yīng)用[M].北京:電子工業(yè)出版社,1998..</p><p>  15.王家楨.傳感器與變送器[M].北京:清華大學(xué)出版社,1996..</p><p>  16.曾巧媛.單片機(jī)原理及應(yīng)用[M].北京:電子工業(yè)出版社.2002</p><p>  17.何力民.單片機(jī)高級教程[M].北京:北京航空大學(xué)出版社.2000</p><p&

89、gt;  18.金發(fā)慶.傳感器技術(shù)與應(yīng)用[M].北京:北京機(jī)械工業(yè)出版社.2000</p><p><b>  附錄1</b></p><p><b>  程序清單:</b></p><p>  1. A/D轉(zhuǎn)換器子程序</p><p>  進(jìn)行A/D轉(zhuǎn)換時,采用查詢EOC的標(biāo)志信號來檢測A/D轉(zhuǎn)換

90、是否完畢,若完畢則把數(shù)據(jù)通過P0端口讀入,經(jīng)過數(shù)據(jù)處理之后在數(shù)碼管上顯示。進(jìn)行A/D轉(zhuǎn)換之前,要啟動轉(zhuǎn)換的方法:</p><p>  ABC=110選擇第三通道</p><p>  ST=0,ST=1,ST=0產(chǎn)生啟動轉(zhuǎn)換的正脈沖信號</p><p>  CHEQU 30H</p><p>  DPCNTEQU 31H</p>

91、;<p>  DPBUFEQU 33H</p><p>  GDATAEQU 32H</p><p>  STBIT P3.0</p><p>  OEBIT P3.1</p><p>  EOCBIT P3.2</p><p><b>  ORG 00H</b>&l

92、t;/p><p>  LJMP START</p><p><b>  ORG 0BH</b></p><p><b>  LJMP T0X</b></p><p><b>  ORG 30H</b></p><p>  START:MOV CH,#0BC

93、H</p><p>  MOV DPCNT,#00H</p><p>  MOV R1,#DPCNT</p><p><b>  MOV R7,#5</b></p><p><b>  MOV A,#10</b></p><p>  MOV R0,#DPBUF</p&g

94、t;<p>  LOP:MOV @R0,A</p><p><b>  INC R0</b></p><p>  DJNZ R7,LOP</p><p>  MOV @R0,#00H</p><p><b>  INC R0</b></p><p>  MOV

95、 @R0,#00H</p><p><b>  INC R0</b></p><p>  MOV @R0,#00H</p><p>  MOV TMOD,#01H</p><p>  MOV TH0,#(65536-4000)/256</p><p>  MOV TL0,#(65536-4000)

96、 MOD 256</p><p><b>  SETB TR0</b></p><p><b>  SETB ET0</b></p><p><b>  SETB EA</b></p><p>  WT:CLR ST</p><p><b>

97、;  SETB ST</b></p><p><b>  CLR ST</b></p><p>  WAIT:JNB EOC,WAIT</p><p><b>  SETB OE</b></p><p>  MOV GDATA,P0</p><p><b&

98、gt;  CLR OE</b></p><p>  MOV A,GDATA</p><p>  MOV B,#100</p><p><b>  DIV AB</b></p><p><b>  MOV 33H,A</b></p><p><b>  M

99、OV A,B</b></p><p><b>  MOV B,#10</b></p><p><b>  DIV AB</b></p><p><b>  MOV 34H,A</b></p><p><b>  MOV 35H,B</b><

100、;/p><p><b>  SJMP WT</b></p><p><b>  T0X:NOP</b></p><p>  MOV TH0,#(65536-4000)/256</p><p>  MOV TL0,#(65536-4000) MOD 256</p><p>  M

101、OV DPTR,#DPCD</p><p>  MOV A,DPCNT</p><p>  ADD A,#DPBUF</p><p><b>  MOV R0,A</b></p><p><b>  MOV A,@R0</b></p><p>  MOVC A,@A+DPTR

102、</p><p><b>  MOV P1,A</b></p><p>  MOV DPTR,#DPBT</p><p>  MOV A,DPCNT</p><p>  MOVC A,@A+DPTR</p><p><b>  MOV P2,A</b></p>

103、<p><b>  INC DPCNT</b></p><p>  MOV A,DPCNT</p><p>  CJNE A,#8,NEXT</p><p>  MOV DPCNT,#00H</p><p>  NEXT:RETI</p><p>  DPCD:DB 3FH,06H,

104、5BH,4FH,66H</p><p>  DB 6DH,7DH,07H,7FH,6FH,00H</p><p>  DPBT:DB 0FEH,0FDH,0FBH,0F7H</p><p>  DB 0EFH,0DFH,0BFH,07FH</p><p><b>  END</b></p><p&g

105、t;  2.?dāng)?shù)碼管顯示子程序</p><p>  ORG0000H</p><p>  MAX7219:DINBIT P1.1;定義變量</p><p>  CLKBIT P1.2</p><p>  LOAD BIT P1.1</p><p>  LED_BF EQU 50H ;顯示數(shù)據(jù)首址

106、</p><p><b>  AJMPMAIN</b></p><p>  MAIN:MOV SP.#70H</p><p>  LCALLPROCESS;設(shè)置MAX7219初始值</p><p>  LCALLDISPLAY;顯示</p><p>  WAIT;;其

107、他程序省略</p><p>  SJMP WAIT</p><p>  ;MAX7219初始化子程序</p><p>  PROCECC :MOVA,#0BH</p><p>  MOVB,#07H</p><p>  LCALLW_7219</p><p>  MOV A,#09H&

108、lt;/p><p>  MOV B,#00H</p><p>  LCALL W_7219</p><p>  MOV A,##0AH</p><p>  MOV B,#09H</p><p>  LCALL W_7219</p><p>  MOV A,#0CH</p><p&

109、gt;  MOV B,#01H</p><p>  LCALL W_7219</p><p><b>  RET</b></p><p>  ;MAX7219 顯示子程序</p><p>  DISPLAY:MOV R0,#LED_BF</p><p>  MOV R4,#01H

110、</p><p>  MOV R3,#08H</p><p>  C_DISP:MOV A,@R0</p><p><b>  MOV B,A</b></p><p><b>  MOV A,R4</b></p><p>  LCALL W_7219</p>&

111、lt;p><b>  INC R0</b></p><p><b>  INC R4</b></p><p>  DJNZ R3,C_DISP</p><p><b>  RET</b></p><p>  W_7219:CLR LOAD</p><p

112、>  LCALL SD_7219</p><p><b>  MOV A,B</b></p><p>  LCALL SD_7219</p><p><b>  SETB LOAD</b></p><p><b>  RET</b></p><p>

113、;  SD_7219:MOV R6,#08H</p><p><b>  C_SD:NOP</b></p><p><b>  CLRCLK</b></p><p><b>  RLC A</b></p><p><b>  MOV DIN,C</b>&

114、lt;/p><p><b>  NOP</b></p><p>  3.濾波電路驅(qū)動程序中值濾波,采樣值分別放在R2,r3,r4中,結(jié)果從小到大排序放在R2,R3,R4中。</p><p><b>  ; R3為中值 </b></p><p>  FILT2:MOV A,R2</p>&l

115、t;p><b>  CLR C</b></p><p><b>  SUBB A,R3</b></p><p><b>  JC FILT21</b></p><p><b>  MOV A,R2</b></p><p><b>  XCH

116、 A,R3</b></p><p><b>  MOV R2,A</b></p><p>  FILT21:MOV A,R3</p><p><b>  CLR C</b></p><p><b>  SUBB A,R4</b></p><p&g

117、t;<b>  JC FILT22</b></p><p><b>  MOV A,R4</b></p><p><b>  XCH A,R3</b></p><p><b>  XCH R4,A</b></p><p><b>  CLR C&

118、lt;/b></p><p><b>  SUBB A,R2</b></p><p>  JNC FILT22</p><p><b>  MOV A,R2</b></p><p><b>  MOV R3,A</b></p><p>  FILT

119、22:RET </p><p><b>  4.溫度傳感電路</b></p><p>  AD590測溫實驗源程序 </p><p>  ORG  0000H</p><p>  START:  MOV  SP,#60H     ;開機(jī)初始化</p><p>  MOV  P0,#0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論