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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  河北建筑工程學(xué)院</b></p><p><b>  單片機(jī)課程設(shè)計(jì)報(bào)告</b></p><p>  題目名稱(chēng): 單片機(jī)的多路溫度測(cè)量系統(tǒng)設(shè)計(jì) </p><p>  系: 電氣工程系 </p><p> 

2、 專(zhuān) 業(yè): 建筑電氣與智能化 </p><p>  班 級(jí): 電智102 </p><p>  學(xué) 號(hào): 2010318202 </p><p>  學(xué)生姓名:

3、 </p><p>  指導(dǎo)教師: </p><p>  職 稱(chēng): 講師 </p><p>  2013年 03月 03日</p><p><b>  目錄</b><

4、/p><p>  一、摘要·································

5、;··············2</p><p>  二、系統(tǒng)總體方案設(shè)計(jì) ················

6、3;·················2 </p><p>  1 系統(tǒng)框圖結(jié)構(gòu)············

7、3;···································2 2

8、 設(shè)計(jì)思路···································

9、3;················2</p><p>  三、系統(tǒng)硬件設(shè)計(jì)···············

10、························3</p><p>  1 控制器——單片機(jī)·······

11、;····································

12、83;·3 2 傳感器電路設(shè)計(jì)································&

13、#183;··············5 3 復(fù)位電路設(shè)計(jì)···················&

14、#183;·····························6 4 晶振電路設(shè)計(jì)····&

15、#183;····································

16、;········7 5 LED顯示電路設(shè)計(jì)·························&#

17、183;···················8 6 鍵盤(pán)電路設(shè)計(jì)··············&

18、#183;··································8 7 報(bào)

19、警電路設(shè)計(jì)····································

20、;·············9 8 5v穩(wěn)壓電路設(shè)計(jì)····················

21、83;···············</p><p>  四、系統(tǒng)軟件設(shè)計(jì)················

22、·······················10</p><p>  1 系統(tǒng)主程序流程圖·······

23、3;····································&#

24、183;11</p><p>  2 系統(tǒng)子程序流程圖······························

25、···············12</p><p>  3 鍵盤(pán)程序設(shè)計(jì)················

26、·································12</p><p>

27、;  五、結(jié)論 ···································&#

28、183;··········13</p><p>  1 課題總結(jié)····················

29、3;································13 2 心得體會(huì)··

30、;····································

31、83;··············13</p><p>  六、參考文獻(xiàn)·················

32、··························13</p><p>  七. 附錄·····

33、3;····································&#

34、183;····14</p><p>  1.系統(tǒng)程序···························

35、;··························14</p><p>  2. 總電路圖·····&

36、#183;····································

37、;···········25</p><p><b>  一、摘 要</b></p><p>  該設(shè)計(jì)主要應(yīng)用于多路數(shù)字溫度測(cè)量,以AT89C51單片機(jī)系統(tǒng)為核心,采用LM35溫度傳感器。LM35是一種可組網(wǎng)的高精度模擬式溫度傳感器,它具有單總線的獨(dú)特優(yōu)點(diǎn),

38、可以使用戶(hù)輕松地組建起傳感器網(wǎng)絡(luò),并可使多路溫度測(cè)量電路變得簡(jiǎn)單、可靠。本文結(jié)合實(shí)際使用經(jīng)驗(yàn),介紹了DS18B20數(shù)字溫度傳感器在單片機(jī)下的硬件連接及軟件編程,并給出了軟件流程圖。</p><p>  主題詞: AT89C51單片機(jī)、溫度傳感器、軟件流程圖、LM35。</p><p><b>  二、總體方案設(shè)計(jì)</b></p><p><

39、;b>  方案的闡述與特點(diǎn):</b></p><p>  本設(shè)計(jì)是以ST89LE516AD單片機(jī)為控制核心、LM35為傳感器組成多路溫度測(cè)試系統(tǒng),該系統(tǒng)包括傳感器電路、鍵盤(pán)與顯示電路、串口通信電路等。它具有獨(dú)特的單總線接口,僅需要占用一個(gè)通用I/O端口即可完成與微處理器的通信。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。</p><p><b>  

40、1、系統(tǒng)框圖:</b></p><p><b>  2.設(shè)計(jì)思路:</b></p><p>  本設(shè)計(jì)方案采用主從分布式思想,由一位上位機(jī)(pc微型計(jì)算機(jī)),下位機(jī)(單片機(jī))多路溫度數(shù)據(jù)采集,組成兩級(jí)分布式多路溫度測(cè)量的巡回檢測(cè)系統(tǒng)。該系統(tǒng)采用RS-232串行通訊標(biāo)準(zhǔn),通過(guò)上位機(jī)(PC)控制下位機(jī)(單片機(jī))進(jìn)行現(xiàn)場(chǎng)溫度采集。溫度值既可以送回主控PC進(jìn)行數(shù)據(jù)

41、處理,由顯示器顯示。也可以由下位機(jī)單獨(dú)工作,實(shí)時(shí)顯示當(dāng)前各點(diǎn)的溫度值,對(duì)各點(diǎn)進(jìn)行控制。</p><p>  下位機(jī)采用的是單片機(jī)基于數(shù)字溫度傳感器DS18B20的系統(tǒng)。DS18B20利用單總線的特點(diǎn)可以方便的實(shí)現(xiàn)多點(diǎn)溫度的測(cè)量,輕松地組建傳感器網(wǎng)絡(luò),系統(tǒng)的抗干擾性好、設(shè)計(jì)靈活、方便,而且適合于在惡劣的環(huán)境下進(jìn)行現(xiàn)場(chǎng)溫度測(cè)量。</p><p><b>  3、它有如下特點(diǎn):<

42、/b></p><p> ?。?)獨(dú)特的單線接口,既可通過(guò)串行口線,也可通過(guò)其它I/O口線與微機(jī)接口,無(wú)需變換其他電路,直接輸出被測(cè)溫度值;</p><p>  (2)多點(diǎn)能力使分布式溫度檢測(cè)應(yīng)用得以簡(jiǎn)化;</p><p> ?。?)不需要外部元件;</p><p>  (4)既可用數(shù)據(jù)線供電,也可采用外部電源供電;</p>

43、<p>  (5)不需備份電源;</p><p> ?。?)通過(guò)編程可實(shí)現(xiàn)9~12位的數(shù)字讀數(shù)方式;</p><p> ?。?)用戶(hù)可定義非易失性的溫度告警設(shè)置;</p><p>  (8)警告搜索命令能識(shí)別和尋址溫度在編定的極限之外的器件(溫度警告情況);</p><p> ?。?)應(yīng)用范圍包括恒溫控制、工業(yè)系統(tǒng)、消費(fèi)類(lèi)產(chǎn)品、

44、溫度計(jì)或任何熱敏系統(tǒng)。</p><p>  以上特性使得LM35非常適用于構(gòu)建高精度、多點(diǎn)溫度測(cè)量系統(tǒng)。</p><p><b>  三、硬件設(shè)計(jì)</b></p><p>  本課題的整個(gè)系統(tǒng)是由單片機(jī)、顯示電路、鍵盤(pán)電路、驅(qū)動(dòng)電路、串口通信等構(gòu)成。</p><p>  1控制器--單片機(jī)的設(shè)計(jì):</p>

45、<p>  本設(shè)計(jì)采用的單片機(jī)為STC12C5A32AD</p><p>  STC12C5A32AD單片機(jī)是單時(shí)鐘/ 機(jī)器周期(1T)的兼容8051 內(nèi)核單片機(jī),是高速/ 低功耗的新一代單片機(jī),全新的流水線/ 精簡(jiǎn)指令集結(jié)構(gòu)。STC12C5A32AD單片機(jī)主要性能:</p><p>  ●高速:1個(gè)時(shí)鐘/機(jī)器周期,RISC型8051內(nèi)核,速度比普通8051快12倍</p&

46、gt;<p>  ●工作電壓:5.5V--3.3V</p><p>  ●低功耗設(shè)計(jì):空閑模式,掉電模式(可由外部中斷喚醒)</p><p>  ●工作頻率:0~35MHz</p><p>  ●時(shí)鐘:外部晶體或內(nèi)部RC 振蕩器可選</p><p>  ●芯片內(nèi)E2PROM 功能</p><p>  ●

47、ISP/IAP,在系統(tǒng)可編程/在應(yīng)用可編程,無(wú)需仿真器</p><p>  ● 8位8通道ADC,轉(zhuǎn)換速度可達(dá)300K/S</p><p>  ● 2個(gè)硬件16位定時(shí)器,兼容普通8051 的定時(shí)器。再加上2 路PCA 還可再實(shí)現(xiàn)2個(gè)16位定時(shí)器</p><p>  ●硬件看門(mén)狗(WDT)</p><p>  ●全雙工異步串行口(UART),由

48、于STC12系列單片機(jī)是高速的8051,可再用定時(shí)器或PCA軟件實(shí)現(xiàn)多串口</p><p>  圖3-1 STC12C5A32AD</p><p><b>  ● Vcc: 電源</b></p><p><b>  ● GND: 地</b></p><p>  ● P0 口:P0口是一個(gè)8位的雙向I

49、/O口。對(duì)P0端口寫(xiě)“1”時(shí),引腳用作高阻抗輸入。當(dāng)訪問(wèn)外部程序和數(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ù)

50、據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR)時(shí),P2 口送出高八位地址。</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ī)器周期高電平將使單片

51、機(jī)復(fù)位。</p><p>  ● ALE:地址鎖存控制信號(hào)(ALE)是訪問(wèn)外部程序存儲(chǔ)器時(shí),鎖存低8 位地址的輸出脈沖。</p><p>  ● XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。</p><p>  ● XTAL2:振蕩器反相放大器的輸出端。</p><p>  2溫度傳感器--LM35的連線圖:</p>

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

53、另一路作同向放大器,LM358 內(nèi)部包括有兩個(gè)獨(dú)立的、高增益、內(nèi)部頻率補(bǔ)償?shù)碾p運(yùn)算放大器,適合于電源電壓范圍很寬的單電源使用,也適用于雙電源工作模式,它的使用范圍包括傳感放大器、直流增益模塊和其他所有可用單電源供電的使用運(yùn)算放大器的場(chǎng)合。</p><p>  圖3-2 溫度傳感器LM35</p><p>  3 常用的上電復(fù)位且開(kāi)關(guān)復(fù)位電路</p><p>  當(dāng)復(fù)

54、位鍵KEY5被按下時(shí),電容C3開(kāi)始充電,按鍵放開(kāi)時(shí),C3開(kāi)始放電,電流經(jīng)電阻R4流向接地端,此時(shí)單片機(jī)復(fù)位端RST電平被拉高,當(dāng)放電時(shí)間常數(shù)C3×R4 > 2Tcy(Tcy時(shí)為機(jī)器周期)即給單機(jī)機(jī)持續(xù)兩個(gè)機(jī)器周期的高電平時(shí)單片機(jī)被復(fù)位.</p><p>  圖3-3 復(fù)位開(kāi)關(guān)電路</p><p><b>  4晶振電路設(shè)計(jì):</b></p>

55、<p><b>  圖3-4 晶振電路</b></p><p>  STC89LE516AD單片機(jī)串口主要有兩個(gè)數(shù)據(jù)緩沖寄存器SBUF和一個(gè)輸入移位寄存器組成,其內(nèi)部還有一個(gè)串行控制寄存器SCON和一個(gè)波特率發(fā)生器。接收緩沖器與發(fā)送緩沖器占用同一個(gè)地址99H,其名稱(chēng)亦同樣為SBUF。</p><p>  5 LED顯示電路設(shè)計(jì)</p>&l

56、t;p>  本顯示方案采用單片機(jī)I/O口串行擴(kuò)展74lLS64驅(qū)動(dòng)器驅(qū)動(dòng)4位LED數(shù)碼管實(shí)現(xiàn)靜態(tài)顯示,所謂靜態(tài)顯示就是在任何時(shí)刻所有LED數(shù)碼管處于顯示狀態(tài),靜態(tài)顯示具有編程簡(jiǎn)單,亮度高,無(wú)閃爍,占用CPU資源少等優(yōu)點(diǎn)。</p><p>  圖3-5 LED顯示電路</p><p><b>  6鍵盤(pán)電路設(shè)計(jì)</b></p><p>&l

57、t;b>  其原理圖如下:</b></p><p><b>  圖3-6 鍵盤(pán)電路</b></p><p>  本課題使用行列掃描方式,在單片機(jī)的P1口上連接上4*4的鍵盤(pán),單片機(jī)掃描鍵盤(pán),如果有鍵按下,單片機(jī)會(huì)根據(jù)鍵碼執(zhí)行相應(yīng)的程序,使整個(gè)系統(tǒng)的功能更加完善。</p><p><b>  7報(bào)警電路設(shè)計(jì)</b

58、></p><p>  為了實(shí)現(xiàn)多點(diǎn)溫度檢測(cè)報(bào)警系統(tǒng),本課題采用AT89C51單片機(jī)作為主控制器,采用掃描的方式對(duì)多點(diǎn)LM35溫度傳感器獲取對(duì)應(yīng)該位置的溫度值,經(jīng)處理后通過(guò)串口可以立即發(fā)送到上位機(jī),如溫度不在設(shè)定的范圍內(nèi),給出報(bào)警信號(hào)。系統(tǒng)總體硬件電路圖如下所示:</p><p><b>  圖3-7 報(bào)警電路</b></p><p>&

59、lt;b>  8、 5V穩(wěn)壓電路</b></p><p>  為了給STC89LE516AD單片機(jī)提供精確的5V基準(zhǔn)電壓,本設(shè)計(jì)采用了LM117三端可調(diào)正穩(wěn)壓集成電路。它的輸出電壓范圍是1.2V至37V,負(fù)載電流最大為1.5A。僅需外接兩個(gè)電阻就可以設(shè)置輸出電壓。此外它的線性調(diào)整率和負(fù)載調(diào)整率都比較好。</p><p>  圖3.7 5V穩(wěn)壓電路</p>&

60、lt;p><b>  四、軟件設(shè)計(jì)</b></p><p>  該軟件設(shè)計(jì)主要包括系統(tǒng)程序和流程圖,根據(jù)整個(gè)系統(tǒng)的要求,完成溫度的測(cè)量與控制必須經(jīng)過(guò)以下幾個(gè)步驟:?jiǎn)纹瑱C(jī)接受傳感器的溫度信號(hào),并通過(guò)MAX7219驅(qū)動(dòng)顯示出來(lái),單片機(jī)掃描鍵盤(pán),接受控制信號(hào),并將溫度顯示出來(lái),若溫度不在范圍內(nèi)則發(fā)出報(bào)警。</p><p><b>  1系統(tǒng)主程序流程圖<

61、;/b></p><p>  圖4-1 主程序流圖</p><p><b>  2子程序流程圖</b></p><p>  圖4-2 子程序流圖</p><p><b>  3鍵盤(pán)程序設(shè)計(jì)</b></p><p>  根據(jù)設(shè)計(jì)要求,應(yīng)采用4*4的鍵盤(pán)電路結(jié)構(gòu),P1.0-

62、 P1.3接四條行線,P1.4-P1.7接四條列線,整個(gè)系統(tǒng)的功能可以利用16個(gè)按鍵將系統(tǒng)完善化、系統(tǒng)化,對(duì)于鍵盤(pán)各鍵的功能如下圖所示:</p><p>  表4-1 鍵盤(pán)程序設(shè)計(jì)</p><p><b>  五、結(jié)論</b></p><p><b>  1、課題總結(jié)</b></p><p>  本

63、課題主要是實(shí)現(xiàn)對(duì)溫度進(jìn)行多點(diǎn)同時(shí)測(cè)量并準(zhǔn)確顯示。整個(gè)系統(tǒng)由單片機(jī)控制,要能夠接受傳感器的數(shù)據(jù)并顯示出來(lái),可以從鍵盤(pán)輸入命令,系統(tǒng)根據(jù)命令選擇對(duì)應(yīng)的傳感器,并由驅(qū)動(dòng)電路驅(qū)動(dòng)溫度顯示,對(duì)異常情況進(jìn)行報(bào)警。</p><p><b>  2、心得體會(huì)</b></p><p>  本次設(shè)計(jì)過(guò)程中通過(guò)老師的引導(dǎo)和自己查閱部分專(zhuān)業(yè)書(shū)籍,我基本了解了單片機(jī)設(shè)計(jì)的流程和部分注意事項(xiàng),并

64、大致掌握了protel的使用。但是也發(fā)現(xiàn)很多意想不到的問(wèn)題,比如編程能力差,工程實(shí)踐能力差,設(shè)計(jì)細(xì)節(jié)沒(méi)有注意到,基礎(chǔ)理論掌握不扎實(shí),應(yīng)用與理論嚴(yán)重脫節(jié)。但是通過(guò)這次課程的設(shè)計(jì),將課本的知識(shí)實(shí)際應(yīng)用,擺脫考試的局限,鍛煉自己的解決問(wèn)題的能力,獨(dú)立思考能力。本課題使我熟悉了單片機(jī)設(shè)計(jì)原則,對(duì)51系列單片機(jī)內(nèi)部構(gòu)造、與其它芯片的接口技術(shù)及其工作情況有了更進(jìn)一步了解,雖然是很簡(jiǎn)單的運(yùn)用,但比為了考試而瞬時(shí)記憶的知識(shí)牢固多了,工作需要獨(dú)立解決問(wèn)題

65、的的能力,所以這種機(jī)會(huì)還是多多益善。</p><p><b>  六、考文獻(xiàn)參</b></p><p>  [1]周慈航著·單片機(jī)程序設(shè)計(jì)基礎(chǔ)[M]·北京:北京航空航天大學(xué)出版社,2003</p><p>  [2]方佩敏編著·智能化集成溫度傳感器原理與應(yīng)用[M]·北京:電子工業(yè)出版社,2002</

66、p><p>  [3]張毅剛主編·單片機(jī)原理及應(yīng)用[M]·北京:高等教育出版社,2008</p><p>  [4]李道玲,李玲,朱艷編著·傳感器電路分析與設(shè)計(jì)[M]·武漢:武漢大學(xué)出版社,2003</p><p>  [5]劉篤人,韓保軍編著。傳感器及應(yīng)用技術(shù)[M]·西安:西安電子科技大學(xué)出版社,2003</p&

67、gt;<p>  [6]陳小忠等,單片機(jī)接口技術(shù)實(shí)用子程序·北京:人民郵電出版社,2005</p><p>  [7]李群芳編著 ,單片機(jī)原理、接口及應(yīng)用—嵌入式系統(tǒng)計(jì)數(shù)基礎(chǔ)·北京:清華大學(xué)出版社</p><p>  [8]方佩敏編著·智能化集成溫度傳感器原理與應(yīng)用[M]·北京:電子工業(yè)出版社,2002</p><p

68、><b>  七、附錄</b></p><p><b>  1系統(tǒng)源程序</b></p><p>  ;****************************************************************</p><p><b>  ;常數(shù)定義</b></p&g

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

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

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

72、lt;/p><p>  TEMPL DATA 26H</p><p>  TEMPH DATA 27H</p><p>  TEMPHC DATA 28H</p><p>  TEMPLC DATA 29H</

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

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

75、*******************************************************</p><p>  ORG 000H</p><p>  LJMP START</p><p>  ORG 00BH</p><p>  LJMP T0IT&

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

77、***</p><p>  ORG 100H</p><p>  START: MOV SP,#60H</p><p>  CLSMEM: MOV R0,#20H</p><p>  MOV

78、 R1,#60H</p><p>  CLSMEM1: MOV @R0,#00H</p><p>  INC R0</p><p>  DJNZ R1,CLSMEM1</p><p>  MOV TMOD,#0

79、0100001B </p><p>  MOV TH0,#TIMEL</p><p>  MOV TL0,#TIMEH</p><p>  SJMP INIT</p><p>  ERROR: NOP</p>&l

80、t;p>  LJMP START</p><p><b>  NOP</b></p><p>  INIT: NOP</p><p>  SETB ET0</p><p>  SETB TR0</p><p>  SE

81、TB EA</p><p>  MOV PSW,#00H</p><p>  CLR TEMPONEOK</p><p>  LJMP MAIN</p><p>  ;*******************************************************

82、*********</p><p>  ; 定時(shí)器0中斷服務(wù)程序</p><p>  ;****************************************************************</p><p>  T0IT: PUSH PSW</p><p>  MOV

83、 PSW,#10H</p><p>  MOV TH0,#TIMEH</p><p>  MOV TL0,#TIMEL</p><p>  INC R7</p><p>  CJNE R7,#32H,T0ITI</p><p>  MOV

84、 R7,#00H</p><p>  SETB TIMEISOK</p><p>  TOIT1: POP PSW</p><p><b>  RETI</b></p><p>  ;*********************************

85、*******************************</p><p><b>  ; 主程序</b></p><p>  ;****************************************************************</p><p>  MAIN: LCALL D

86、ISP1</p><p>  JNB TIME1SOK,MAIN</p><p>  CLR TIME1SOK</p><p>  JNB TEMPONEOK,MAIN2</p><p>  LCALL READTEMP1</p><p>  L

87、CALL CONVTEMP</p><p>  LCALL DISPBCD</p><p>  LCALL DISP1</p><p>  MAIN2: LCALL READTEMP</p><p>  SETB TEMPONEOK</p>

88、;<p>  LJMP MAIN</p><p>  ;****************************************************************</p><p>  ;****************************************************************</p>

89、<p><b>  ;子程序區(qū)</b></p><p>  ;****************************************************************</p><p>  ; RESET DS18B20</p><p>  ;*********************************

90、*******************************</p><p>  INITDS1820: SETB TEMPDIN</p><p><b>  NOP </b></p><p><b>  NOP</b></p><p>  CLR

91、TEMPDIN</p><p>  MOV R6,#0A0H</p><p>  DJNZ R6,$</p><p>  MOV R6,#0A0H</p><p>  DJNZ R6,$</p><p>  SETB TEMPDIN<

92、/p><p>  MOV R6,#32H</p><p>  DJNZ R6,$</p><p>  MOV R6,#3CH</p><p>  LOOP1820: MOV C,TEMPDIN</p><p>  JC

93、 INITDS1820OUT</p><p>  DJNZ R6,LOOP1820</p><p>  MOV R6,#064H</p><p>  DJNZ R6,$</p><p>  SJMP INITDS1820</p><p><b

94、>  RET</b></p><p><b>  ;</b></p><p>  INITDS1820OUT: SETB TEMPDIN</p><p><b>  RET</b></p><p>  ; *************************

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

96、20: MOV R7,#08H</p><p>  SETB TEMPDIN</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  READDS1820LOOP: CLR TEMPDIN<

97、;/p><p><b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  SETB TEMPDIN</p><p>  MOV R6,#07H</p&

98、gt;<p>  DJNZ R6,$</p><p>  MOV C,TEMPDIN</p><p>  MOV R6,#3CH</p><p>  DJNZ R6,$</p><p>  RRC A</p><p>  SETB

99、TEMPDIN</p><p>  DJNZ R7,READDS1820LOOP</p><p>  MOV R6,#3CH</p><p>  DJNZ R6,$</p><p><b>  RET</b></p><p>  ; **************

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

101、RITEDS1820: MOV R7,#08H</p><p>  SETB TEMPDIN</p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  WRITEDS1820LOP: CLR

102、 TEMPDIN</p><p>  MOV R6,#07H</p><p>  DJNZ R6,$</p><p>  RRC A</p><p>  MOV TEMPDIN,C</p><p>  MOV R6,#34H</p

103、><p>  DJNZ R6,$</p><p>  SETB TENPDIN</p><p>  DJNZ R7,WRITEDS1820LOP</p><p><b>  RET</b></p><p>  ; ********************

104、********************************************</p><p>  ; READ TEMP</p><p>  ; ****************************************************************</p><p>  READTEMP: LCALL

105、 INITEDS1820</p><p>  MOV A,#0CCH</p><p>  LCALL WRITEDS1820</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p>  MOV A,#

106、44H</p><p>  LCALL WRITEDS1820</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p><b>  RET</b></p><p>  READTEMP1: LCA

107、LL INITDS1820</p><p>  MOV A,#0CCH</p><p>  LCALL WRITEDS1820</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p>  MOV

108、 A,#0BEH</p><p>  LCALL WRITEDS1820</p><p>  MOV R6,#34H</p><p>  DJNZ R6,$</p><p>  MOV R5,#09H</p><p>  MOV R0,

109、#TEMPHEAD</p><p>  MOV B,#00H</p><p>  READTEMP2: LCALL READDS1820</p><p>  MOV @R0,A</p><p>  INC R0</p><p>  READT

110、EMP21: LCALL CRC8CAL</p><p>  DJNZ R5,READTEMP2</p><p>  MOV A,B</p><p>  JNZ READTEMPOUT</p><p>  MOV A,TEMPHEAD+0<

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

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

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

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

115、;/p><p>  MOV TEMPH,A</p><p>  MOV TEMPHC,#0BH</p><p>  SJMP TEMPCH</p><p>  TEMPC1: MOV TEMPHC,#0AH</p><p&g

116、t;  TEMPC11: MOV A,TEMPHC</p><p>  SWAP A</p><p>  MOV TEMPHC,A</p><p>  MOV A,TEMPL</p><p>  ANL A,#

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

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

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

120、0F0H</p><p>  SWAP A</p><p>  ORL A,TEMPHC</p><p>  MOV TEMPHC,A</p><p>  MOV A,TEMPL</p><p>  ANL

121、 A,#0FH</p><p>  SWAP A</p><p>  ORL A,TEMPLC</p><p>  MOV TEMPLC,A</p><p>  MOV A,R7</p><p>

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

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

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

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

126、lt;p>  ; ****************************************************************</p><p>  DISPBCD: MOV A,TEMPLC</p><p>  ANL A,#0FH</p><p>  MOV 70

127、H,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</p&

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

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

130、gt;<p>  DISPBCD0: MOV A,TEMPHC</p><p>  ANL A,#0FH</p><p>  JNZ DISPBCD2</p><p>  MOV A,TEMPHC</p><p>  SWA

131、P A</p><p>  ANL A,#0FH</p><p>  MOV 73H,#0AH</p><p>  MOV 72H,A</p><p>  DISPBCD2: RET</p><p>  ; ******

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

133、H單元內(nèi),用4位LED共陽(yáng)數(shù)碼管顯示,</p><p>  DISP1: MOV R1,#70H</p><p>  MOV R5,#0FEH</p><p>  PLAY: MOV P1,#0FFH</p><p>  MOV

134、 A,R5</p><p>  MOV P3,A</p><p>  MOV A,@R1</p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV

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

136、t;<p>  INC R1</p><p>  MOV A,R5</p><p>  JNB ACC.3,ENDOUT</p><p>  RL A</p><p>  MOV R5,A</p&

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

138、: 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>

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

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

141、p>  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

142、 AB</p><p>  SWAP A</p><p>  ORL A,B</p><p><b>  RET</b></p><p>  ; ****************************************************************&l

143、t;/p><p>  ; Calculate CRC—8 Values. Uses The CCITT—8 Polynomial,Expressed As</p><p>  ; X^8+X^5+X^4+1</p><p>  ; **************************************************************

144、**</p><p>  CRC8CAL: PUSH ACC</p><p>  MOV R7,#08H</p><p>  CRC8LOOP1: XRL A,B</p><p>  RRC A</p><

145、;p>  MOV A,B</p><p>  JNC CRC8LOOP2</p><p>  XRL A,#18H</p><p>  CRC8LOOP2: RRC A</p><p>  MOV B,A</p

146、><p>  POP ACC</p><p>  RR A</p><p>  PUSH ACC</p><p>  DJNZ R7,CRC8LOOP1</p><p>  POP ACC</p>&l

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論