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

正文內(nèi)容

基于單片機(jī)水溫控制系統(tǒng)的設(shè)計(jì)-資料下載頁

2025-06-30 20:59本頁面

【導(dǎo)讀】本文介紹了基于AT89S52單片機(jī)水溫測量及控制系統(tǒng)的設(shè)計(jì)??刂齐娐返冉M成。軟件從設(shè)計(jì)思路、軟件系統(tǒng)框圖出發(fā),逐一分析各模塊。程序算法的實(shí)現(xiàn),通過C語言編寫出滿足任務(wù)需求的程序。字式溫度傳感器DS18B20作為溫度傳感器,簡易實(shí)用,方便拓展。機(jī)以此對水的溫度進(jìn)行有效檢測與報(bào)警,并以此進(jìn)行水溫的控制。證了電源能為各部分提供足夠的工作電流,提高系統(tǒng)的可靠性。人、儀器儀表等設(shè)備中,使其智能化。以使得生產(chǎn)能夠順利的進(jìn)行,產(chǎn)品的質(zhì)量才能夠得到充分的保證。能化能夠順利、安全進(jìn)行,從而提高企業(yè)的生產(chǎn)效率。而以往溫度控制是由人工完成的而。且不夠重視,其實(shí)在很多場所溫度都需要監(jiān)控以防止發(fā)生意外。源,無論是在工農(nóng)業(yè)生產(chǎn)還是我們的日常生活處處離不開水。設(shè)定,并能在環(huán)境溫度降低時(shí)實(shí)現(xiàn)自動(dòng)調(diào)整,以保持設(shè)定的溫度基本不變??刂凭仍凇嬉詢?nèi),溫度控制的靜態(tài)誤差小于1℃。送到其他數(shù)據(jù)設(shè)備。普遍的器件ADC0804作模數(shù)轉(zhuǎn)換,

  

【正文】 礎(chǔ) .北京 :北京理工大學(xué)出版社 .20xx [12]李海濱 ,片春媛 ,許瑞雪 .單片機(jī)技術(shù)課程設(shè)計(jì)與項(xiàng)目實(shí)例 .北京 :中國電力出版社 . [13]周潤景 ,徐宏偉 ,丁莉 .單片機(jī)電路設(shè)計(jì)分析與制作 .北京 :機(jī)械工業(yè)出版社 . [14]譚浩強(qiáng) .C 程序設(shè)計(jì) .北京 :清華大學(xué)出版社 .20xx [15]陳杰 ,黃鴻 .傳感器與檢測技術(shù) .北京 :高等教育出版社 .20xx [16]高吉祥 .全國大學(xué)生電子設(shè)計(jì)競培訓(xùn)系列教程 .北京 :電子工業(yè)出版社 .20xx [17]何小艇 .電子系統(tǒng)設(shè)計(jì)(第三版) .杭州 :浙江大學(xué)出版社 .20xx [18]張懷武 .現(xiàn)代印制電路原理與工藝 (第二版 ).北京 :機(jī)械工業(yè)出版社 . [19] 劉同法,肖志剛,彭繼衛(wèi) .C51 單片機(jī) C 程序模板與應(yīng)用工程實(shí)踐 .北京 : 北京航空航天大學(xué)出版社 . [20]王辛之等 .AT89 系列單片機(jī)原理與接口技術(shù) .北京 :北京航空航天大學(xué)出版社 . [21]郭天祥 .51 單片機(jī) C 語言教程 —— 入門、提高、開發(fā)、拓展全攻略 .北 京 :電子工業(yè)出版社 .20xx [22]周向紅 .51 單片機(jī)課程設(shè)計(jì) .武漢 :華中科技大學(xué)出版社 . 湖南科技大學(xué)本科生課程設(shè)計(jì) 24 附錄 附錄一:系統(tǒng)原理圖 湖南科技大學(xué)本科生課程設(shè)計(jì) 25 附錄二:仿真圖 湖南科技大學(xué)本科生課程設(shè)計(jì) 26 附錄三:系統(tǒng)程序 include //52 系列頭文件 include define uchar unsigned char define uint unsigned int sbit ds=P3^4。 sbit dula=P2^6。 sbit beep=P1^4。 //定義蜂鳴器 uint temp,t,w。 //定義整型的溫度數(shù)據(jù) uchar flag。 float f_temp。 //定義浮點(diǎn)型的溫度數(shù)據(jù) //uint low。 //定義溫度下限值 是溫度乘以 10 后的結(jié)果 uint high=100。 //定義溫度的上限值 sbit jdq=P1^0。 //控制發(fā)光二極管 sbit led=P1^1。 //控制發(fā)光二極管 sbit s1=P3^5。 sbit s2=P3^6。 sbit s3=P3^7。 uchar flag1,flag2,flag3,flag4,s1num。 uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xc6}。 // 共陽數(shù)碼管段碼表 uchar code table1[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}。//帶小數(shù)點(diǎn)的編碼 void delay(uchar z) //延時(shí)函數(shù) { uchar a,b。 for(a=z。a0。a) for(b=100。b0。b)。 } void init() { /*EA=1。 ET1=1。 TR1=1。 TMOD=0x10。 湖南科技大學(xué)本科生課程設(shè)計(jì) 27 TH1=(655364000)/256。 TL1=(655364000)%256。*/ flag=0。 high=100。 jdq=1。 } void didi() { beep=0。 led=0。 delay(500)。 beep=1。 led=1。 delay(500)。 } void dsreset(void) //DS18b20 復(fù)位, 初始化函數(shù) { uint i。 ds=0。 i=103。 //延時(shí)最短 480us while(i0) i。 ds=1。 //等待 1660us,收到低電平一個(gè)約 60240us 則復(fù)位成功 i=4。 while(i0) i。 } bit tempreadbit(void) //讀 1 位數(shù)據(jù)函數(shù) { uint i。 bit dat。 ds=0。i++。 ds=1。i++。i++。 //i++起到延時(shí) 作用 dat=ds。 i=8。 while(i0)i。 return(dat)。 } 湖南科技大學(xué)本科生課程設(shè)計(jì) 28 uchar tempread(void) //讀 1 字節(jié)的數(shù)據(jù)函數(shù) { uint i,j,dat。 dat=0。 for(i=1。i=8。i++) { j=tempreadbit()。 dat=(j7)|(dat1)。 //讀出的數(shù)據(jù)最低位在最前面,這樣剛好一個(gè)字節(jié)在 dat 里 } return(dat)。 } void tempwritebyte(uchar dat) //向 DS18B20 寫一個(gè)字節(jié)的數(shù)據(jù)函數(shù) { uint i。 uchar j。 bit testb。 for(j=1。j=8。j++) { testb=datamp。0x01。 dat=dat1。 if(testb) //寫 1 { ds=0。 i++。i++。 ds=1。 i=8。 while(i0) i。 } else //寫 0 { ds=0。 i=8。 while(i0) i。 湖南科技大學(xué)本科生課程設(shè)計(jì) 29 ds=1。 i++。i++。 } } } void tempchange(void) //DS18B20 開始獲取溫度并轉(zhuǎn)換 { dsreset()。 delay(1)。 tempwritebyte(0xcc)。 //寫跳過讀 ROM 指令 tempwritebyte(0x44)。 //寫溫度轉(zhuǎn)換指令 } uint get_temp() //讀取寄存器中存儲(chǔ)的溫度數(shù)據(jù) { uchar a,b。 dsreset()。 delay(1)。 tempwritebyte(0xcc)。 //寫跳過讀 ROM 指令 tempwritebyte(0xbe)。 //寫溫度轉(zhuǎn)換指令 a=tempread()。 //讀低 8 位 b=tempread()。 //讀高 8 位 temp=256*b+a。 f_temp=temp*。 //溫度在寄存器中為 12 位,分辨率為 temp=f_temp*10+。 //乘以 10 表示小數(shù)點(diǎn)后面只取一位 return temp。 //temp 是整型 } void keyscan() { if(s1==0) {P2=0xff。 delay(5)。 if(s1==0) { 湖南科技大學(xué)本科生課程設(shè)計(jì) 30 while(!s1)。 s1num++。 if(s1num==1) { flag=1。 } if(s1num==2) { s1num=0。 flag=0。 } } } if(s1num==1) { flag=1。 if(s2==0) { delay(5)。 if(s2==0) { while(!s2)。 high+=10。 if(high==1000) high=100。 } } if(s3==0) { delay(5)。 if(s3==0) { while(!s3)。 high=10。 if(high==0) 湖南科技大學(xué)本科生課程設(shè)計(jì) 31 high=100。 } } } } void display(uint tem) { uchar i。 keyscan()。 for(i=0。i50。i++) { t++。 if(flag==0) { if(t==4) t=0。 switch(t) { case 0:P0=table[tem/100]。 P2=0x01。break。 case 1:P0=table1[tem%100/10]。P2=0x02。break。 case 2:P0=table[tem%10]。 P2=0x04。break。 } delay(30)。 } if(flag==1) { if(t==4) t=0。 switch(t) { case 1:P0=table[high/100]。 P2=0x01。break。 case 2:P0=table[high%100/10]。P2=0x02。break。 case 3:P0=table[high%10]。 P2=0x04。break。 } delay(30)。 } P2=0。 } 湖南科技大學(xué)本科生課程設(shè)計(jì) 32 } void main() //主函數(shù) { uint tp。 init()。 while(1) { tempchange()。 //溫度轉(zhuǎn)換函數(shù) tp=get_temp()。 display(tp)。 if(tp(high10)) { jdq=0。 didi()。 } if((tp=high10)amp。amp。(temp=high)) { jdq=0。 beep=1。 } display(tp)。 if((tphigh)amp。amp。(tp=high+10)) { jdq=1。 beep=1。 } if(tphigh+10) { jdq=1。 didi()。 } } } 湖南科技大學(xué)本科生課程設(shè)計(jì) 33
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1