版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、1設(shè)計(jì)題目: 單片機(jī)數(shù)字溫度計(jì)設(shè)計(jì)2設(shè)計(jì)目的:熟悉MCS-51單片機(jī)的功能,掌握其設(shè)計(jì)流程。3 系統(tǒng)硬件設(shè)計(jì)方案及原理框圖 1:系統(tǒng)結(jié)構(gòu)原理圖:2單片機(jī):圖1 系統(tǒng)原理結(jié)構(gòu)框圖 溫度傳感器DS18B20引腳如圖3所示。 8引腳封裝 TO92封裝圖3 溫度傳感器4設(shè)計(jì)步驟: 1 溫度傳感器與單片機(jī)的連接溫度傳感器的單總線(1-Wire)與單片機(jī)的P20連接,P20是單片機(jī)的高位地址線A8。P2端口是一個(gè)帶內(nèi)部上拉電阻的8位雙向IO,其輸出緩沖級可驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電路。對該端口寫“1”,可通過內(nèi)部上拉電阻將其端口拉至高電平,此時(shí)可作為輸入口使用,這是因?yàn)閮?nèi)部存在上拉電阻,某一
2、引腳被外部信號拉低時(shí)會輸出一個(gè)電流。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器時(shí)。如執(zhí)行MOVX DPTR指令,則表示P2端口送出高8位的地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器時(shí),可執(zhí)行MOVX RI指令,P2端口內(nèi)容即為特殊功能寄存器(SFR)區(qū)中R2寄存器內(nèi)容,整個(gè)訪問期間不改變。在Flash編程和程序校驗(yàn)時(shí),P2端口也接收高位地址和其他控制信號。圖4為DSl8820內(nèi)部結(jié)構(gòu)。圖5為DSl8820與單片機(jī)的接口電路。圖4 DS18B20內(nèi)部結(jié)構(gòu)圖 圖5 DS18B20和單片機(jī)的接口連接42 復(fù)位信號及外部復(fù)位電路 單片機(jī)的P1.6端口是MAX813看門狗電路中喂狗信號的輸入端,即單
3、片機(jī)每執(zhí)行一次程序就設(shè)置一次喂狗信號,清零看門狗器件。若程序出現(xiàn)異常,單片機(jī)引腳RST將出現(xiàn)兩個(gè)機(jī)器周期以上的高電平,使其復(fù)位。該復(fù)位信號高電平有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩脈沖周期即兩個(gè)機(jī)器周期以上。若使用頻率為12 MHz的晶體振蕩器,則復(fù)位信號持續(xù)時(shí)間應(yīng)超過2s才完成復(fù)位操作。4.3 單片機(jī)與報(bào)警電路 系統(tǒng)中的報(bào)警電路是由發(fā)光二極管和限流電阻組成,并與單片機(jī)的P1.2端口連接。P1端口的作用和接法與P2端口相同,不同的是在Flash編程和程序校驗(yàn)期間,P1接收低8位地址數(shù)據(jù)。4.4 電源電路由于該系統(tǒng)需要穩(wěn)定的5 V電源,因此設(shè)計(jì)時(shí)必須采用能滿足電壓、電流和穩(wěn)定性要求的電源。該電源采用
4、三端集成穩(wěn)壓器LM7805。它僅有輸入端、輸出端及公共端3個(gè)引腳,其內(nèi)部設(shè)有過流保護(hù)、過熱保護(hù)及調(diào)整管安全保護(hù)電路由于所需外接元件少,使用方便、可靠,因此可作為穩(wěn)壓電源。圖6為電源電路連接圖。圖6 電源電路連接圖4.5 顯示電路采用技術(shù)成熟的74HCl64實(shí)現(xiàn)串并轉(zhuǎn)換。LED顯示分為靜態(tài)顯示和動態(tài)顯示。這里采用靜態(tài)顯示,系統(tǒng)通過單片機(jī)的串行口來實(shí)現(xiàn)靜態(tài)顯示。串行口為方式零狀態(tài),即工作在移位寄存器方式,波特率為振蕩頻率的1/12。當(dāng)器件執(zhí)行任何一條將SBUF作為目的寄存器的命令時(shí),數(shù)據(jù)便開始從RXD端發(fā)送。在寫信號有效時(shí),相隔一個(gè)機(jī)器周期后發(fā)送控制端SEND有效,即允許RXD發(fā)送數(shù)據(jù),同時(shí)允許從
5、TXD端輸出移位脈沖。圖7為顯示電路的連接圖。圖7 顯示電路的連接圖4.6 看門狗電路系統(tǒng)中把P1.6作為看門狗的“喂狗”信號;將MAX813的RESET與單片機(jī)的復(fù)位信號RST連接。由于單片機(jī)每執(zhí)行一次程序,就會給看門狗器件一個(gè)復(fù)位信號,這樣也可以用手工方式實(shí)現(xiàn)復(fù)位。當(dāng)按鍵按下時(shí),SWSPST就會在MAX813引腳產(chǎn)生一個(gè)超過200 ms的低電平,其實(shí)看門狗器件在1.6 s時(shí)間內(nèi)沒有復(fù)位,使7引腳輸出一個(gè)復(fù)位信號的作用是相同的,其連接圖如圖8所示。圖8 看門狗器件的MAX813的連接圖5設(shè)計(jì)流程圖:開始DS18B20的初始化啟動溫度轉(zhuǎn)換讀取溫度寄存器跳過讀序列號的操作跳過讀序列號的操作DS1
6、8B20的初始化RETLOW-低八位 HIGH-高八位圖9 讀取數(shù)據(jù)的流程圖讀出溫度數(shù)據(jù)后,LOW的低四位為溫度的小數(shù)部分,可以精確到0.0625,LOW的高四位和HIGH的低四位為溫度的整數(shù)部分,HIGH的高四位全部為1表示負(fù)數(shù),全為0表示正數(shù)。所以先將數(shù)據(jù)提取出來,分為三個(gè)部分:小數(shù)部分、整數(shù)部分和符號部分。小數(shù)部分進(jìn)行四舍五入處理:大于0.5的話,向個(gè)位進(jìn)1;小于0.5的時(shí)候,舍去不要。當(dāng)數(shù)據(jù)是個(gè)負(fù)數(shù)的時(shí)候,顯示之前要進(jìn)行數(shù)據(jù)轉(zhuǎn)換,將其整數(shù)部分取反加一。還因?yàn)镈S18B20最低溫度只能為-55,所以可以將整數(shù)部分的最高位換成一個(gè)“-”,表負(fù)數(shù)。開始提取整數(shù)部分存入HT提取小數(shù)部分存入LT
7、LT右移三位,將精度降低到0.5攝氏度HT+將小數(shù)部分整數(shù)化提取符號部分存入signLT是否大于5Sign=?0XF0RET負(fù)數(shù)表示flag=1 HT=HT+1YNNY圖10 溫度數(shù)據(jù)處理流程圖6 程序源代碼DATA_BUSBITP3.3FLAGBIT00H;標(biāo)志位TEMP_LEQU 30H;溫度值低字節(jié)TEMP_HEQU31H;溫度值高字節(jié)TEMP_DPEQU32H;溫度小數(shù)TEMP_INTEQU33H;溫度值整數(shù)TEMP_BAIEQU34H;溫度百位數(shù)TEMP_SHIEQU35H;溫度十位數(shù)TEMP_GEEQU36H;溫度個(gè)位數(shù)DIS_BAIEQU37H;顯示百位數(shù)DIS_SHIEQU38
8、H;顯示十位數(shù)DIS_GEEQU39H;顯示個(gè)位數(shù)DIS_DPEQU3AH;顯示小數(shù)位DIS_ADDEQU3BH;顯示地址ORG 0000H AJMPSTARTORG 0050H;初始化START:MOVSP,#40HMAIN:LCALLREAD_TEMP;調(diào)讀溫度程序LCALLPROCESS;調(diào)數(shù)據(jù)處理程序AJMPMAIN;讀溫度程序READ_TEMP: LCALLRESET_PULSE ;調(diào)用復(fù)位脈沖程序MOV A,#0CCH;跳過ROM命令LCALL WRITEMOVA,#44H;讀溫度LCALL WRITELCALLDISPLAY;顯示溫度LCALLRESET_PULSE;調(diào)用復(fù)位脈沖
9、程序MOVA,#0CCH;跳過ROM命令LCALLWRITEMOVA,#0BEH;讀緩存命令LCALL WRITELCALLREADRET;復(fù)位脈沖程序RESET_PULSE:RESET:SETBDATA_BUSNOPNOPCLRDATA_BUSMOVR7,#255DJNZR7,$SETB DATA_BUSMOVR7,#30DJNZR7,$JNB DATA_BUS,SETB_FLAGCLRFLAGAJMPNEXTSETB_FLAG:SETB FLAGNEXT:MOV R7,#120DJNZR7,$SETB DATA_BUSJNBFLAG,RESET RET;寫命令WRITE:SETBDATA_
10、BUSMOVR6,#8CLRCWRITING:CLRDATA_BUSMOVR7,#5DJNZR7,$RRCAMOVDATA_BUS, CMOVR7,#30HDJNZR7,$SETBDATA_BUSNOPDJNZR6,WRITINGRET;循環(huán)顯示段位DISPLAY:MOV R4,#200DIS_LOOP:MOVA,DIS_DPMOVP2,#0FFHMOVP0,A CLRP2.7LCALLDELAY2MSMOVA,DIS_GEMOVP2,#0FFHMOVP0,ASETBP0.7 CLRP2.6LCALLDELAY2MSMOVA,DIS_SHIMOVP2,#0FFHMOVP0,ACLRP2.5 L
11、CALLDELAY2MSMOVA,DIS_BAIMOVP2,#0FFHMOVP0,AMOVA,TEMP_BAICJNEA,#0,SKIPAJMPNEXTTSKIP:CLRP2.4LCALLDELAY2MSNEXTT:NOPDJNZR4,DIS_LOOPRET;讀命令READ:SETBDATA_BUSMOVR0,#TEMP_LMOV R6,#8MOVR5,#2CLRCREADING:CLRDATA_BUSNOPNOPSETBDATA_BUSNOPNOPNOPNOPMOVC,DATA_BUSRRCAMOVR7,#30HDJNZR7,$SETBDATA_BUSDJNZR6,READINGMOVR0,
12、AINC R0MOVR6,#8SETBDATA_BUSDJNZR5,READINGRET;數(shù)據(jù)處理PROCESS:MOV R7,TEMP_LMOVA,#0FHANLA,R7MOVTEMP_DP,AMOV R7,TEMP_LMOVA,#0F0HANLA,R7SWAPAMOVTEMP_L,AMOVR7,TEMP_HMOVA,#0FHANLA,R7SWAPAORLA,TEMP_LMOV B,#64HDIVABMOVTEMP_BAI,AMOVA,#0AHXCHA,BDIVABMOVTEMP_SHI,AMOVTEMP_GE,BMOVA,TEMP_DPMOV DPTR,#TABLE_DPMOVCA,A+D
13、PTRMOVDPTR,#TABLE_INTERMOVC A,A+DPTRMOVDIS_DP,AMOVA,TEMP_GEMOV DPTR,#TABLE_INTERMOVCA,A+DPTRMOV DIS_GE,AMOVA,TEMP_SHIMOV DPTR,#TABLE_INTERMOVCA,A+DPTRMOVDIS_SHI,AMOVA,TEMP_BAIMOV DPTR,#TABLE_INTERMOVCA,A+DPTRMOV DIS_BAI,ARETDELAY2MS:MOVR6,#3LOOP3:MOVR5,#250DJNZR5,$DJNZR6,LOOP3RETTABLE_DP:DB00H,01H,0
14、1H,02H,03H,03H,04H,04H,05H,06HDB06H,07H,08H,08H,09H,09HTABLE_INTER:DB03FH,006H,05BH,04FH,066HDB06DH,07DH,07H,07FH,06FHEND。7 總結(jié)與體會心得作為一名電子信息工程的大三學(xué)生,我覺得做單片機(jī)課程設(shè)計(jì)是很有意義的,而且也是必要的。在做這次課程設(shè)計(jì)的過程中,我感觸最深的當(dāng)屬查閱大量的設(shè)計(jì)資料了。為了讓自己的設(shè)計(jì)更加完善,查閱這方面的實(shí)際資料是十分必要的,也是必不可少的。其次,在這次課程設(shè)計(jì)中,我們運(yùn)用了以前學(xué)過的專業(yè)課知識,如:proteus仿真、匯編語言、模擬和數(shù)字電路知識等。雖
15、然過去我從未獨(dú)立應(yīng)用過他們,但在學(xué)習(xí)的過程中帶著問題去學(xué)我發(fā)現(xiàn)效率很高,這是我做這次課程設(shè)計(jì)的又一收獲。最后,要做好一個(gè)課程設(shè)計(jì),就必須做到:在設(shè)計(jì)程序之前,對所用單片機(jī)的內(nèi)部結(jié)構(gòu)有一個(gè)系統(tǒng)的了解,知道該單片機(jī)有哪些資源;要有一個(gè)清晰的思路和一個(gè)完整的軟件流程圖;在設(shè)計(jì)程序時(shí),不能妄想一次將整個(gè)程序設(shè)計(jì)好,反復(fù)修改、不斷改進(jìn)是程序設(shè)計(jì)的必經(jīng)之路;要養(yǎng)成注釋程序的好習(xí)慣,這樣為資料的保留和交流提供了方便;在設(shè)計(jì)中遇到的問題要記錄,以免下次遇到同樣的問題。在這次的課程設(shè)計(jì)中,我真正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識用到實(shí)際當(dāng)中,學(xué)習(xí)單片機(jī)更是如此,程序只有在經(jīng)常寫與讀的過程中才能提高,這就是這次課程設(shè)計(jì)的最
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村農(nóng)村環(huán)保個(gè)人承包施工協(xié)議
- 建筑規(guī)劃二建專業(yè)人才聘用合同
- 飲料瓶制造地磅租賃協(xié)議
- 教育行業(yè)貨車租賃合同樣本
- 人力資源派遣合同管理指南
- 船舶電力系統(tǒng)維修服務(wù)協(xié)議
- 員工解雇程序規(guī)范化指南
- 聘用合同模板
- 養(yǎng)殖場養(yǎng)殖產(chǎn)品廣告宣傳合同
- 寵物項(xiàng)目部護(hù)理員聘用合同
- 心腦血管事件報(bào)告卡
- 《中國潰瘍性結(jié)腸炎診治指南(2023年)》解讀
- 四川省獸藥經(jīng)營質(zhì)量管理標(biāo)準(zhǔn)規(guī)范檢查驗(yàn)收評定統(tǒng)一標(biāo)準(zhǔn)
- 太極拳文化與養(yǎng)生智慧樹知到期末考試答案2024年
- DB13(J)T 8427-2021 綠色建筑評價(jià)標(biāo)準(zhǔn)
- 評標(biāo)專家操作流程示意圖
- 19-24個(gè)月嬰兒親子活動設(shè)計(jì)與指導(dǎo)(上)
- 2024年中國郵政中郵信息科技北京有限公司招聘筆試參考題庫含答案解析
- 路面塌陷路基處理施工方案
- 2024年廣東省高三一模英語試題答案講評詞匯積累課件
- 《視聽語言》課程標(biāo)準(zhǔn)
評論
0/150
提交評論