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

正文內(nèi)容

單片機(jī)課程設(shè)計(jì)報(bào)告-基于at89c51單片機(jī)的數(shù)顯溫度傳感器設(shè)計(jì)-wenkub

2023-06-21 21:00:18 本頁(yè)面
 

【正文】 計(jì)共分為五部分,主控制器,LED顯示部分,傳感器部分,復(fù)位部分,按鍵設(shè)置部分,時(shí)鐘電路。 2176?!娣秶鷥?nèi),精度為177。DS18B20支持“一線(xiàn)總線(xiàn)”接口,測(cè)量溫度范圍55176。5  調(diào)試硬件。三、 設(shè)計(jì)步驟1  根據(jù)課題,查閱相關(guān)資料。課題二: 基于A(yíng)T89C51單片機(jī)的數(shù)顯溫度傳感器設(shè)計(jì)一、設(shè)計(jì)目的掌握51單片機(jī)最小系統(tǒng)的設(shè)計(jì);掌握溫度傳感器DS18B20的使用;掌握C51的編程方式。2  畫(huà)出系統(tǒng)原理框圖,確定基本電路。6  撰寫(xiě)電子綜合設(shè)計(jì)報(bào)告:字?jǐn)?shù)約2000~3000字(不包括程序清單),格式見(jiàn)附件2)?!?—— +125176。176?!?。主控 制器即單片機(jī)部分,用于存儲(chǔ)程序和控制電路;LED顯示部分是指四位共陰極數(shù)碼管,用來(lái)顯示溫度;傳感器部分,即溫度傳感器,用來(lái)采集溫度,進(jìn)行溫度轉(zhuǎn)換;復(fù)位部分,即復(fù)位電路,按鍵部分用來(lái)設(shè)置上下限報(bào)警溫度。三、設(shè)計(jì)的具體實(shí)現(xiàn)設(shè)計(jì)原理用溫度傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,所以這是非常容易想到的,所以可以采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿(mǎn)足設(shè)計(jì)要求??傮w電路結(jié)構(gòu)框圖所示:共陽(yáng)數(shù)碼管顯示模塊AT89C51單片機(jī)單片機(jī)時(shí)鐘電路及復(fù)位電路DS18BB20溫度傳感器模塊蜂鳴器報(bào)警及LED顯示模塊按鍵控制模塊電源系統(tǒng)設(shè)計(jì)(詳細(xì)介紹各單元電路的選擇、設(shè)計(jì)及工作原理分析,并介紹有關(guān)參數(shù)的計(jì)算及元器件參數(shù)的選擇等,要求有原理圖。蜂鳴器報(bào)警及LED顯示模塊蜂鳴器用于當(dāng)溫度傳感器的輸入的溫度數(shù)值大于認(rèn)為設(shè)定的上限溫度或者小于下限溫度時(shí),系統(tǒng)會(huì)給出相應(yīng)的信號(hào)使得蜂鳴器發(fā)出聲音同時(shí)讓LED燈閃爍顯示,從聽(tīng)覺(jué)和視覺(jué)上同時(shí)提出報(bào)警信號(hào)。DS18BB20溫度傳感器模塊DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式。在正常模式下,按一下K2進(jìn)入查看上限溫度模式,顯示1s左右自動(dòng)退出;按一下K3進(jìn)入查看下限溫度模式,顯示1s左右自動(dòng)退出;按一下K4消除按鍵音,再按一下啟動(dòng)按鍵音。系統(tǒng)的調(diào)試及性能分析:硬件調(diào)試,首先檢查電感的焊接是否正確,然后可用萬(wàn)用表測(cè)試或通電檢測(cè)。由于Proteus并不是很熟練,在使用的過(guò)程中有很多原件的名稱(chēng)不知道,從而花費(fèi)了大量的時(shí)間查閱資料。五、附錄附錄一:元件清單元件名稱(chēng)型號(hào)數(shù)量單片機(jī)最小開(kāi)發(fā)板STC89C521溫度傳感器DS18B201三極管88501蜂鳴器1LED 紅1電阻10k、3k、2k、1k、5330各5各2位一體數(shù)碼管共陽(yáng)2AC/DC(5V/1A)電源1單排插針 402雙排插針 4029X15cm萬(wàn)用板(3連孔)1杜邦線(xiàn)15附錄二:實(shí)物焊接圖附錄三:程序/********************************************************************* 程序名。在調(diào)節(jié)上 下限溫度模式下,K2是實(shí)現(xiàn)加1功能,K1是實(shí)現(xiàn)減1功能, K3是用來(lái)設(shè)定上下限溫度正負(fù)的。 //s1標(biāo)志位用于上下限查看時(shí)的顯示void display1(uint z)。 //初始化定時(shí)器1(未啟動(dòng)定時(shí)器1) get_temperature(1)。 alarm()。 sbit key3=P2^0。 //定義全局變量a用于不同模式下數(shù)碼管顯示的選擇bit k4=0。 //消按鍵音功能調(diào)整位,為‘0’時(shí)開(kāi)按鍵音,為‘1’時(shí)關(guān)按鍵音/******************************************************//* 讀鍵盤(pán)延時(shí)子函數(shù) //*****************************************************/void keyscan_delay(uint z) //延時(shí)1ms左右{ uint i,j。j0。 //延時(shí)10ms if(key2==0) //再次判斷K2是否按下(實(shí)現(xiàn)按按鍵時(shí)消抖) { beer=1。} } if(f!=0) //若溫度為負(fù) { count++。 //K2松開(kāi)按鍵時(shí)消抖 keyscan_delay(10)。 count。 keyscan_delay(10)。 if(key1==0) //K1按按鍵時(shí)消抖 { beer=1。 //在上下溫度調(diào)節(jié)功能模式下選擇KK3的溫度加減功能 i++。 //在正常模式下選擇K4的消按鍵音功能 v=0。 //a=0選擇顯示測(cè)得的溫度 case 1:a=1。 //a=2選擇顯示下限溫度 default:break。amp。amp。 if(k4==1) //k4=1時(shí)K4按鍵選擇正負(fù)溫度設(shè)定功能 { if(key4==0) { if(v2==0)beer=0。else f_max=~f_max。 keyscan_delay(10)。 a=1。 keyscan_delay(10)。 a=2。 keyscan_delay(10)。} //a=0顯示實(shí)測(cè)溫度,v1清零,關(guān)定時(shí)器1 if(k4==0) //k4=0時(shí)K4按鍵選擇消按鍵音的功能 { if(key4==0) { if(v2==0)beer=0。 //為‘0’時(shí)開(kāi)按鍵音,為‘1’時(shí)關(guān)按鍵音 } while(key4==0)。 *********************************************************************/ifndef __ds18b20_h__ //定義頭文件define __ds18b20_h__define uint unsigned int define uchar unsigned char sbit DQ= P2^3。 //測(cè)量溫度的整數(shù)部分uchar temp_d=0。 //下限溫度的標(biāo)志位‘0’表示“正溫度” ‘1’表示“負(fù)溫度”)bit w=0。 for(i=t。j)。 //控制器向DS18B20發(fā)低電平脈沖 ds18b20_delayus(80)。 //延時(shí),等待上拉電阻拉高總線(xiàn) DQ=1。 //準(zhǔn)備讀; for(i=8。 _nop_()。 ds18b20_delayus(10)。i0。 ds18b20_delayus(5)。 uint i。 //寫(xiě)啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換命令,轉(zhuǎn)換結(jié)果存入內(nèi)部RAM if(flag==1) { //首次啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換需要500ms,若轉(zhuǎn)換時(shí)間不夠就出錯(cuò),讀出的是85度的錯(cuò)誤值。 ds18b20_write(0xcc)。 //讀內(nèi)部RAM (MSB) if(flag==1) //局部位變量f=1時(shí)讀上下線(xiàn)報(bào)警溫度 { max=ds18b20_read()。max=(max0x80)。min=(min0x80)。 if (i==0) { f=0。 temp_d=a。 temp=((a4)|(b4))。 }}/******************************************************//* 存儲(chǔ)極限溫度函數(shù) //*****************************************************/void store_t() { if(f_max==1) //若上限溫度為負(fù),將上限溫度轉(zhuǎn)換成有符號(hào)數(shù)(最高位為1是負(fù),為0是正) max=max+0x80。 ds18b20_write(0x4e)。 //向配置寄存器寫(xiě)命令,進(jìn)行溫度值分辨率設(shè)置 ds18b20_init()。TR1=1。} //當(dāng)測(cè)量值大于最小值且小于最大值時(shí)不報(bào)警 } if(f==1){w=1。} if(tempmax )//當(dāng)測(cè)量值小于最大值時(shí)不報(bào)警 {w=0。} } } } if(f_max==1) //若下限值是負(fù)值 { if(f_min==1) //若下限值是負(fù)值 { if(f==1) //若測(cè)量值是負(fù)值 { if((temp=max)||(temp=min)) {w=1。(tempmax)) {w=0。 ds18b20數(shù)碼管動(dòng)態(tài)顯示頭文件* 功 能: 通過(guò)定時(shí)器0延時(shí)使數(shù)碼管動(dòng)態(tài)顯示**********************************************************************/ifndef __ds18b20_display_H__ define __ds18b20_display_H__define uint unsigned int //變量類(lèi)型宏定義,用uint表示無(wú)符號(hào)整形(16位)define uchar unsigned char //變量類(lèi)型宏定義,用uchar表示無(wú)符號(hào)字符型(8位)sbit wei1=P2^4。 //uchar num=0。 //依次是‘不顯示’‘.’‘’‘H’‘L’/*****************************
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1