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

正文內(nèi)容

畢業(yè)設(shè)計論文基于單片機的數(shù)字溫度計-資料下載頁

2025-06-28 11:46本頁面
  

【正文】 論本文介紹了基于89C52單片機的數(shù)字溫度計控制系統(tǒng)的設(shè)計,對整個硬件電路和軟件程序設(shè)計做了分析,文中介紹了數(shù)字溫度計的現(xiàn)狀及發(fā)展,介紹了仿真軟件proteus及keil的基本知識,學(xué)習(xí)了proteus的仿真方法和步驟,介紹了數(shù)字溫度計的設(shè)計方案及原理介紹,加深了52單片機的知識了解,介紹52單片機的結(jié)構(gòu)、特點等。并學(xué)習(xí)了數(shù)字溫度傳感器DS18B20,設(shè)計軟件仿真,更直觀的反應(yīng)設(shè)計的正確性。本文對其中的一些基本原理也做了簡要的概述。其實寫完了本篇論文,也僅僅是對數(shù)字溫度計控制系統(tǒng)做出了一個簡單的設(shè)計方案,數(shù)字溫度計科利用在很多領(lǐng)域,在一些人不能直接進入的場所,利用單片機控制的數(shù)字溫度計,可以設(shè)置并控制其中的溫度,數(shù)字溫度計還可以利用在溫室中,這樣就可以方便的控制溫室中的溫度,當(dāng)溫度超過所要求的溫度時,可發(fā)生報警??傊?dāng)?shù)字溫度計利用在很多領(lǐng)域。本課題只是單片機控制數(shù)字溫度計系統(tǒng)得一種設(shè)計方法。致謝通過這一階段的努力,我的畢業(yè)論文《基于單片機的數(shù)字溫度計》終于完成了,這意味著大學(xué)生活即將結(jié)束。在大學(xué)階段,我在學(xué)習(xí)上和思想上都受益非淺,這除了自身的努力外,與各位老師、同學(xué)和朋友的關(guān)心、支持和鼓勵是分不開的。在我寫本論文的過程中,老師們給我提供了許多資料,并對實踐中出現(xiàn)的問題給予耐心的解答,完稿之后在百忙之中仔細閱讀,給出修改意見,在此對他們表示感謝。參考文獻1 (第三版) .北京:高等教育出版社,2006.2 (第五版) .北京:高等教育出版社,2006.3 李全利,仲偉峰,:清華大學(xué)社,2006.4 何立民著.單片機高級教程.北京:北京航空航天大學(xué)出版社,2000.5 譚浩強著.C語言程序設(shè)計教程(第三版) .北京:清華大學(xué)出版社,2005.6 馬忠梅,籍順心,(第4版) .北京:北京航天航空大學(xué)出版社,2007.7 白駒珩,雷曉平著.單片計算機及其應(yīng)用.成都:電子科技大學(xué)出版社,1997.8 譚浩強著.程序設(shè)計與開發(fā)技術(shù).北京:清華大學(xué)出版社,1991.9 :人民郵電出版,2007.10 于永,戴佳,:電子工業(yè)出版社,2007.附錄A 系統(tǒng)整體電路附錄B 全部程序清單includedefine uchar unsigned char define uint unsigned int uchar i。sbit lcdrs=P3^0。sbit lcdrw=P3^1。sbit lcden=P3^2。sbit d1=P1^0。sbit d2=P1^1。uchar code t0[]=the temperature 。uchar code t1[]= is 。uchar code wendu[]=0123456789。 //利用一個溫度表解決溫度顯示亂碼sbit DQ = P3^7。//定義ds18B20總線IO//液晶顯示模塊void delay(uint z){ uint x,y。 for(x=100。x1。x) for(y=z。y1。y)。}void write_(uchar ){ lcdrs=0。 P2=。 delay(5)。 lcden=1。 delay(5)。 lcden=0。}void write_date(uchar date){ lcdrs=1。 P2=date。 delay(5)。 lcden=1。 delay(5)。 lcden=0。}void init_lcd(){ lcden=0。 lcdrw=0。 write_(0x38)。 write_(0x01)。 write_(0x0c)。 write_(0x06)。 write_(0x80)。 for(i=0。i16。i++) { write_date(t0[i])。 delay(0)。 } write_(0x80+0x40)。 for(i=0。i16。i++) { write_date(t1[i])。 delay(0)。 }}//溫度采集模塊void tmpDelay(int num)//延時函數(shù){ while(num) 。} void Init_DS18B20()//初始化ds1820{ unsigned char x=0。 DQ = 1。 //DQ復(fù)位 tmpDelay(8)。 //稍做延時 DQ = 0。 //單片機將DQ拉低 tmpDelay(80)。 //精確延時 大于 480us DQ = 1。 //拉高總線 tmpDelay(14)。 x=DQ。 //稍做延時后 如果x=0則初始化成功 x=1則初始化失敗 tmpDelay(20)。} unsigned char ReadOneChar()//讀一個字節(jié){ unsigned char i=0。 unsigned char dat = 0。 for (i=8。i0。i) { DQ = 0。 // 給脈沖信號 dat=1。 DQ = 1。 // 給脈沖信號 if(DQ) dat|=0x80。 tmpDelay(4)。 } return(dat)。}void WriteOneChar(unsigned char dat)//寫一個字節(jié){ unsigned char i=0。 for (i=8。 i0。 i) { DQ = 0。 DQ = datamp。0x01。 tmpDelay(5)。 DQ = 1。 dat=1。 }} unsigned int Readtemp()//讀取溫度{ unsigned char a=0。 unsigned char b=0。 unsigned int t=0。 float tt=0。 Init_DS18B20()。 WriteOneChar(0xCC)。 // 跳過讀序號列號的操作 WriteOneChar(0x44)。 // 啟動溫度轉(zhuǎn)換 Init_DS18B20()。 WriteOneChar(0xCC)。 //跳過讀序號列號的操作 WriteOneChar(0xBE)。 //讀取溫度寄存器 a=ReadOneChar()。 //連續(xù)讀兩個字節(jié)數(shù)據(jù) //讀低8位 b=ReadOneChar()。 //讀高8位 t=b。 t=8。 t=t|a。 //兩字節(jié)合成一個整型變量。 tt=t*。 //得到真實十進制溫度值, t= tt*10+。 //放大十倍,這樣做的目的將小數(shù)點后第一位也轉(zhuǎn)換為可顯示數(shù)字,同時進行一個四舍五入操作。 return(t)。}void display(){ unsigned int num,num1。 unsigned int shi,ge,xiaoshu。 num=Readtemp()。 num1=num/10。 if(num137) {d1=0。d2=1。delay(500)。} if(num110) {d1=1。d2=0。delay(500)。} else {d1=1。d2=1。} shi=num/100。 ge=num/10%10。 xiaoshu=num%10。 write_(0x80+0x40+5)。 write_date(wendu[shi])。 write_(0x80+0x40+6)。 write_date(wendu[ge])。 write_(0x80+0x40+7)。 write_date(0x2e)。 write_(0x80+0x40+8)。 write_date(wendu[xiaoshu])。}void main(){ init_lcd()。 while(1) { display()。 delay(10)。 }
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1