九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類(lèi) > DOC文檔下載  

豆?jié){機(jī)單片機(jī)課程設(shè)計(jì).doc

  • 資源ID:6659296       資源大?。?span id="24d9guoke414" class="font-tahoma">653.50KB        全文頁(yè)數(shù):30頁(yè)
  • 資源格式: DOC        下載積分:9.9積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開(kāi)放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫(xiě)的郵箱或者手機(jī)號(hào),方便查詢(xún)和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類(lèi)文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

豆?jié){機(jī)單片機(jī)課程設(shè)計(jì).doc

單片機(jī)原理及接口技術(shù)課程設(shè)計(jì)報(bào)告題目:智能小家電(全自動(dòng)豆?jié){機(jī))控制系統(tǒng)的設(shè)計(jì) 專(zhuān)業(yè):電氣工程及其自動(dòng)化 班級(jí): 32040901 學(xué)號(hào):3204090124 姓名:何 玉 毛 授課教師:段晨東 時(shí)間: 2011.12 設(shè)計(jì)要求 題目4 智能小家電控制系統(tǒng)的設(shè)計(jì)(1)(一)功能介紹 全自動(dòng)家用豆類(lèi)和谷物處理機(jī)(即全自動(dòng)豆?jié){機(jī))具有按預(yù)設(shè)模式自動(dòng)粉碎谷物、加熱功能、防止溢出、處理完畢報(bào)警等基本功能。一般可以處理如豆類(lèi)、玉米、其他五谷雜糧、蔬菜等多種食品。全自動(dòng)家用豆類(lèi)和谷物處理機(jī)的處理食品的過(guò)程通常為:加熱粉碎1加熱粉碎2加熱完成報(bào)警,整個(gè)加工過(guò)程的進(jìn)行按時(shí)間控制。由于食品原料的物理特性不同,在加工處理時(shí)采用不同的加工(過(guò)程)模式,其主要區(qū)別在于加熱和粉碎時(shí)間的長(zhǎng)短不同。在工作過(guò)程中,被加工的食品液體被限定在某一個(gè)給定的液位范圍內(nèi),當(dāng)液體加熱時(shí)泡沫達(dá)到溢出液位時(shí),停止加熱,待脫離溢出液位區(qū)時(shí)繼續(xù)加熱。(二)設(shè)計(jì)參數(shù)(1)電機(jī) 5W,24VDC(2)加熱器 500W,220V AC(3)加熱容器 1.25升(4)電力供應(yīng):220V AC(三)設(shè)計(jì)要求 (1)實(shí)現(xiàn)多模式選擇。被選中的模式用LED顯示器表明(2)實(shí)現(xiàn)不同模式下的加工過(guò)程:加熱粉碎1加熱粉碎2加熱完成報(bào)警,整個(gè)加工過(guò)程的進(jìn)行按時(shí)間控制,時(shí)間自定(3)液位檢測(cè)和控制:使被加工的食品液體限定在某一個(gè)給定的液位范圍內(nèi),當(dāng)液體溢出容器或無(wú)液體時(shí),報(bào)警并斷電。(4)顯示工作模式、加工狀態(tài)和時(shí)間。(5)每個(gè)動(dòng)作完成時(shí),通過(guò)聲光報(bào)警提示。(6)測(cè)量并顯示液體溫度。(四)擴(kuò)充功能(1)在加熱階段進(jìn)行恒溫控制(2)PWM調(diào)節(jié)電機(jī)轉(zhuǎn)速 目錄 摘要對(duì)于此次課程設(shè)計(jì)的要求,本設(shè)計(jì)采用STC89C52來(lái)實(shí)現(xiàn)全自動(dòng)豆?jié){機(jī)的各個(gè)功能的控制。在本設(shè)計(jì)中,能實(shí)現(xiàn)一下功能:1. 針對(duì)食品原料的物理特性不同,在加工處理時(shí)采用不同的加工(過(guò)程)模式,其主要區(qū)別在于加熱和粉碎時(shí)間的長(zhǎng)短不同(其中我用不同顏色的LED燈來(lái)表示加熱和粉碎過(guò)程。)2. 不同的共工作模式和加熱、粉碎時(shí)間用數(shù)碼管表示出來(lái)3. 可以實(shí)現(xiàn)液位溢出和過(guò)低報(bào)警(用撥碼開(kāi)關(guān)來(lái)模擬)4. 每個(gè)模式完成后報(bào)警在豆?jié){機(jī)工作過(guò)程中,全部用軟件控制。對(duì)不同物料的不同處理用處理時(shí)間來(lái)區(qū)分,用定時(shí)來(lái)完成。防液位溢出和過(guò)低用中斷方式來(lái)實(shí)現(xiàn)。但在設(shè)計(jì)過(guò)程中,對(duì)于PWM調(diào)速和恒溫控制沒(méi)能很好的實(shí)現(xiàn),在后面的學(xué)習(xí)中,我一定會(huì)更加認(rèn)真地學(xué)習(xí)理論知識(shí),并與實(shí)踐相結(jié)合,進(jìn)一步提升自己的能力。在此,感謝在此次課程設(shè)計(jì)過(guò)程中提供幫助的同學(xué),謝謝你們。 一,系統(tǒng)分析 此次課程設(shè)計(jì)的題目是:全自動(dòng)豆?jié){機(jī)。我們采用STC89C52來(lái)完成其設(shè)計(jì),用不同顏色的LED燈模擬加熱與粉碎功能,還有就是用蜂鳴器來(lái)完成其報(bào)警功能,以中斷方式采用撥碼開(kāi)關(guān)來(lái)實(shí)現(xiàn)液位的控制等。1.方案分析與論證 :(1)模式選擇模塊:方案一:鍵盤(pán)選擇模式方法。通過(guò)按下鍵的鍵值判斷,來(lái)跳轉(zhuǎn)到不同的模式。鍵盤(pán)有九個(gè)鍵,最多可以設(shè)計(jì)九中模式,設(shè)計(jì)時(shí)設(shè)計(jì)三種模式即可。該方案可行。方案二:定時(shí)計(jì)數(shù)模式方法。設(shè)計(jì)一個(gè)三循環(huán)的計(jì)數(shù)。通過(guò)按一下,外部給單片機(jī)一個(gè)低電平,計(jì)數(shù)一次。按兩下,計(jì)數(shù)加二,按三下計(jì)數(shù)加三。按四下后回到按一下的狀態(tài)。然后通過(guò)計(jì)數(shù)后的數(shù)值來(lái)選擇不同的模式。該方案可行。 方案選擇:總體來(lái)講,兩種方案都挺好。最后,選擇模塊選擇方案一,由于板上有鍵盤(pán),可以加以運(yùn)用,也方便實(shí)現(xiàn)。計(jì)數(shù)口可以留著擴(kuò)展外部事件中斷用。 (2)加熱粉碎完成報(bào)警模塊:方案一:加熱和粉碎時(shí)都有一定的時(shí)間,用延時(shí)實(shí)現(xiàn)。方案二:加熱和粉碎需要的時(shí)間可以用定時(shí)實(shí)現(xiàn)。方案選擇:選擇方案二,因?yàn)榧訜岷头鬯榈臅r(shí)間需要用動(dòng)態(tài)掃描的方式顯示出來(lái),因此定時(shí)可以實(shí)現(xiàn)加熱和粉碎時(shí)的顯示,而延時(shí)方式不行。(3)液位控制模塊: 液位控制模塊可用外部事件中斷方式實(shí)現(xiàn)。燒干,液體溢出容器功能采用外部事件中斷(INTO,P3.2)實(shí)現(xiàn),設(shè)為高優(yōu)先級(jí)的中斷。加熱液位控制功能也采用外部事件(INT1,P3.3)中斷實(shí)現(xiàn),設(shè)為低優(yōu)先級(jí)。 (4)擴(kuò)展計(jì)時(shí)模塊:計(jì)時(shí)用來(lái)動(dòng)態(tài)計(jì)量在某種模式下工作了多久,以此來(lái)觀察還需要多久完成全過(guò)程。并且工作過(guò)程中有兩個(gè)報(bào)警的狀態(tài),由計(jì)時(shí)的時(shí)間大概可以判斷屬于那種情況。計(jì)時(shí)還可以檢測(cè)豆?jié){機(jī)工作的時(shí)間是否正常。最后,我采用正計(jì)時(shí)的方式來(lái)實(shí)現(xiàn)。二,設(shè)計(jì)框圖1.矩陣式鍵盤(pán)實(shí)現(xiàn)的模式選擇框圖開(kāi)始置P2為輸入有按鍵按下?N Y延時(shí)20ms消抖 Y有按鍵按下?N 按鍵識(shí)別按鍵釋放? N Y延時(shí)20ms消抖 Y按鍵釋放? N Y選擇模式1KEY1按下? Y N選擇模式2KEY2按下? Y N選擇模式3KEY3按下? Y NRET 2. 加熱粉碎完成報(bào)警及液位控制模塊框圖開(kāi)始定時(shí)加熱 定時(shí)粉碎定時(shí)加熱 定時(shí)粉碎定時(shí)加熱 完成報(bào)警 RET RETRETRET 3.液位溢出或者過(guò)低報(bào)警框圖 加熱時(shí)是否超液位或者液位過(guò)低 N 返回繼續(xù)加熱 Y 中斷,停止加熱,延時(shí)適當(dāng)時(shí)間 RET4.顯示程序框圖開(kāi)始設(shè)置顯示起始位置取顯示數(shù)據(jù)查顯示數(shù)據(jù)字型碼顯示數(shù)據(jù)是否顯示完N YRET5.定時(shí)程序框圖 開(kāi)始 設(shè)置TMODTH0,TL0置初值0允許定時(shí)器工作等待,并調(diào)用正計(jì)時(shí)顯示程序及模式顯示程序定時(shí)器是否溢出N YRET 5.主程序框圖開(kāi)始主程序初始化調(diào)用顯示程序,初始化顯示090124調(diào)用鍵盤(pán)掃描程序,有鍵按下?NY選擇相應(yīng)模式,并顯示。同時(shí)顯示加熱和粉碎的時(shí)間及調(diào)用正計(jì)時(shí)程序中斷返回調(diào)用加熱粉碎程序,是否有中斷執(zhí)行燒干和溢出容器中斷程序執(zhí)行超液位中斷程序 YY N完成報(bào)警,調(diào)用所有顯示程序RET三,軟件模擬1. 初始化 其初始值為090124,上電復(fù)位后顯示2. 模式1其中第一個(gè)1表示工作在模式一,后面的09為加熱和粉碎各維持9s,后三位為計(jì)時(shí)部分3. 模式二其中和模式一相同,不同的是加熱和粉碎時(shí)間不同,還有就是模式三也是相同的方式。4. 液位溢出報(bào)警和液位過(guò)低報(bào)警其中用撥碼開(kāi)關(guān)模擬液位的變化,進(jìn)行聲光報(bào)警,液位過(guò)低也是這種模式。5. 溫度當(dāng)按下4號(hào)鍵,就會(huì)顯示溫度四,硬件調(diào)試:1.調(diào)試圖詳相見(jiàn)附錄 2.問(wèn)題歸納 中斷時(shí),返回的不是原來(lái)的狀態(tài)?解決方案:因?yàn)橹袛嗬锩娴某绦蚋淖兞酥鞒绦蚶锩娴亩丝跔顟B(tài),所以返回時(shí)不時(shí)原來(lái)的狀態(tài)。需要對(duì)影響主程序的量進(jìn)行保護(hù)和還原就行了。 通過(guò)鍵盤(pán)選擇某模式,復(fù)位后,必須復(fù)位后的瞬間選擇其它模式,否則就無(wú)法選擇其他模式了?解決方案:這是因?yàn)殒I盤(pán)掃描程序里沒(méi)有對(duì)無(wú)按鍵時(shí)的狀態(tài)進(jìn)行操作。只要讓無(wú)按鍵時(shí),執(zhí)行重新掃描鍵盤(pán)即可。 在軟件里模擬沒(méi)有問(wèn)題,但是下載板子里就不行了?解決方案:軟件、硬件的靈敏度不同,軟件里都是理想的,和實(shí)際存在一定差距,要結(jié)合硬件來(lái)調(diào)試。在延時(shí)、端口方面應(yīng)該多注意。 數(shù)碼管顯示不要穩(wěn)定,一直在閃?解決方案:改變延時(shí)長(zhǎng)短,多調(diào)試幾次,直至穩(wěn)定。 溫度一直是85度?解決方案:18b20在運(yùn)行過(guò)程中,其第一次讀數(shù)就是85,應(yīng)該舍棄第一次讀數(shù),讓其循環(huán)調(diào)用。3.總結(jié): 在此次課程設(shè)計(jì)過(guò)程中,讓我深刻認(rèn)識(shí)到把理論轉(zhuǎn)化為現(xiàn)實(shí)的不易,可謂是收益匪淺。通過(guò)這次的課設(shè),讓我也熟悉了 keil和protuse這兩個(gè)軟件,大大的提高了動(dòng)手能力。過(guò)程中,遇到問(wèn)題是在所難免的,最終那份通過(guò)尋求各種幫助將問(wèn)題解決后的興奮是令人難忘的。特別是當(dāng)我看著自己辛苦兩周焊接出來(lái)的板子上的各種功能一一實(shí)現(xiàn),那份喜悅是無(wú)法代替的。在此感謝老師,感謝在此次課程設(shè)計(jì)過(guò)程中幫助我的同學(xué)。五,參考文獻(xiàn)單片機(jī)原理及接口技術(shù)段晨東主編,清華大學(xué)出版社 手把手教你學(xué)單片機(jī)周興華編著,北京航空航天大學(xué)出版社附錄一:電路原理圖軟件模擬原理圖附錄二:原件明細(xì)表元器件數(shù)量備注電阻31K電阻45.1K電阻28K獨(dú)石電容60.1uF獨(dú)石電容230PF電解電容110Uf 25V51單片機(jī)實(shí)驗(yàn)板189C52芯片1MAX232芯片174LS245芯片274LS138芯片1DS18B201三極管90122PNP二極管IN40011數(shù)碼管2三位八段 共陰繼電器1晶振111.0592MHz芯片座6電源座1三腳 5V通信插座1CON232電源適配器1通訊電纜1微型按鈕開(kāi)關(guān)10實(shí)驗(yàn)插板1單排插針若干雙排插針若干短路塊若干導(dǎo)線若干補(bǔ)充原件:1. LED燈2個(gè)(一個(gè)紅色,一個(gè)綠色)2. 排線:4根3. 面包板:1快4. 焊接線:若干附錄三:程序清單 ORG 0000H LJMP MAIN ORG 0003H LJMP P_T0 ORG 0013H LJMP P_T1 ORG 0030H MAIN: MOV SP,#60H ;開(kāi)辟棧區(qū) CLR IT0 ;INT0低電平觸發(fā) CLR IT1 ;INT1低電平觸發(fā) SETB EA ;開(kāi)CPU中斷 SETB EX0 ;允許INT0中斷SETB EX1 ;允許INT1中斷 SETB PX0 ;設(shè)置INT0為高優(yōu)先級(jí)CLR PX1 ;設(shè)置INT1為低優(yōu)先級(jí) CLR P3.6 ; 加熱指示燈清零 CLR P3.7 ;粉碎指示燈清零 MOV 20H,#0 ;賦初始值 MOV 21H,#9 MOV 22H,#0 MOV 25H,#1 MOV 26H,#2 MOV 27H,#4 LCALL DSPLY1 ;調(diào)顯示程序 LCALL DSPLY2 LCALL SCAN_KEYB ;點(diǎn)鍵盤(pán)掃描程序 MOV 25H,#00H ;高三位清零 MOV 26H,#00H MOV 27H,#00H MOV A,R5 ;鍵盤(pán)返回值在然中 NEXT: CJNE A,#01H,NEXT1 ;判斷是否為1鍵按下LCALL FUNCTION_1 ;調(diào)1鍵處理程序 LCALL LOOP4 ;調(diào)用計(jì)時(shí)程序和完成之后的報(bào)警程序 LCALL LOOP6RET NEXT1:CJNE A,#02H,NEXT2 ;判斷是否2鍵按下 LCALL FUNCTION_2 ;和第一種模式相同 LCALL LOOP6 LCALL LOOP4 RETNEXT2: CJNE A,#3,NEXT3 ;3鍵按下? LCALL FUNCTION_3 ;同前兩種 LCALL LOOP6 LCALL LOOP4NEXT3: CJNE A,#4,NEXT4 ;4鍵按下否? LCALL PRO_18B20 ;調(diào)溫度處理程序NEXT4:LJMP MIAN ;若無(wú)鍵按下,返回 ;#中斷處理程序,液位溢出# ORG 0100H P_T0:PUSH ACC ;保護(hù)現(xiàn)場(chǎng) PUSH PSW CLR P3.6 ;停止加熱,粉碎 CLR P3.7 LCALL ALARM ;報(bào)警 POP PSW ;恢復(fù)現(xiàn)場(chǎng) POP ACC RETI ;#液位過(guò)低處理程序# ORG 0200H P_T1:CLR EA ;關(guān)中斷 PUSH ACC ;保護(hù)現(xiàn)場(chǎng) PUSH PSW SETB EA ;開(kāi)中斷 SETB RS0 ;將工作寄存器切換 CLR P3.6 ;停止加熱停止粉碎 CLR P3.7 LCALL A LARM ;報(bào)警 SETB P3.6 ;恢復(fù)中斷前狀態(tài) CLR EA ;關(guān)中斷 POP PSW ;恢復(fù)現(xiàn)場(chǎng) POP ACC SETB EA ;開(kāi)中斷 RETI ;按鍵處理程序FUNCTION_1: MOV 20H,#01H ; MOV 21H,#0 MOV 22H,#9 MOV 30H,#03HMOV 31H,#03HLCALL DSPLY1 RET S2_PRESS: MOV 20H,#02H MOV 21H,#1 MOV 22H,#2 MOV 30H,#04HMOV 31H,#04HLCALL DSPLY1 RET S3_PRESS: MOV 20H,#03H MOV 21H,#1 MOV 22H,#5 MOV 30H,#05HMOV 31H,#05HLCALL DSPLY1 RETDSPLY1: MOV R0,#20H MOV R2,#00H REDO:ACALL DISP INC R2 MOV A, R2 INC R0 XRL A, #03H JNZ REDO RETDSPLY2: MOV R0,#25H MOV R2,#03H REDO2:ACALL DISP INC R2 MOV A, R2 INC R0 XRL A, #06H JNZ REDO2 RETDISP: MOV P1,R2 MOV DPTR,#LED_SEG MOV A ,R0 MOVC A ,A+DPTR MOV P0,A LCALL DL1MS RET LED_SEG:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHLOOP6: LCALL DL1S MOV A,27H CJNE A,#09H,GOON1 MOV 27H,#00H MOV A,26H CJNE A,#05H,GOON2 MOV 26H,#00H INC 25H RETGOON1: INC 27H RETGOON2: INC 26H RETDL20MS: MOV TMOD,#01H MOV TH0,#0DBH MOV TL0,#00H SETB TR0 CONT1:JBC TF0,OVERF1 SJMP CONT1 OVERF1:RETLOOP4: LCALL JIARE LCALL FENSUI LCALL JIARE LCALL FENSUI LCALL JIARE CLR P3.6 CLR P3.7 LCALL ALARM RETJIARE: MOV 23H,30H CLR P3.7 SETB P3.6LOOP1: LCALL DL1MIN DJNZ 23H,LOOP1 RETFENSUI: MOV 24H,31H CLR P3.6 SETB P3.7LOOP2: LCALL DL1MIN DJNZ 24H,LOOP2 RET ALARM: LOOP5: MOV R1,#20 MOV A,#06H MOV P1,A LCALL DL1MS LCALL DL1MS INC A MOV P1,A LCALL DL1MS LCALL DL1MS LCALL DSPLY1 LCALL DSPLY2 DJNZ R1, LOOP5 RETDL1MIN: MOV R7,#3 DL1: LCALL LOOP6 DJNZ R7,DL1 RET DL1MS: MOV R1,#200 DL2: NOP NOP NOP DJNZ R1,DL2 RET DL1S: MOV R6,#20 WAIT: MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 CONT2: JBC TF0,OVERF2 LCALL DSPLY1 LCALL DSPLY2 SJMP CONT2 OVERF2: DJNZ R6,WAIT RETSCAN_KEYB: MOV P2,#0F0H MOV A,P2 ANL A,#0F0H XRL A,#0F0H JZ NO_KEY ACALL DL20MS ANL A,#0F0H XRL A,#0F0H JZ NO_KEY MOV R2,#11110111B SCAN:MOV A,R2 MOV P2,A MOV A,P2 ANL A,#11110000B MOV R3,A CJNE A,#0F0H,KEY_PRSD MOV A,R2 RR A MOV R2,A XRL A,#01111111B JNZ SCAN NO_KEY :LJMP MAIN KEY_PRSD:MOV A ,R2 ANL A ,#00001111B ORL A ,R3 MOV R4,A MOV R5,#01H MOV DPTR,#KEY_TAB CAL_VAL:MOV A ,R5 MOVC A,A+DPTR XRL A,R4 JZ FIXED INC R5 SJMP CAL_VAL FIXED:MOV A ,P2 ANL A ,#0F0H XRL A,#0F0H JNZ FIXED ACALL DL20MS MOV A ,P2 ANL A ,#0F0H XRL A,#0F0H JNZ FIXED INC A RET KEY_TAB: DB 77H,77H,7BH,7DH,0B7H,0BEH,0BDH DB 0D7H,0DBH,0DDH RET ;WENDUXIANSHI FLAG1 BIT F0 ;DS18B20存在標(biāo)志位 DQ BIT P1.3 TEMPER_L EQU 27H TEMPER_H EQU 26H PRO_18B20: MOV 30H,#250 REPLY: LCALL INIT_18B20 LCALL RE_CONFIG LCALL GET_TEMPER LCALL CHANGE ;將18B20讀的16位溫度轉(zhuǎn)換8位數(shù)據(jù) LCALL DISPLAY ;調(diào)用數(shù)碼管顯示子程序 DJNZ 30H,REPLY;*DS18B20復(fù)位程序*INIT_18B20: SETB DQ NOP NOP CLR DQ NOP NOP MOV R0,#0FBH TSR1: DJNZ R0,TSR1 ;延時(shí) SETB DQ MOV R0,#25H TSR2: JNB DQ ,TSR3 DJNZ R0,TSR2 TSR3: SETB FLAG1 ;置標(biāo)志位,表明DS18B20存在 CLR P2.0 ;二極管指示 AJMP TSR5 TSR4: CLR FLAG1 LJMP TSR7 TSR5: MOV R0,#06BH TSR6: DJNZ R0,TSR6 TSR7:SETB DQ ;表明不存在 RET;*設(shè)定DS18B20暫存器設(shè)定值*RE_CONFIG: JB FLAG1,RE_CONFIG1 RETRE_CONFIG1: MOV A,#0CCH ;放跳過(guò)ROM命令 LCALL WRITE_18B20 MOV A,#4EH LCALL WRITE_18B20 ;寫(xiě)暫存器命令 MOV A,#00H ;報(bào)警上限中寫(xiě)入00H LCALL WRITE_18B20 MOV A,#00H ;報(bào)警下限中寫(xiě)入00H LCALL WRITE_18B20 MOV A,#1FH ;選擇九位溫度分辨率 LCALL WRITE_18B20 RET;*讀轉(zhuǎn)換后的溫度值*GET_TEMPER: SETB DQ LCALL INIT_18B20 JB FLAG1,TSS2 RET ;若不存在則返回 TSS2: MOV A,#0CCH ;跳過(guò)ROM LCALL WRITE_18B20 MOV A,#44H ;發(fā)出溫度轉(zhuǎn)換命令 LCALL WRITE_18B20 ; LCALL DISPLAY ;延時(shí) LCALL INIT_18B20 MOV A,#0CCH ;跳過(guò)ROM LCALL WRITE_18B20 MOV A,#0BEH ;發(fā)出讀溫度換命令 LCALL WRITE_18B20 LCALL READ2_18B20 ;讀兩個(gè)字節(jié)的溫度 RET ;*寫(xiě)ds18b20匯編程序* WRITE_18B20:MOV R2,#8 CLR C WR1: CLR DQ MOV R3,#6 DJNZ R3,$ RRC A MOV DQ,C MOV R3,#23 DJNZ R3,$ SETB DQ NOP DJNZ R2,WR1 SETB DQ RET ;*讀18B20程序,讀出兩個(gè)字節(jié)的溫度* READ2_18B20:MOV R4,#2 ;低位存在29 H,高位存在28H MOV R1,#29H RE00: MOV R2,#8 RE01: CLR C SETB C NOP NOP CLR DQ NOP NOP NOP SETB DQ MOV R3,#7 DJNZ R3,$ MOV C,DQ MOV R3,#23 DJNZ R3,$ RRC A DJNZ R2,RE01 MOV R1,A DEC R1 DJNZ R4,RE00 RET ;*讀出的溫度進(jìn)行數(shù)據(jù)轉(zhuǎn)換*CHANGE: MOV A,29H MOV C,28H.0 ;將28H中的最低位移入C RRC A MOV C,28H.1 RRC A MOV C,28H.2 RRC A MOV C,28H.3 RRC A MOV 29H,A RETDISPLAY: mov a,29H;將29H中的十六進(jìn)制數(shù)轉(zhuǎn)換成10進(jìn)制 mov b,#100 div ab mov 34H,A MOV A,B MOV B,#10 DIV AB MOV 35H,A MOV 36H,B mov DPTR,#TAB ;指定查表啟始地址 mov A,36H ;取個(gè)位數(shù) MOVC A,A+DPTR ;查個(gè)位數(shù)的7段代碼 mov P0,A ;送出個(gè)位的7段代碼 MOV P1,#05;開(kāi)個(gè)位顯示 NOP NOP LCALL DELAYNMS MOV P1,#0FFH NOP NOP mov A,35H ;取十位數(shù) MOVC A,A+DPTR ;查十位數(shù)的7段代碼 mov P0,A;送出十位的7段代碼 MOV P1,#04;開(kāi)十位顯示 NOP NOP LCALL DELAYNMS MOV P1,#0FFH NOP NOP RET DELAYNMS: MOV R6,#8 D11: MOV R7,#200 DJNZ R7,$ DJNZ R6,D11 RET TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END

注意事項(xiàng)

本文(豆?jié){機(jī)單片機(jī)課程設(shè)計(jì).doc)為本站會(huì)員(xin****828)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!