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

正文內(nèi)容

基于單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)論文(專(zhuān)業(yè)版)

  

【正文】 每次進(jìn)來(lái)都賦值輸入標(biāo)志,設(shè)置為 0 MOV KEY_BUF_G,DIS_BUF_G 。一共 8 位數(shù)據(jù),串行通信 CLR C WR1: CLR P_DS18B20 MOV R3,07 DJNZ R3,$ RRC A 。程序名稱(chēng) :READ_TEMP 。入口參數(shù) :A 。整數(shù)部分 ANL A,0F0H 。出口參數(shù) :DIS_BUF_X,DIS_BUF_G, DIS_BUF_S, DIS_BUF_B ERR: MOV DIS_BUF_X,08H 。可控硅控制 FLAG EQU 。DS18B20 高 8 位 Buffer TEMPERATURE_HC DATA 32H 。 temp1=raddr()。 ask()。 ask()。 } } //////////////24c256 rdby unsigned char rdby() //從高位開(kāi)始讀出數(shù)據(jù) 畢業(yè)論文設(shè)計(jì) 第 37 頁(yè) 共 49 頁(yè) { unsigned char i。 epr_sd=1。 } }while(i!=0)。 bdata unsigned char temp1。 addr+=2。 hou=time_bcd_temp[2]。 i +=2。 v_RTInputByte(ucAddr)。 rtc_sc = 0。 rtc_sc = 0。 y4=y3。 } DS1820_Delayms(4)。 DS1820_Writebyte(0xcc)。 DS1820_DelayCount(32)。 0x01。 dat = TMDAT。 } //等待 DS18B20 應(yīng)答 //讀取位 bit DS1820_Readbit(void) { data int i=0。 DS1820_DelayCount(412)。 畢業(yè)論文設(shè)計(jì) 第 17 頁(yè) 共 49 頁(yè) 圖 12 溫度轉(zhuǎn)換流程圖 (三 )計(jì)算溫度子程序 計(jì)算溫度子程序?qū)?RAM 中讀取值進(jìn)行 BCD 碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖 13 所示。 DS18B20 有兩種供電方式:一種為數(shù)據(jù)線(xiàn)供電方式,此時(shí) VDD 接地,它是通過(guò)內(nèi)部電容在空閑時(shí)從數(shù)據(jù)線(xiàn)獲取能量,來(lái)完成溫度轉(zhuǎn)換,相應(yīng)的完成溫度轉(zhuǎn)換的 時(shí)間較長(zhǎng)。當(dāng)接有外部程序存儲(chǔ)器或擴(kuò)展 I/O 接口且尋址范圍超過(guò) 256 個(gè)字節(jié)時(shí), P2 口用于高 8 位地址總線(xiàn)送出高 8 位地址。當(dāng)從外部程序存儲(chǔ)器讀取指令或常數(shù)期間,每個(gè)機(jī)器周期 PESN 兩次有效,以通過(guò)數(shù)據(jù)總線(xiàn)口讀回指令或常數(shù)。多數(shù) STC89C52 指令周期為 1— 2 個(gè)機(jī)器周期,只有乘法和除法指令需要兩個(gè)以上機(jī)器周期的指令,它們需 4個(gè)機(jī)器周期。 二、硬件電路的設(shè)計(jì) (一 )系統(tǒng)設(shè)計(jì)的框架 本課題設(shè)計(jì)的是一種以 STC89C52 單片機(jī)為主控制單元,以 DS18B20 為溫度傳感器的溫度控制系統(tǒng)。畢業(yè)論文設(shè)計(jì) 第 1 頁(yè) 共 49 頁(yè) 畢業(yè)設(shè)計(jì)(論文) 題目名稱(chēng): 基于單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì) 畢業(yè)論文設(shè)計(jì) 第 2 頁(yè) 共 49 頁(yè) 基于單片機(jī)溫度控制系統(tǒng)的設(shè)計(jì) 中文 摘要 隨著微機(jī)測(cè)量和控制技術(shù)的迅速發(fā)展與廣泛應(yīng)用,以單片機(jī)為核心的溫度采集與控制系統(tǒng)的研發(fā)與應(yīng)用在很大程度上提高了生產(chǎn)生活中對(duì)溫度的控制水平。該控制系統(tǒng)可以實(shí)時(shí)存儲(chǔ)相關(guān)的溫度數(shù)據(jù)并記錄當(dāng)前的時(shí)間。 對(duì)于雙字節(jié)單機(jī)器指令,通常是在一個(gè)機(jī)器周期內(nèi)從 程序存儲(chǔ)器中讀人兩個(gè)字節(jié),但 Movx 指令例外, Movx 指令是訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器的單字節(jié)雙機(jī)器周期指令,在執(zhí)行 Movx 指令期間,外部數(shù)據(jù)存儲(chǔ)器被訪問(wèn)且被選通時(shí)跳過(guò)兩次取指操作。當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器期間, PESN 信號(hào)將不出現(xiàn)。對(duì)于 EPROM 編程和進(jìn)行程序校驗(yàn)時(shí), P2口接收輸入的 8 位地址。這種情況下,用單片機(jī)的一個(gè) I/O 口來(lái)完成對(duì) DS18B20 總線(xiàn)的上拉。 畢業(yè)論文設(shè)計(jì) 第 18 頁(yè) 共 49 頁(yè) 圖 13 計(jì)算溫度子程序 (四 )顯示數(shù)據(jù)刷新子程序 顯示數(shù)據(jù)刷新子程序主要是對(duì)顯示緩沖器中的顯示數(shù)據(jù)進(jìn)行刷新操作,當(dāng)最高顯示位為 0 時(shí)將符 號(hào)顯示位移入下一位。 TMDAT=1。 畢業(yè)論文設(shè)計(jì) 第 25 頁(yè) 共 49 頁(yè) bit dat。 // DS1820_DelayCount(8)。 畢業(yè)論文設(shè)計(jì) 第 26 頁(yè) 共 49 頁(yè) dat = dat1。 TMDAT=1。 // DS1820_Writebyte(0x55)。 DS1820_Writebyte(0xcc)。 y4=(y4*25)/4。 temp = temp 1。 rtc_rs_port|=rtc_rs_bit。 /* 地址 ,命令 */ ucDa = uc_RTOutputByte()。 write1302(i,time_tempmon)。 day=time_bcd_temp[3]。 } write1302(0x8e,0x80)。 sbit temp1_0 = temp1^0。 epr_sd=1。 epr_sd=0。 epr_sd=1。} ///////////////24c256 raddr unsigned char raddr() { start()。 wrby(n )。 EA=ea。計(jì)算后的百位和十位的 BCD 碼存放 。標(biāo)志位 ,確定是否存在 DS18B20 ENTER_FLAG EQU 。如果沒(méi)有找到 DS18B20,那么就顯示錯(cuò)誤,錯(cuò)誤 。得到個(gè)位 ‘單個(gè)數(shù)值 SWAP A 。出口參數(shù) :R7 HtoB: MOV B,064H 。功能 :讀取 DS18B20 的數(shù)據(jù) 。循環(huán)右移 MOV P_DS18B20,C MOV R3,3CH DJNZ R3,$ 。將當(dāng)前的溫度賦值給 KEY_BUF MOV KEY_BUF_S,DIS_BUF_S MOV KEY_BUF_B,DIS_BUF_B K_LOOP: JB ENTER_FLAG,QUIT 。如果又 Enter 鍵入,則開(kāi)始鍵盤(pán)輸入 LCALL K_DELAY JB K_ENTER,QUIT CLR ENTER_FLAG 。出口參數(shù) :無(wú) WRITE_18B20: MOV R2,8 。時(shí)序要求延時(shí)一段時(shí)間 TSR7: SETB P_DS18B20 RET 。功能 :十六進(jìn)制轉(zhuǎn) BCD 。小數(shù)位的 BCD 碼送入顯示 buffer 中 畢業(yè)論文設(shè)計(jì) 第 42 頁(yè) 共 49 頁(yè) MOV A,TEMPERATURE_L 。入口參數(shù) :無(wú) 。讀取 DS18B20 的輸入端口 P_SWITCH EQU 。DS18B20 低 8 位 Buffer TEMPERATURE_H DATA 30H 。 w16addr(x)。 wrby(m )。 wrby(0xa0)。 epr_sc=0。 epr_sd=1。 i=0。 sbit epr_sc=P3^2。i++) { write1302(addr,*(ptr+i))。 min=time_bcd_temp[1]。 write1302(i,time_tempday)。 rtc_rs_port|=rtc_rs_bit。=(~rtc_rs_bit)。 /*相當(dāng)于匯編中的 RRC */ rtc_sc = 1。 y3 = (b 8)|a。 return(0xffff)。 DS1820_Delayms(4)。 //DS1820_DelayCount(8)。j++) { testb=dat amp。i++。 return(done_return)。 } //復(fù)位 DS18B20 void DS1820_Reset(void) { TMDAT=0。其程序流程框圖如圖 12 所示。 DS18B20 溫度傳感器只有三根外引線(xiàn):?jiǎn)尉€(xiàn)數(shù)據(jù)傳輸總線(xiàn)端口 DQ ,外供電源線(xiàn) VDD,共用地線(xiàn) GND。 (C).P2 口( 21 腳~ 28 腳): ~ 統(tǒng)稱(chēng)為 P2 口,一般可作為準(zhǔn)雙向 I/O 接口。 ( B). ALE/ P ( 30 腳):當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí), ALE(允許地址鎖存信號(hào))以每機(jī)器周期 兩次的信號(hào)輸出,用于鎖存出現(xiàn)在 P0 口的低 ( C). PSEN(29 腳 ):片外程序存儲(chǔ)器讀選通輸出端 ,低電平有效。在加結(jié)束時(shí)完成指令操作。 通過(guò)該課程的學(xué)習(xí)使我們對(duì)計(jì)算機(jī)控制系統(tǒng)有一個(gè)全面的了解、掌握常規(guī)控制算法的使用方法、掌握簡(jiǎn)單微型計(jì)算機(jī)應(yīng)用系統(tǒng)軟硬的設(shè)計(jì)方法,進(jìn)一步鍛煉同學(xué)們?cè)谖⑿陀?jì)算機(jī)應(yīng)用方面的實(shí)際工作能力。 本設(shè)計(jì)論述了一種以 STC89C52 單片機(jī)為主控制單元 ,以 DS18B20 為溫度傳感器的溫度控制系統(tǒng)。其主要包括:電源模塊、溫度采集模塊、按鍵處理模塊、實(shí)時(shí)時(shí)鐘模塊、數(shù)據(jù)存儲(chǔ)模塊、 LCD 顯 示模塊、通訊模塊以及單片機(jī)最小系統(tǒng)。 畢業(yè)論文設(shè)計(jì) 第 8 頁(yè) 共 49 頁(yè) 單片機(jī)引腳介紹 STC89C52 單片機(jī)的 40 個(gè)引腳中有 2個(gè)專(zhuān)用于主電源引腳, 2 個(gè)外接晶振的引腳, 4個(gè)控制或與其它電源復(fù)用的引腳,以及 32 條輸入輸出 I/O 引腳。 ( D). EA/Vpp( 31 腳): EA 為訪問(wèn)外部程序儲(chǔ)器控制信號(hào),低電平有效。 (D).P3 口( 10 腳~ 17 腳): ~ 統(tǒng)稱(chēng)為 P3 口。另一種是外部供電方式 (VDD 接 +5V),相應(yīng)的完成溫度測(cè)量的時(shí)間較短。程序流程圖如圖 14。 DS1820_DelayCount(16)。 TMDAT=0。 DS1820_DelayCount(32)。 if(testb) { TMDAT=0。 i++。 // for(i=0。 //跳過(guò)匹配傳感器 //DS1820_Writebyte(0x55)。 EA=1。 } } //功能 : 從 DS1302 讀取 1Byte 數(shù)據(jù) unsigned char uc_RTOutputByte(void) { unsigned char i。 v_RTInputByte(ucAddr)。 /* 讀 1Byte 數(shù)據(jù) */ rtc_sc = 1。 i +=2。 mon=time_bcd_temp[4]。 //寫(xiě)保護(hù)置高 (打開(kāi) ) } void Start1302(void) { unsigned char temp。 sbit temp1_7 = temp1^7。 epr_sd=1。 epr_sd=0。 epr_sd=1。 畢業(yè)論文設(shè)計(jì) 第 38 頁(yè) 共 49 頁(yè) wrby(0xa1)。 ask()。//開(kāi)中斷 return(temp1)。BUFFER TEMPERATURE_LC DATA 33H 。鍵盤(pán)輸入的標(biāo)志位 , ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV SP,60H 。顯示為 888 MOV DIS_BUF_G,08H MOV DIS_BUF_S,08H MOV DIS_BUF_B,08H LCALL DISPLAY RET 。SWAP 后就得到個(gè)位真正的個(gè)位 MOV TEMPERATURE_L,A MOV A,TEMPERATURE_H ANL A,0FH SWAP A ORL A,TEMPERATURE_L MOV TEMPERATURE_ZH,A 。
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1