freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于at89s51的溫度測(cè)量系統(tǒng)的設(shè)計(jì)論文-展示頁(yè)

2025-03-10 08:38本頁(yè)面
  

【正文】 onvert ANL A,0F0H MOV 3AH,A MOV A,31H ANL A,0FH ORL A,3AH SWAP A MOV B,10 DIV AB MOV 43H,B DIV AB MOV 42H,B MOV 41H,A ORL A,30H 。溫度轉(zhuǎn)換程序(只取整數(shù)) ,30H=LSB,31H=MSB。發(fā)出讀溫度命令 LCALL SEND_BYTE LCALL READ_BYTE MOV WDLSB,A LCALL READ_BYTE MOV WDMSB,A LCALL TRANS12 KEND: SETB EA RET 。延時(shí) 75ms 以上準(zhǔn) 備讀 SS2: MOV 49H,255 SS1: MOV 4AH,255 SS0: DJNZ 4AH,SS0 DJNZ 49H,SS1 DJNZ 48H,SS2 MOV P1,11111100B JNB F0,KEND MOV R0,0CCH 。跳過(guò) ROM 匹配 MOV R0,44H 。 讀出 DS18B20 溫度程序 DSWD: CLR EA LCALL RSTSNR JNB F0,KEND 。串口方式 1: 8,N,1 MOV PCON,00H MOV TH0,LOW(6553510000) MOV TL0,HIGH(6553510000) SETB TR1 SETB TR0 LOOP: LCALL DSWD 。T0=16B Counter,T1=8B autoload MOV TH1,0FDH 。 OVER: MOV R0,00H。************************************************ 。定時(shí)器 10MS 中斷 MOV TL0,HIGH(6553510000) RETI T1MS: MOV R5,00h 。 最后一位值送 p0 ORL P0,10000000B。顯示緩沖區(qū) 40H~47H 。*********************************************** 。********************************************* ORG 0000H LJMP MAIN ORG 000BH SJMP TMR0 。讀出的溫度低字節(jié) WDMSB DATA 31H 。 程序設(shè)計(jì): DAT BIT 。 溫度讀入程序如下: DSWD: CLR EA LCALL RSTSNR JNB F0, KEND; 如果沒(méi)有應(yīng)答 , 返回主程序 MOV R0, 0CCH LCALL SEND_BYTE; 跳過(guò) ROM匹配 MOV R0, 44H; 發(fā)出溫度轉(zhuǎn)換命令 LCALL SEND_BYTE SETB EA MOV P1, 00001111B MOV 48H, 1; 延時(shí) 75ms以上準(zhǔn)備讀 SS2: MOV 49H, 255 SS1: MOV 4AH, 255 SS0: DJNZ 4AH, SS0 DJNZ 49H, SS1 DJNZ 48H, SS2 MOV P1, 11111100B GND:地; VCC:電源電壓 DQ:數(shù)據(jù)輸入 /輸出腳(單線(xiàn)接口,可作寄生供電) DS18B20 1 2 3 GND DQ VCC CLR EA LCALL RSTSNR JNB F0, KEND MOV R0, 0CCH; 跳過(guò) ROM匹配 LCALL SEND_BYTE MOV R0, 0BEH ; 發(fā)出讀溫度命令 LCALL SEND_BYTE LCALL READ_BYTE MOV WDLSB, A LCALL READ_BYTE MOV WDMSB, A LCALL TRANS12 KEND: SETB EA RET SEND_BYTE: MOV A, R0; 發(fā)送一個(gè)字節(jié)程序 MOV R5, 8 SEN3: CLR C RRC A JC SEN1 LCALL WRITE_0 SJMP SEN2 SEN1: ACALL WRITE_1 SEN2: DJNZ R5, SEN3; 循環(huán) 8次 , 寫(xiě)一個(gè)字節(jié) RET READ_BYTE: MOV R5,8; 讀一個(gè)字節(jié)程序 READ1: LCALL READ RRC A DJNZ R5, READ1; 循環(huán) 8次 , 讀一個(gè)字節(jié) MOV R0, A RET ; 復(fù)位程序 , 如果復(fù)位置位 F0,沒(méi)有就復(fù)位 F0 RSTSNR: SETB DAT NOP NOP CLR DAT MOV R6, 250; 主機(jī)發(fā)復(fù)位脈沖持續(xù) 2*300=600μ S DJNZ R6, $ MOV R6, 50 DJNZ R6, $ SETB DAT; 主機(jī)釋放總線(xiàn) , 口線(xiàn)改為輸入 MOV R6, 15 DJNZ R6, $ LCALL CHCK; 調(diào)用應(yīng)答檢查程序 MOV R6, 60 DJNZ R6, $ RET CHCK: MOV C, DAT JC RST0 SETB F0; 檢測(cè)到信號(hào) , 置位 F0 SJMP CHCK0 RST0: CLR F0; 未準(zhǔn)備好 F0復(fù)位 CHCK0: RET WRITE_0: CLR DAT; 寫(xiě) 0 DJNZ R6, $ SETB DAT RET WRITE_1: CLR DAT; 寫(xiě) 1 NOP NOP NOP NOP NOP SETB DAT DJNZ R6, $ RET ; 讀一位數(shù)據(jù)程序 READ: SETB DAT ; 先復(fù)位至少 1US產(chǎn)生讀起始信號(hào) NOP NOP CLR DAT NOP NOP SETB DAT ; 置位 DAT準(zhǔn)備接收數(shù)據(jù) NOP NOP NOP NOP NOP NOP NOP MOV C, DAT MOV R6, 23 DJNZ R6, $ RET 溫度轉(zhuǎn)換程序(只取整數(shù)) 30H=LSB, 31H=MSB; TRANS12: MOV A, 30H;將讀出的溫度低字節(jié)送入累加器 A ANL A, 0F0H;將低四位清 0,保留高四位 MOV 3AH, A MOV A, 31H;將讀出的溫度高字節(jié)送入累加器 A ANL A, 0FH;將高四位清 0,保留低四位 SWAP A MOV B,10 DIV AB MOV 43H,B DIV AB MOV 42H, B MOV 41H, A ORL A, 30H;將 BCD 碼轉(zhuǎn)換為 ASCII 碼 MOV 50H, A MOV A, 42H ORL A, 30H MOV A, 43H ORL A, 30H MOV 52H, A MOV 53H, 20H ACALL SEND2PC RET 溫度的數(shù)碼顯示:系統(tǒng)處理所得的 ASCII 碼經(jīng) ~ 送入 74LS47 譯碼鎖存,單片機(jī)每隔 10ms(定時(shí) /計(jì)數(shù)器 0 利用方式 1)采用中斷的形式循環(huán)掃描,利用 ~ 依次點(diǎn)亮 3 個(gè) LED 數(shù)碼管,將譯碼器鎖存數(shù)據(jù)顯示。從 DS18B20 讀出或?qū)懭氲男畔H需要一根口線(xiàn)(單總線(xiàn)接口),讀寫(xiě)及溫度變換功率來(lái)源于數(shù)據(jù)總線(xiàn),總線(xiàn)本身也可以向所掛接的 DS18B20 供電,而無(wú)需額外電源。 基于 AT89S51 的溫度測(cè)量系統(tǒng)的設(shè)計(jì) 一、設(shè)計(jì)題目: 基于 AT89S51 的溫度測(cè)量系統(tǒng)的設(shè)計(jì) 二、元件及器材: 單片機(jī) AT89C5溫度傳感器 DS18B顯示譯碼器 74LS4晶振、 MAX232CPE、 3 位 LED 七段顯示器 LN5361BS 三、系統(tǒng)設(shè)計(jì)過(guò)程: 電路功能: 本單片機(jī)開(kāi)發(fā)電路系統(tǒng)可實(shí)現(xiàn)溫度測(cè)量的顯示及與 PC 機(jī)的串行通信。 電 路 原理圖: 電路分析: 電路中采用的溫度傳感器 DS18B20 是美國(guó) DALLS 公司生產(chǎn)的單總線(xiàn)數(shù)字溫度傳 感器,可把溫度信號(hào)直接轉(zhuǎn)換成串行數(shù)字信號(hào)供微機(jī)處理。 DS18B20 的外引腳圖如下: 在電路中 DS18B20 的 VCC 接 +5V 電源,給溫度傳感器提供電源;數(shù)據(jù)輸入 /輸出腳 DQ 與單片機(jī) AT89C51 的 相連,實(shí)現(xiàn)將所測(cè)的溫度讀入 CPU,經(jīng)系統(tǒng)處理后轉(zhuǎn)化為 ASCII 碼通過(guò) ~ 傳送給 LED 顯示電路顯示。 具體程序如下: ORG 0040H TMR0: MOV P0, 40H ; 最 高 一位值送 P0 ORL P0, 01000000B; 點(diǎn)亮最 高 一位 LED數(shù)碼管 ACALL TIMS MOV P0, 41H ORL P0, 00100000B; 點(diǎn)亮 次高 一位 LED數(shù)碼管 ACALL TIMS ORL P0, 00010000B; 點(diǎn)亮 最低 一位 LED數(shù)碼管 ACALL TIMS MOV TH0, LOW(6553510000) ; 定時(shí)器 10ms定時(shí) MOV TL0, HIGH(6553510000) RETI TIMS: MOV R5, 00H; 延時(shí)子程序 TT: MOV R6, 9 DJNZ R6, $ DJNZ R5, TT RET 與 PC 機(jī)的串行通信利用 、 的第二功能 RXD、 TXD 實(shí)現(xiàn)。數(shù)據(jù)通信口 WDLSB DATA 30H 。讀出的溫度高字節(jié) 。定時(shí)顯示 。定時(shí)顯示子程序,采用循環(huán)掃描方式 。串口發(fā)送緩沖 50~52H,ASCII 格式 ORG 0040H TMR0: MOV P0,40H 。 點(diǎn)亮最后一位 CALL T1MS MOV P0,41H ORL P0,01000000B CALL T1MS ORL P0,00100000B CALL T1MS MOV P0,43H ORL P0,00010000B MOV TH0,LOW(6553510000) 。延時(shí)子程序 tt: MOV R6,9 DJNZ R6,$ DJNZ R5,tt RET 。主程序 : MAIN: MOV SP,60H MOV P2,0FFH MOV R2,8 MOV R0,40H 。 清顯示緩沖 INC R0 DJNZ R2,OVER MOV TMOD,21H 。串口波特率 MOV TL1,0FDH MOV SCON,50H 。調(diào)用讀出 DS18B20 溫度程序 SJMP LOOP 。如果沒(méi)有應(yīng)答,返回主程序 MOV R0,0CCH LCALL SEND_BYTE 。發(fā)出溫度轉(zhuǎn)換命令 LCALL SEND_BYTE SETB EA MOV P1,00001111B MOV 48H,1 。跳過(guò) ROM 匹配 LCALL SEND_BYTE MOV R0,0BEH 。********************************************** 。 TRANS12:MOV A,30H 。BCD to ASCII Convert MOV 50H,A ORL A,30H MOV 51H,A MOV A,43H ORL A,30H MOV 52H,A MOV 53H,20H ACALL SEND2PC RET 。發(fā)送給 PC SEND2PC:MOV R1,50H MOV R2,04H SNDPC: MOV SBUF,R1 INC R1 SWT: JBC TI,CHK SJMP SWT CHK: DJNZ R2,SNDPC RET 。發(fā)送一個(gè)字節(jié)程序 MOV A,R0 MOV R5,8 SEN3: CLR C RRC A JC SEN1 LCALL WRITE_0 SJMP SEN2 SEN1: LCALL WRITE_1 SEN2: DJNZ R5,SEN3 。讀一個(gè)字節(jié)程序 MOV R5,8 READ1: LCALL READ RRC A DJNZ R5,READ1 。復(fù)位程序,如果復(fù)位置位 F0,沒(méi)有就復(fù)位 F0 RSTSNR: SETB DAT NOP NOP CLR DAT MOV R6,250 。主機(jī)釋放總線(xiàn),口線(xiàn)改為輸入 MOV R6,15 DJNZ R6,$ CALL CHCK 。檢測(cè)到信號(hào),置位 F0 SJMP CHCK0 RST0: CLR F0 。寫(xiě) 0 MOV R6,30 DJNZ R6,$ SETB DA
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1