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

正文內(nèi)容

基于單片機溫度控制系統(tǒng)的設(shè)計畢業(yè)論文(完整版)

2025-07-30 15:55上一頁面

下一頁面
  

【正文】 片機的連接,其接口電路如圖4所示。一支DS18B20的體積與普通三極管相差無幾,價格只有十元人民幣左右。(D).P3口(10腳~17腳):~。它分時提供8位雙向數(shù)據(jù)總線。(D).EA/Vpp(31腳):EA為訪問外部程序儲器控制信號,低電平有效。對于CHMOS芯片,該引腳懸空不接。STC89C52單片機的40個引腳中有2個專用于主電源引腳,2個外接晶振的引腳,4個控制或與其它電源復(fù)用的引腳,以及32條輸入輸出I/O引腳。這樣,一個機器周期由12個振蕩周期組成。其主要包括:電源模塊、溫度采集模塊、按鍵處理模塊、實時時鐘模塊、數(shù)據(jù)存儲模塊、LCD顯示模塊、通訊模塊以及單片機最小系統(tǒng)。(二)課題研究的目的和意義隨著社會的發(fā)展,溫度的測量及控制變得越來越重要。本文采用單片機STC89C52設(shè)計了溫度實時測量及控制系統(tǒng)。圖1 系統(tǒng)設(shè)計框架(二)單片機最小系統(tǒng)電路在課題設(shè)計的溫度控制系統(tǒng)設(shè)計中,控制核心是STC89C52單片機,該單片機為51系列增強型8位單片機,它有32個I/O口,片內(nèi)含4K FLASH工藝的程序存儲器,便于用電的方式瞬間擦除和改寫,而且價格便宜,其外部晶振為12MHz,一個指令周期為1μS。若采用12MHz的晶體振蕩器,則每個機器周期為1us,每個狀態(tài)周期為1/6us;在一數(shù)情況下,算術(shù)和邏輯操作發(fā)生在N期間,而內(nèi)部寄存器到寄存器的傳輸發(fā)生在P2期間。下面按引腳功能分為4個部分?jǐn)⑹鰝€引腳的功能。(3)控制信號或與其它電源復(fù)用引腳 控制信號或與其它電源復(fù)用引腳有RST/VPD、ALE/P、PSEN和EA/VPP等4種形式。當(dāng)EA端保持高電平時,單片機訪問片內(nèi)程序存儲器4KB(MS—52子系列為8KB)。對于片內(nèi)含有EPROM的單片機,當(dāng)EPROM編程時,從P0口輸入指令字節(jié),而當(dāng)檢驗程序時,則輸出指令字節(jié)。它為雙功能口,可以作為一般的準(zhǔn)雙向I/O接口,也可以將每1位用于第2功能,而且P3口的每一條引腳均可獨立定義為第1功能的輸入輸出或第2功能。(3)系統(tǒng)復(fù)雜度:由于DS18B20是單總線器件,微處理器與其接口時僅需占用1個I/O端口且一條總線上可以掛接幾十個DS18B20,測溫時無需任何外部元件,因此,與模擬傳感器相比,可以大大減少接線的數(shù)量,降低系統(tǒng)的復(fù)雜度,減少工程的施工量。圖4 溫度傳感器接口(五)系統(tǒng)電源電路的設(shè)計本系統(tǒng)采用電源穩(wěn)壓芯片是LM2596,該開關(guān)電壓調(diào)節(jié)器是降壓型電源管理單片集成電路,能夠輸出3A的驅(qū)動電流,輸入電壓是+5v,輸入電壓是+24v,同時具有很好的線性和負(fù)載調(diào)節(jié)特性。開始初始化啟動DB18B20讀溫度計算溫度LCD顯示圖10系統(tǒng)程序流程圖(一)計算溫度子程序 讀出溫度子程序的主要功能包括初始化,判斷DS18B20是否存在,若存在則進行一系列的讀操,作若不存在則返回。實踐過程中我們遇到了一些困難,但在解決問題的過程中,我們學(xué)會了團隊合作精神和怎樣發(fā)現(xiàn)問題、分析問題,進而解決問題。 while(Count0) Count。 data unsigned char j。 else { j。i++。i++。}//讀取字節(jié)unsigned char DS1820_Readbyte(void){data unsigned char i,j,dat=0。 bit testb。i++。 //DS1820_DelayCount(8)。i++。 if(DS1820_Answer()==aban_return) { EA=Ea。i++) //DS1820_Writebyte(DS1820_temp[i])。 EA=0。i8。 } //計算CRC a = [0]。}二、DS1302時鐘底層驅(qū)動程序//DS1302引腳定義sbit rtc_sc=P3^4。for(i=8。for(i=8。 ea=EA。 /* 寫1Byte數(shù)據(jù)*/rtc_sc = 1。rtc_rs_portamp。=(~rtc_rs_bit)。 i +=2。 i +=2。i++) { time_bcd_temp[i] = read1302(ucAddr)。} //連續(xù)6字節(jié)讀出程序void ds1302_read(unsigned char *ptr,unsigned char addr){ unsigned char i。 write1302(0x8e,0x00)。 ea=EA。 write1302(0x8e,0x80)。 epr_sc=1。 epr_sc=1。}void stop(){ epr_sd=0。 epr_sd=1。}void wrby(unsigned char x){ unsigned char i。 epr_sc=1。 for(i=0。 epr_sc=0。 temp1=rdby()。 =x。 for (a=0。 //關(guān)中斷 EPR_WEN。 ea=EA。 d5ms()。 計算后十位和個位HEX碼的存放BUFFERDIS_BUF_X DATA 35H 。上調(diào)按鈕 K_DOWN EQU 。由于KEY_BUF是由用戶輸入的,所以先賦值初始化 MOV KEY_BUF_S,00H MOV KEY_BUF_B,00HNEXT: LCALL READ_TEMP 。處理可控硅 AJMP NEXT。功能:處理采集后的的數(shù)據(jù)。寫回TEMPERATURE_HMOV TEMPERATURE_HC,0BHSJMP TEMPC11TEMPC1: MOV TEMPERATURE_HC,0AH TEMPC11: MOV A,TEMPERATURE_HC SWAP A MOV TEMPERATURE_HC,A MOV A,TEMPERATURE_L ANL A,0FH MOV DPTR,TEMPDOTTAB MOVC A,A+DPTR 。轉(zhuǎn)換HEx值成為BCD碼 MOV TEMPERATURE_L,A ANL A,0F0HSWAP AORL A,TEMPERATURE_HC 。*5 = 03H。 MOV A,0AH XCH A,B DIV AB SWAP A ORL A,B RET。延時TSR3: SETB FLAG 。先復(fù)位DS18B20 JB FLAG,TSS2 RET 。將讀出的溫度數(shù)據(jù)保存到35H/36H RET程序名稱:WRITE_18B20。釋放總線RET。功能:掃描鍵盤。程序名稱:PRO_ENTER。出口參數(shù):DIS_BUF_G,DIS_BUF_S,DIS_BUF_BPRO_UP:CALL K_DELAYJB K_UP,K_LOOP 。程序名稱:PRO_DOWN。十位低于0,溢出了MOV R0,200ERROR2: LCALL ERR 。接退出JNZ SNEXTMOV A,KEY_BUF_SJNZ SNEXT MOV A,KEY_BUF_BJZ SQUITSNEXT: CALL SET_DIS_BUFMOV A,KEY_BUF_SSUBB A,DIS_BUF_SJC COOLJNZ HOT 。功能:賦值給DIS_BUF_G, DIS_BUF_S, DIS_BUF_B。符號位不顯示MOV 72H,A 。P2口復(fù)位RETDS1M: MOV R7,0FFHDJNZ R7,$RET。6DB 0F8H 。8DB 090H 。0DB 0F9H 。程序名稱:DISPLAY。出口參數(shù):DIS_BUF_G, DIS_BUF_S, DIS_BUF_BSET_DIS_BUF: MOV A,TEMPERATURE_LC ANL A,0FH MOV DIS_BUF_X,A 。P_SWITCH為0說明當(dāng)前溫度小于設(shè)定溫度,要升溫。退回00MOV KEY_BUF_G,00HDOWNNEXT:MOV DIS_BUF_G,KEY_BUF_G 。入口參數(shù):KEY_BUF_G,KEY_BUF_S,KEY_BUF_B。個位增一MOV A,KEY_BUF_G CJNE A,0AH,UPNEXT 。入口參數(shù):ENTER_FLAG。出口參數(shù):KEY_BUF_G,KEY_BUF_S,kEY_BUF_BSCAN_KEY:JB K_ENTER,QUIT 。功能:讀取18B20中的數(shù)據(jù),由于是串行通信,每次讀取一個,循環(huán)8次讀取。入口參數(shù):A 寄存器。跳過ROM匹配 LCALL WRITE_18B20 MOV A,44H 。清標(biāo)志位,表示DS1820不存在 LJMP TSR7TSR5: MOV R0,06BHTSR6: DJNZ R0,TSR6 。功能:初始化DS18B20,確定DS18B20是否是存在的。程序名稱:HtoB。TEMPERATURE_HC HI = 百位數(shù) BCDANL A,0FHORL A,R7MOV TEMPERATURE_HC,ATEMPC12: RET 。TEMPERATURE_LC LOW=小數(shù)部分 BCD MOV DIS_BUF_X,A 。出口參數(shù):DIS_BUF_G, DIS_BUF_S, DIS_BUF_DATA_DEAL:MOV A,TEMPERATURE_H 。功能:程序出錯處理,顯示四個8,即8888。判斷是否有DS18B20的存在 CALL ERR 。輸入數(shù)據(jù)確認(rèn)按鈕 P_DS18B20 EQU 。數(shù)碼管個位Buffer DIS_BUF_S DATA 37H 。 //開中斷}//存儲器驅(qū)動程序結(jié)束匯編部分:TEMPERATURE_L DATA 31H 。 //關(guān)中斷 d5ms()。 waddr()。a++) { for (b=0。 n=[1]。 stop()。}///////////////24c256 waddr void waddr(){ start()。i++) { epr_sc=1。 epr_sc=1。 temp1=x。}///24c256 startvoid start(){ epr_sc=1。 epr_sd=0
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1