2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  單片機(jī)課程設(shè)計(jì)報(bào)告</b></p><p>  題目名稱:多路數(shù)字溫度測(cè)量系統(tǒng)設(shè)計(jì) </p><p>  系: 電 </p><p>  專 業(yè): 電 </p><p>  班 級(jí):

2、 </p><p>  學(xué) 號(hào): </p><p>  學(xué)生姓名: </p><p>  指導(dǎo)教師: </p><p>  職 稱: &

3、lt;/p><p>  年 月 日</p><p><b>  一、摘要</b></p><p>  計(jì)算機(jī)技術(shù)的發(fā)展和普及提升了數(shù)據(jù)采集系統(tǒng)的技術(shù)水平。在生產(chǎn)過(guò)程中,應(yīng)用數(shù)據(jù)采集系統(tǒng)可對(duì)生產(chǎn)現(xiàn)場(chǎng)的工藝參數(shù)進(jìn)行采集、監(jiān)視和記錄,以方便人們對(duì)數(shù)據(jù)結(jié)果做出分析判斷?;趨R編語(yǔ)言的多路溫度采集與處理系統(tǒng),可以實(shí)現(xiàn)對(duì)多路不同溫度進(jìn)行實(shí)時(shí)檢測(cè),通

4、過(guò)LED顯示當(dāng)前溫度值,可以更直觀的觀察數(shù)據(jù)、更便捷的對(duì)系統(tǒng)進(jìn)行控制。</p><p>  本課題以內(nèi)置A/D轉(zhuǎn)換器的單片機(jī)STC12C5A32AD為核心,對(duì)多路的溫度進(jìn)行實(shí)時(shí)巡檢。采用多個(gè)模擬溫度傳感器LM35測(cè)量多路溫度。通過(guò)LM358構(gòu)成的同相放大器對(duì)模擬溫度信號(hào)進(jìn)行放大,然后送至單片機(jī)處理。處理后由四位LED數(shù)碼管對(duì)八路溫度予以動(dòng)態(tài)顯示。通過(guò)獨(dú)立式鍵盤可對(duì)測(cè)量進(jìn)行操控。同時(shí)該系統(tǒng)還具有報(bào)警功能,實(shí)現(xiàn)當(dāng)測(cè)量

5、溫度超出-55℃——125℃時(shí)發(fā)出報(bào)警。本文結(jié)合實(shí)際使用經(jīng)驗(yàn),介紹了LM35溫度傳感器在單片機(jī)下的硬件連接及軟件編程,并給出了流程圖。</p><p>  關(guān)鍵詞:單片機(jī);溫度傳感器;放大器;數(shù)碼管顯示;鍵盤</p><p><b>  二、總體方案設(shè)計(jì)</b></p><p><b>  方案的闡述與特點(diǎn):</b><

6、;/p><p>  本設(shè)計(jì)方案以LM35為溫度傳感器、內(nèi)置A/D轉(zhuǎn)換器單片機(jī)STC89LE516AD為控制核心組成多點(diǎn)溫度測(cè)量系統(tǒng),該系統(tǒng)包括傳感器及其放大電路、復(fù)位電路、晶振電路、報(bào)警電路、鍵盤與顯示、基準(zhǔn)電壓電路組成。</p><p>  1、本方案系統(tǒng)框圖為:</p><p>  圖1 總體系統(tǒng)框圖</p><p><b>  

7、基本工作原理:</b></p><p>  如圖1所示本設(shè)計(jì)以LM35模擬溫度傳感器對(duì)八路溫度進(jìn)行實(shí)時(shí)測(cè)量,其輸出電壓經(jīng)由LM358構(gòu)成的同相放大器放大后送至單片機(jī)的A/D輸入口。單片機(jī)對(duì)輸入信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換執(zhí)行軟件程序后,由LED數(shù)碼管顯示溫度值,每秒切換一個(gè)通道進(jìn)行輪流顯示。通過(guò)鍵盤可以隨時(shí)查看指定通道的溫度值,當(dāng)任何一路溫度的3次平均值超過(guò)設(shè)定的下限值或上限值時(shí),發(fā)出警告。</p>

8、<p><b>  3、它有如下特點(diǎn):</b></p><p> ?。?)可以監(jiān)測(cè)8路環(huán)境溫度信號(hào),可以擴(kuò)充;對(duì)8路模擬信號(hào)輸入進(jìn)行循環(huán)采集,每路連線采集三次,取平均值。</p><p> ?。?)測(cè)量范圍為-55℃~+125℃,精度為±0.5℃</p><p> ?。?)LCD液晶顯示或用4位LED數(shù)碼管進(jìn)行循環(huán)顯示,其

9、中最高位通道提示符A~H,低三位顯示實(shí)際溫度值,每秒切換一個(gè)通道進(jìn)行輪流顯示;</p><p>  (4)鍵盤控制,可隨時(shí)查看指定通道的溫度值;</p><p>  (5)可分別設(shè)定每一路的上限制和下限值,若采集平均值超過(guò)設(shè)定范圍,則對(duì)應(yīng)通道指示燈閃爍10后一直亮,指示燈閃爍是喇叭發(fā)聲,以示警告。</p><p><b>  三、系統(tǒng)硬件設(shè)計(jì)</b&

10、gt;</p><p>  本課題的整個(gè)系統(tǒng)是由傳感器及其信號(hào)放大電路、單片機(jī)、顯示電路、鍵盤電路、穩(wěn)壓電路、晶振電路、復(fù)位電路等構(gòu)成。</p><p>  3.1控制器--單片機(jī)設(shè)計(jì):</p><p>  本設(shè)計(jì)采用的單片機(jī)為STC12C5A32AD</p><p>  STC12C5A32AD單片機(jī)是單時(shí)鐘/ 機(jī)器周期(1T)的兼容805

11、1 內(nèi)核單片機(jī),是高速/ 低功耗的新一代單片機(jī),全新的流水線/ 精簡(jiǎn)指令集結(jié)構(gòu)。STC12C5A32AD單片機(jī)主要性能:</p><p>  ●高速:1個(gè)時(shí)鐘/機(jī)器周期,RISC型8051內(nèi)核,速度比普通8051快12倍</p><p>  ●工作電壓:5.5V--3.3V</p><p>  ●低功耗設(shè)計(jì):空閑模式,掉電模式(可由外部中斷喚醒)</p>

12、<p>  ●工作頻率:0~35MHz</p><p>  ●時(shí)鐘:外部晶體或內(nèi)部RC 振蕩器可選</p><p>  ●芯片內(nèi)E2PROM 功能</p><p>  ● ISP/IAP,在系統(tǒng)可編程/在應(yīng)用可編程,無(wú)需仿真器</p><p>  ● 8位8通道ADC,轉(zhuǎn)換速度可達(dá)300K/S</p><p&

13、gt;  ● 2個(gè)硬件16位定時(shí)器,兼容普通8051 的定時(shí)器。再加上2 路PCA 還可再實(shí)現(xiàn)2個(gè)16位定時(shí)器</p><p>  ●硬件看門狗(WDT)</p><p>  ●全雙工異步串行口(UART),由于STC12系列單片機(jī)是高速的8051,可再用定時(shí)器或PCA軟件實(shí)現(xiàn)多串口</p><p>  如圖3.1為STC12C5A32AD引腳圖,各引腳功能說(shuō)明如下

14、:</p><p>  圖3.1 STC12C5A32AD引腳圖</p><p><b>  ● Vcc: 電源</b></p><p><b>  ● GND: 地</b></p><p>  ● P0 口:P0口是一個(gè)8位的雙向I/O口。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問(wèn)外部程序和

15、數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。</p><p>  ● P1 口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,同時(shí)也是模擬量輸入口,可以對(duì)8路模擬量進(jìn)行模數(shù)轉(zhuǎn)換。</p><p>  ● P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口。在訪問(wèn)外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR)時(shí),P2 口送出高八位地址

16、。</p><p>  ● P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口。P3口亦作為特殊功能口使用,如表3-1所示。</p><p>  表3-1 STC12C5A32AD引腳號(hào)特殊功能</p><p>  ● RST: 復(fù)位輸入,晶振工作時(shí),RST腳持續(xù)2個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。</p><p>  ● ALE:

17、地址鎖存控制信號(hào)(ALE)是訪問(wèn)外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。</p><p>  ● XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。</p><p>  ● XTAL2:振蕩器反相放大器的輸出端。</p><p>  3.2傳感器檢測(cè)電路設(shè)計(jì):</p><p>  LM35 是由National Semicondu

18、ctor 所生產(chǎn)的溫度傳感器,其輸出電壓與攝氏溫度成正比,具有10mv/℃的靈敏度,工作溫度范圍為4V~30V;輸出阻抗為0.1Ω。LM35溫度傳感器,由于它采用內(nèi)部補(bǔ)償,所以輸出可以從0℃開始,器件有三個(gè)引腳,分別是電源負(fù)GND,電源正Vcc,信號(hào)輸出端。</p><p>  電路需要兩路運(yùn)算放大電路,所以選擇雙路運(yùn)算放大器,一路作跟隨器另一路作同向放大器,LM358 內(nèi)部包括有兩個(gè)獨(dú)立的、高增益、內(nèi)部頻率補(bǔ)償

19、的雙運(yùn)算放大器,適合于電源電壓范圍很寬的單電源使用,也適用于雙電源工作模式,它的使用范圍包括傳感放大器、直流增益模塊和其他所有可用單電源供電的使用運(yùn)算放大器的場(chǎng)合。</p><p>  圖3.2.傳感器檢測(cè)電路</p><p>  3.3顯示電路設(shè)計(jì):</p><p>  如圖3.3所示,本顯示方案采用單片機(jī)I/O口外擴(kuò)74HC573驅(qū)動(dòng)器驅(qū)動(dòng)4位LED數(shù)碼管實(shí)現(xiàn)動(dòng)

20、態(tài)顯示,所謂動(dòng)態(tài)顯示就是在任何時(shí)刻只有一位LED數(shù)碼管處于顯示狀態(tài),即單片機(jī)采用掃描的方式控制各個(gè)數(shù)碼管的輪流顯示。動(dòng)態(tài)顯示具有編程簡(jiǎn)單,占用I/O口線少的優(yōu)點(diǎn)。</p><p><b>  圖3.3顯示電路</b></p><p>  3.4鍵盤電路設(shè)計(jì):</p><p><b>  其原理圖如下:</b></p&

21、gt;<p>  本設(shè)計(jì)中由于所用鍵盤不多,所以采用獨(dú)立連接式的編程掃描方式鍵盤就能夠滿足設(shè)計(jì)要求。鍵盤接口與鍵盤程序的根本任務(wù)就是要檢測(cè)有沒有鍵按下?按下的是那個(gè)位置的鍵?鍵值是多少?在本次設(shè)計(jì)中采用了軟件掃描的方法。通過(guò)對(duì)鍵盤接口P3的查詢判斷是否有鍵按下。</p><p><b>  圖3.4 鍵盤電路</b></p><p>  3.5晶振電路設(shè)

22、計(jì):</p><p>  晶振電路是單片機(jī)的心臟,它控制著單片機(jī)的工作節(jié)奏。單片機(jī)允許的時(shí)鐘頻率是因型號(hào)而異的,其典型值為12MHZ。STC12C5A32AD內(nèi)部有一個(gè)反相振蕩放大器,XTAL1 和 XTAL2分別是該反向振蕩放大器的輸入端和輸出端。該反向放大器可配置為片內(nèi)振蕩器,石晶振蕩和陶瓷振蕩均可采用。本設(shè)計(jì)采用的晶振頻率為12MHZ。其晶振電路如圖3.5所示。此外還可使用外部時(shí)鐘。在使用外部時(shí)鐘

23、時(shí),外部時(shí)鐘必須從XTAL1輸入,而XTAL2懸空。                </p><p><b>  圖3.5晶振電路</b></p><p>  3.6復(fù)位電路的設(shè)計(jì):</p><p&g

24、t;  復(fù)位使單片機(jī)處于起始狀態(tài),并從該起始狀態(tài)開始運(yùn)行。STC12C5A32AD的RST引腳為復(fù)位端,該引腳連續(xù)保持2個(gè)機(jī)器周期(24個(gè)時(shí)鐘振動(dòng)周期)以上高電平,則可使單片機(jī)復(fù)位。復(fù)位后,只影響SFR中的內(nèi)容,內(nèi)部RAM中的數(shù)據(jù)不受影響。外部復(fù)位有上電復(fù)位和按鍵電平復(fù)位。由于單片機(jī)運(yùn)行過(guò)程中,其本身的干擾或外界干擾會(huì)導(dǎo)致出錯(cuò),此時(shí)我們可按復(fù)位鍵重新開始運(yùn)行。為了便于本設(shè)計(jì)運(yùn)行調(diào)試,復(fù)位電路采用按鍵復(fù)位方式。如圖3.6 

25、60;                 </p><p>  圖3.6 復(fù)位電路</p><p>  3.7報(bào)警電路設(shè)計(jì):</p><p>  為了實(shí)現(xiàn)多點(diǎn)溫度檢測(cè)報(bào)警系統(tǒng),本課題采用STC12C

26、5A32AD單片機(jī)作為主控制器,采用掃描的方式對(duì)多點(diǎn)溫度傳感器獲取對(duì)應(yīng)該位置的溫度值,經(jīng)處理后,如溫度不在設(shè)定的范圍內(nèi),給出報(bào)警信號(hào)。系統(tǒng)總體硬件電路圖如下所示:</p><p>  圖3.7 報(bào)警電路</p><p>  3.8 3V穩(wěn)壓電路</p><p>  為了給STC89LE516AD單片機(jī)提供精確的3V基準(zhǔn)電壓,本設(shè)計(jì)采用了LM117三端可調(diào)</

27、p><p>  正穩(wěn)壓集成電路。它的輸出電壓范圍是1.2V至37V,負(fù)載電流最大為1.5A。僅需外接兩個(gè)電阻就可以設(shè)置輸出電壓。此外它的線性調(diào)整率和負(fù)載調(diào)整率都比較好。</p><p>  圖3.8 3V穩(wěn)壓電路</p><p><b>  3.9總電路</b></p><p><b>  見附錄</b&g

28、t;</p><p><b>  四、系統(tǒng)軟件設(shè)計(jì)</b></p><p>  4.1系統(tǒng)主程序流程圖</p><p>  主程序主要實(shí)現(xiàn)系統(tǒng)的初始化,溫度數(shù)據(jù)采集與處理,鍵值處理,顯示數(shù)據(jù),報(bào)警。 </p><p>  系統(tǒng)的初始化包括寄存器的初始化(控制寄存器、堆棧、中斷寄存器等),LED顯示的初始化,輸出端口的初始

29、化,采集、累計(jì)數(shù)據(jù)的初始化。 </p><p>  圖4.1 主程序流程圖</p><p>  4.2測(cè)溫子程序的設(shè)計(jì)</p><p>  數(shù)據(jù)采樣程序功能:溫度檢測(cè)通道,控制存放數(shù)據(jù)的地址和采樣次數(shù)。數(shù)據(jù)檢測(cè)的方式是先對(duì)8個(gè)通道各采樣一次,共采集三次。采樣程序采用中斷方式。</p><p>  在設(shè)置通道初值、通道數(shù)、采樣次數(shù)和存放數(shù)據(jù)的開

30、始地址后,啟動(dòng)A/D轉(zhuǎn)換,隨后檢測(cè)標(biāo)志位狀態(tài)。標(biāo)志位被清零,標(biāo)志著本通道的A/D轉(zhuǎn)換已經(jīng)結(jié)束,在修改通道號(hào)和數(shù)據(jù)存放地址后,對(duì)下一通道繼續(xù)檢測(cè)。當(dāng)8個(gè)通道的檢測(cè)工作完成后,判斷三次采樣是否全部完成,若沒完成,則對(duì)8個(gè)通道繼續(xù)采樣,直至完成三次采樣工作。數(shù)據(jù)采樣程序流程框圖如4.2所示。</p><p>  圖4.2 測(cè)溫子程序</p><p>  4.3報(bào)警子程序設(shè)計(jì)</p>

31、<p><b>  采樣被測(cè)參數(shù)</b></p><p>  (2)比較采樣值和給定的上下限。</p><p>  (3)根據(jù)比較結(jié)果執(zhí)行相應(yīng)的處理程序。如果發(fā)現(xiàn)采樣值超過(guò)報(bào)警值,發(fā)出執(zhí)行報(bào)警程序。報(bào)警程序流程框圖4.3所示。</p><p>  4.3 報(bào)警子程序流程圖 </p><p>  4.4顯示子

32、程序設(shè)計(jì)</p><p>  四位LED數(shù)碼管進(jìn)行輪流顯示,其中最高位顯示通道提示符A—H,低三位顯示實(shí)際溫度。</p><p>  圖4.4 顯示子程序流程圖</p><p><b>  五、結(jié)論</b></p><p><b>  1、課題總結(jié)</b></p><p> 

33、 本課題主要是實(shí)現(xiàn)對(duì)溫度進(jìn)行多點(diǎn)同時(shí)測(cè)量并準(zhǔn)確顯示。整個(gè)系統(tǒng)由單片機(jī)控制,將能夠接受傳感器的數(shù)據(jù)并顯示出來(lái),可以從鍵盤輸入命令,系統(tǒng)根據(jù)命令選擇對(duì)應(yīng)的傳感器,并由驅(qū)動(dòng)電路驅(qū)動(dòng)溫度顯示,對(duì)異常情況進(jìn)行報(bào)警。</p><p><b>  2、心得</b></p><p><b>  六、參考文獻(xiàn)</b></p><p>  [

34、1]王為青, 程國(guó)剛. 單片機(jī)Keil Cx51應(yīng)用開發(fā)技術(shù)[M]. 北京: 人民郵電出版社, 2006.223-226.</p><p>  [2]方佩敏編著·智能化集成溫度傳感器原理與應(yīng)用[M].北京:電子工業(yè)出版社,2002.35-42.</p><p>  [3]張毅剛,彭喜元,彭宇.單片機(jī)原理及應(yīng)用[M].北京:高等教育出版社,2008.18-20,253-255,21

35、9-220,198-201.</p><p>  [4]劉篤人,韓保軍.傳感器及應(yīng)用技術(shù)[M].西安:西安電子科技大學(xué)出版社,2003.112-124.</p><p>  [5]童詩(shī)白. 模擬電子技術(shù)基礎(chǔ)[M].北京: 高等教育出版社, 2004. 213-216.</p><p>  [6]閻石.?dāng)?shù)字電子技術(shù)基礎(chǔ)[M].第五版.北京:高等教育出版社,2006.5

36、24-535.</p><p>  [7]閆玉德,葛龍,俞虹. 單片機(jī)微型計(jì)算機(jī)原理與設(shè)計(jì)[M].北京: 中國(guó)電力出版社,2010.112-154,197-199. </p><p>  [8] 郁有文. 傳感器原理及工程應(yīng)用[M]. 西安: 西安電子科技大學(xué)出版社, 2008.215-238.</p><p><b>  七、附錄:</b>&

37、lt;/p><p><b>  1.系統(tǒng)程序: </b></p><p>  ;****************************************************************</p><p><b>  ;常數(shù)定義</b></p><p>  ;************

38、****************************************************</p><p>  TMEL EQU 0E0H ;20ms,定時(shí)器0時(shí)間常數(shù)</p><p>  TMEH EQU 0B1H</p><p>  TMEPHEAD

39、EQU 36H</p><p>  ;****************************************************************</p><p><b>  ;工作內(nèi)存定義</b></p><p>  ;********************************************

40、********************</p><p>  BITST DATA 20H</p><p>  TIMEISOK BIT BITST.1</p><p>  TEMPONEOK BIT BITST.2</p><p>  TEMPL

41、 DATA 26H</p><p>  TEMPH DATA 27H</p><p>  TEMPHC DATA 28H</p><p>  TEMPLC DATA 29H</p><p>  ;*********

42、*******************************************************</p><p><b>  ; 引腳定義</b></p><p>  ;****************************************************************</p><p>  TEMPD

43、IN BIT P3.7</p><p>  ;****************************************************************</p><p><b>  ; 中斷向量區(qū)</b></p><p>  ;*************************************

44、***************************</p><p>  ORG 000H</p><p>  LJMP START</p><p>  ORG 00BH</p><p>  LJMP T0IT</p><p>  ;*****

45、***********************************************************</p><p><b>  ;系統(tǒng)初始化</b></p><p>  ;****************************************************************</p><p>  OR

46、G 100H</p><p>  START: MOV SP,#60H</p><p>  CLSMEM: MOV R0,#20H</p><p>  MOV R1,#60H</p><p&g

47、t;  CLSMEM1: MOV @R0,#00H</p><p>  INC R0</p><p>  DJNZ R1,CLSMEM1</p><p>  MOV TMOD,#00100001B </p>&l

48、t;p>  MOV TH0,#TIMEL</p><p>  MOV TL0,#TIMEH</p><p>  SJMP INIT</p><p>  ERROR: NOP</p><p>  LJMP START&

49、lt;/p><p><b>  NOP</b></p><p>  INIT: NOP</p><p>  SETB ET0</p><p>  SETB TR0</p><p>  SETB EA</p><

50、;p>  MOV PSW,#00H</p><p>  CLR TEMPONEOK</p><p>  LJMP MAIN</p><p>  ;****************************************************************</p><p&g

51、t;  ; 定時(shí)器0中斷服務(wù)程序</p><p>  ;****************************************************************</p><p>  T0IT: PUSH PSW</p><p>  MOV PSW,#10H</p>&

52、lt;p>  MOV TH0,#TIMEH</p><p>  MOV TL0,#TIMEL</p><p>  INC R7</p><p>  CJNE R7,#32H,T0ITI</p><p>  MOV R7,#00H</p>&l

53、t;p>  SETB TIMEISOK</p><p>  TOIT1: POP PSW</p><p><b>  RETI</b></p><p>  ;*************************************************************

54、***</p><p><b>  ; 主程序</b></p><p>  ;****************************************************************</p><p>  MAIN: LCALL LM35_1</p><p>  

55、JNB TIME1SOK,MAIN</p><p>  CLR TIME1SOK</p><p>  JNB TEMPONEOK,MAIN2</p><p>  LCALL READTEMP1</p><p>  LCALL CONVTEMP</p&

56、gt;<p>  LCALL LM35_1</p><p>  MAIN2: LCALL READTEMP</p><p>  SETB TEMPONEOK</p><p>  LJMP MAIN</p><p>  ;************

57、****************************************************</p><p><b>  ;子程序區(qū)</b></p><p>  ;****************************************************************</p><p>  ; RESETL

58、M35</p><p>  ;****************************************************************</p><p>  INILM35: SETB TEMPDIN</p><p><b>  NOP </b></p><p><

59、;b>  NOP</b></p><p>  CLR TEMPDIN</p><p>  MOV R6,#0A0H</p><p>  DJNZ R6,$</p><p>  MOV R6,#0A0H</p><p>  DJNZ

60、 R6,$</p><p>  SETB TEMPDIN</p><p>  MOV R6,#32H</p><p>  DJNZ R6,$</p><p>  MOV R6,#3CH</p><p>  LOOPLM35:

61、 MOV C,TEMPDIN</p><p>  JC INILM35UT</p><p>  DJNZ R6,LOOPLM35</p><p>  MOV R6,#064H</p><p>  DJNZ R6,$</p><p&g

62、t;  SJMP INILM35</p><p><b>  RET</b></p><p><b>  ;</b></p><p>  INILM35UT: SETB TEMPDIN</p><p><b>  RET</b><

63、/p><p>  ; ****************************************************************</p><p>  ; 讀LM35的程序,從LM35中讀出一個(gè)字節(jié)的數(shù)據(jù)</p><p>  ; *******************************************************

64、*********</p><p>  READLM35: MOV R7,#08H</p><p>  SETB TEMPDIN</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  

65、READLM35LOOP: CLR TEMPDIN</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  SETB TEMPDIN</p>

66、<p>  MOV R6,#07H</p><p>  DJNZ R6,$</p><p>  MOV C,TEMPDIN</p><p>  MOV R6,#3CH</p><p>  DJNZ R6,$</p><p>  RRC

67、 A</p><p>  SETB TEMPDIN</p><p>  DJNZ R7,READLM35LOOP</p><p>  MOV R6,#3CH</p><p>  DJNZ R6,$</p><p><b>  RET</b></

68、p><p>  ; ****************************************************************</p><p>  ; 寫LM35的程序,從LM35中寫一個(gè)字節(jié)的數(shù)據(jù)</p><p>  ; ************************************************************

69、****</p><p>  WRITELM35: MOV R7,#08H</p><p>  SETB TEMPDIN</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  WRI

70、TELM35LOP: CLR TEMPDIN</p><p>  MOV R6,#07H</p><p>  DJNZ R6,$</p><p>  RRC A</p><p>  MOV TEMPDIN,C</p><p>  M

71、OV R6,#34H</p><p>  DJNZ R6,$</p><p>  SETB TENPDIN</p><p>  DJNZ R7,WRITELM35LOP</p><p><b>  RET</b></p><p>  

72、; ****************************************************************</p><p>  ; READ TEMP</p><p>  ; ****************************************************************</p><p>  RE

73、ADTEMP: LCALL INITELM35</p><p>  MOV A,#0CCH</p><p>  LCALL WRITELM35</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p&g

74、t;  MOV A,#44H</p><p>  LCALL WRITELM35</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p><b>  RET</b></p><p>  READT

75、EMP1: LCALL INILM35</p><p>  MOV A,#0CCH</p><p>  LCALL WRITELM35</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p&g

76、t;  MOV A,#0BEH</p><p>  LCALL WRITELM35</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p>  MOV R5,#09H</p><p>  MOV

77、 R0,#TEMPHEAD</p><p>  MOV B,#00H</p><p>  READTEMP2: LCALL READLM35</p><p>  MOV @R0,A</p><p>  INC R0</p><p>

78、  READTEMP21: LCALL CRC8CAL</p><p>  DJNZ R5,READTEMP2</p><p>  MOV A,B</p><p>  JNZ READTEMPOUT</p><p>  MOV A,TEMPHEA

79、D+0</p><p>  MOV TEMPL,A</p><p>  MOV A,TEMPHEAD+1</p><p>  MOV TEMPH,A</p><p>  READTEMPOUT: RET</p><p>  ; **************

80、**************************************************</p><p>  ; 處理溫度BCD碼子程序</p><p>  ; ****************************************************************</p><p>  CONVTEAMP: M

81、OV A,TEMPH</p><p>  ANL A,#80H</p><p>  JZ TEMPC1</p><p>  CLR C</p><p>  MOV A,TEMPL</p><p>  CPL

82、 A</p><p>  ADD A,#01H</p><p>  MOV TEMPL,A</p><p>  MOV A,TEMPH</p><p>  CPL A</p><p>  ADDC A,

83、#00H</p><p>  MOV TEMPH,A</p><p>  MOV TEMPHC,#0BH</p><p>  SJMP TEMPCH</p><p>  TEMPC1: MOV TEMPHC,#0AH</p>

84、<p>  TEMPC11: MOV A,TEMPHC</p><p>  SWAP A</p><p>  MOV TEMPHC,A</p><p>  MOV A,TEMPL</p><p>  ANL

85、 A,#0FH</p><p>  MOV DPTR,#TEMPDOTTAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV TEMPLC,A</p><p>  MOV A,TEMPL</p>&

86、lt;p>  ANL A,#0F0H</p><p>  SWAP A</p><p>  MOV TEMPL,A</p><p>  MOV A,TEMPH</p><p>  ANL A,#0FH<

87、/p><p>  SWAP A</p><p>  ORL A,TEMPL</p><p>  LCALL HEX2BCD1</p><p>  MOV TEMPL,A</p><p>  ANL

88、 A,#0F0H</p><p>  SWAP A</p><p>  ORL A,TEMPHC</p><p>  MOV TEMPHC,A</p><p>  MOV A,TEMPL</p><p> 

89、 ANL A,#0FH</p><p>  SWAP A</p><p>  ORL A,TEMPLC</p><p>  MOV TEMPLC,A</p><p>  MOV A,R7</p>&l

90、t;p>  JZ TEMPC12</p><p>  ANL A,#0FH</p><p>  SWAP A</p><p>  MOV R7,A</p><p>  MOV A,TEMPHC</p>

91、;<p>  ANL A,#0FH</p><p>  ORL A,R7</p><p>  MOV TEMPHC,A</p><p>  TEMPC12: RET</p><p>  ; **********************

92、******************************************</p><p>  ; 小數(shù)部分碼表</p><p>  ; ****************************************************************</p><p>  TEMPDOTTAB: DB 00H, 01H,

93、01H, 02H, 03H, 03H, 04H,04H,05H,06H</p><p>  DB 06H,07H,08H,09H,09H</p><p>  ; ****************************************************************</p><p>  ; 顯示區(qū)BCD碼溫度值刷新子程序</p

94、><p>  ; ****************************************************************</p><p>  LMBCD: MOV A,TEMPLC</p><p>  ANL A,#0FH</p><p>  MOV

95、 70H,A</p><p>  MOV A,TEMPLC</p><p>  SWAP A</p><p>  ANL A,#0FH</p><p>  MOV 71H,A</p><p>  MOV A,TEMPHC&l

96、t;/p><p>  ANL A,#0FH</p><p>  MOV 72H,A</p><p>  MOV A,TEMPHC</p><p>  SWAP A</p><p>  ANL A,#0FH</p>&

97、lt;p>  MOV 73H,A</p><p>  MOV A,TEMPHC</p><p>  ANL A,#0F0H</p><p>  CJNZ A,#010H,DISPBCD0</p><p>  SJMP DISPBCD2&l

98、t;/p><p>  LMBCD0: MOV A,TEMPHC</p><p>  ANL A,#0FH</p><p>  JNZ DISPBCD2</p><p>  MOV A,TEMPHC</p><p>  

99、SWAP A</p><p>  ANL A,#0FH</p><p>  MOV 73H,#0AH</p><p>  MOV 72H,A</p><p>  LMBCD2: RET</p><p>  ; *****

100、**********************************************************</p><p>  ; 顯示子程序</p><p>  ; ****************************************************************</p><p>  ; 顯示數(shù)據(jù)在70H—7

101、3H單元內(nèi),用4位LED共陽(yáng)數(shù)碼管顯示,P1口輸出段碼數(shù)據(jù),;P3口作掃描控制,每個(gè)LED數(shù)碼管亮1ms時(shí)間再逐位循環(huán)。</p><p>  LM1: MOV R1,#70H</p><p>  MOV R5,#0FEH</p><p>  PLAY: MOV

102、 P1,#0FFH</p><p>  MOV P3,A</p><p>  MOV A,@R1</p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV

103、 P1,A</p><p>  MOV A,R5</p><p>  JB ACC.1,LOOP5</p><p>  CLR P1.7</p><p>  LOOP5: LCALL DLIMS</p>

104、<p>  INC R1</p><p>  MOV A,R5</p><p>  JNB ACC.3,ENDOUT</p><p>  RL A</p><p>  MOV R5,A</p>

105、<p>  AJMP PLAY</p><p>  ENDOUT: MOV P1,#0FEH</p><p>  MOV P3,#0FEH</p><p><b>  RET</b></p><p>  TAB:

106、 DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0BFH</p><p>  ;共陽(yáng)段碼表 “0” “1” “2” “3” “4” “5” “6” “7” “8” “9” “不亮” “—” </p><p>  DL1MS: MOV R6,#14H</p><

107、;p>  DL1: MOV R7,#19H</p><p>  DL2: DJNZ R7,DL2</p><p>  DJNZ R6,DL1</p><p><b>  RET</b></p>&

108、lt;p>  ; ****************************************************************</p><p>  ; 單字節(jié)十六進(jìn)制轉(zhuǎn)BCD</p><p>  ; ****************************************************************</p><p&g

109、t;  HEX2BCD1: MOV B,#064H</p><p>  DIV AB</p><p>  MOV R7,A</p><p>  MOV A,#0AH</p><p>  XCH A,B</p><p>  DIV

110、 AB</p><p>  SWAP A</p><p>  ORL A,B</p><p><b>  RET</b></p><p>  ; ****************************************************************</

111、p><p>  ; Calculate CRC—8 Values. </p><p>  ; ****************************************************************</p><p>  CRC8CAL: PUSH ACC</p><p> 

112、 MOV R7,#08H</p><p>  CRC8LOOP1: XRL A,B</p><p>  RRC A</p><p>  MOV A,B</p><p>  JNC CRC8LOOP2</p>

113、<p>  XRL A,#18H</p><p>  CRC8LOOP2: RRC A</p><p>  MOV B,A</p><p>  POP ACC</p><p>  RR A</p>

114、<p>  PUSH ACC</p><p>  DJNZ R7,CRC8LOOP1</p><p>  POP ACC</p><p><b>  RET</b></p><p><b>  END </b></p&

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論