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

正文內(nèi)容

基于單片機(jī)的煙霧檢測(cè)報(bào)警系統(tǒng)畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-06-27 20:01本頁(yè)面
  

【正文】 DQ) dat|=0x80。Delay_DS18B20(4)。}return(dat)。}/******************************寫一個(gè)字節(jié)****************************/void WriteOneChar(unsigned char dat){unsigned char i=0。for (i=8。 i0。 i){ DQ = 0。 DQ = datamp。0x01。 Delay_DS18B20(5)。 DQ = 1。 dat=1。}}/********************************讀取溫度****************************/unsigned int ReadTemperature(void){unsigned char a=0。unsigned char b=0。unsigned int t=0。float tt=0。Init_DS18B20()。WriteOneChar(0xCC)。 //跳過(guò)讀序號(hào)列號(hào)的操作WriteOneChar(0x44)。 //啟動(dòng)溫度轉(zhuǎn)換Init_DS18B20()。WriteOneChar(0xCC)。 //跳過(guò)讀序號(hào)列號(hào)的操作WriteOneChar(0xBE)。 //讀取溫度寄存器a=ReadOneChar()。 //讀低8位b=ReadOneChar()。 //讀高8位t=b。t=8。t=t|a。tt=t*。t= tt*10+。 //放大10倍輸出并四舍五入return(t)。}include include include include define uint unsigned intdefine uchar unsigned char //宏定義define BEEP P3_4 //定義蜂鳴器define hujiao P1_3 sbit RS=P2^5。sbit RW=P2^6。sbit EN=P2^7。sbit led_h=P1^4。sbit led_l=P1^5。sbit JDQ=P2^0。sbit ADCS = P3^7。sbit ADCLK = P3^5。sbit ADDI = P3^6。sbit ADDO = P3^6。sbit DIAN = P2^5。 //小數(shù)點(diǎn)uint abc。uchar x=4。 //計(jì)數(shù)器signed char m。 //溫度值全局變量uchar n。 //溫度值全局變量uchar data disdata[5]。uchar code LEDData[]={0x28,0xeb,0x32,0xa2,0xe1,0xa4,0x24,0xea,0x20,0xa0}。uchar code table[8]={0x0c,0x12,0x12,0x0c,0x00,0x00,0x00,0x00}。// 攝氏溫度符號(hào)/******************************初始化定時(shí)器0************************/void InitTimer(void){TMOD=0x1。TH0=0x4c。TL0=0x00。 //50ms()}/**************************定時(shí)器0中斷服務(wù)程序**********************/void timer0(void) interrupt 1{TH0=0x4c。TL0=0x00。x++。}/********************************讀取溫度****************************/void check_wendu(void){uint a,b,c。c=ReadTemperature()5。 //獲取溫度值并減去DS18B20的溫漂誤差a=c/100。 //計(jì)算得到十位數(shù)字b=c/10a*10。 //計(jì)算得到個(gè)位數(shù)字m=c/10。 //計(jì)算得到整數(shù)位n=ca*100b*10。 //計(jì)算得到小數(shù)位if(m0){m=0。n=0。} //設(shè)置溫度顯示上限if(m99){m=99。n=9。} //設(shè)置溫度顯示上限 }/*****************************lcd1602程序**************************/void delay1ms(uint ms)//延時(shí)1毫秒(不夠精確的){ uint i,j。 for(i=0。ims。i++) for(j=0。j100。j++)。}unsigned char rolmove(unsigned char m) { unsigned char a,b,c,d,e,f,g,h。 a=(mamp。0x01)7。b=(mamp。0x02)5。c=(mamp。0x04)3。 d=(mamp。0x08)1。e=(mamp。0x10)1。f=(mamp。0x20)3。g=(mamp。0x40)5。h=(mamp。0x80)7。m=a|b|c|d|e|f|g|h。 return m。 }void wr_(uchar )//寫指令//{ delay1ms(1)。 RS=0。 RW=0。 EN=0。 P0=rolmove()。 delay1ms(1)。 EN=1。 delay1ms(1)。 EN=0。}void wr_dat(uchar dat)//寫數(shù)據(jù)//{ delay1ms(1)。 RS=1。 RW=0。 EN=0。 P0=rolmove(dat)。 delay1ms(1)。 EN=1。 delay1ms(1)。 EN=0。}void wr_new() //寫新字符{ uchar i。 wr_(0x40)。 for(i=0。i8。i++) { wr_dat(table[i])。 }}void lcd_init()//初始化設(shè)置//{ delay1ms(15)。 wr_(0x38)。delay1ms(5)。 wr_(0x08)。delay1ms(5)。 wr_(0x01)。delay1ms(5)。 wr_(0x06)。delay1ms(5)。 wr_(0x0c)。delay1ms(5)。 wr_new()。 wr_(0x80)。 wr_dat(39。S39。)。//A wr_(0x81)。 wr_dat(39。m39。)。//: wr_(0x82)。 wr_dat(39。o39。)。 wr_(0x83)。 wr_dat(39。k39。)。 wr_(0x84)。 wr_dat(39。e39。)。 wr_(0x85)。 wr_dat(39。:39。)。 wr_(0x87)。 wr_dat(39。T39。)。 wr_(0x88)。wr_dat(39。e39。)。wr_(0x89)。 wr_dat(39。m39。)。 wr_(0x8a)。 wr_dat(39。:39。)。 wr_(0x8d)。 wr_dat(39。.39。)。 wr_(0x8f)。 wr_dat(39。C39。)。 wr_(0xc0)。 wr_dat(39。A39。)。 wr_(0xc1)。 wr_dat(39。l39。)。 wr_(0xc2)。 wr_dat(39。a39。)。 wr_(0xc3)。 wr_dat(39。r39。)。 wr_(0xc4)。 wr_dat(39。m39。)。 wr_(0xc5)。 wr_dat(39。:39。)。 wr_(0xcb)。 wr_dat(39。39。)。 wr_(0xce)。 wr_dat(39。C39。)。 }/******************************顯示函數(shù)******************************/void disp()//溫度值顯示{ disdata[0]=m/10+0x30。//十位數(shù) disdata[1]=m%10+0x30。//個(gè)位數(shù) disdata[2]=n+0x30。//小數(shù)位 disdata[3]=abc+0x30。//煙霧濃度 wr_(0x8b)。 wr_dat(disdata[0])。//顯示十位 wr_(0x8c)。 wr_dat(disdata[1])。//顯示個(gè)位 wr_(0x8e)。 wr_dat(disdata[2])。//顯示小數(shù)位 wr_(0x86)。wr_dat(disdata[3])。wr_(0x89)。 wr_dat(39。m39。)。 wr_(0x8a)。 wr_dat(39。:39。)。 wr_(0x8d)。 wr_dat(39。.39。)。 wr_(0x8f)。 wr_dat(39。C39。)。 wr_(0xc0)。 wr_dat(39。A39。)。 wr_(0xc1)。 wr_dat(39。l39。)。 wr_(0xc2)。 wr_dat(39。a39。)。 wr_(0xc3)。 wr_dat(39。r39。)。 wr_(0xc4)。 wr_dat(39。m39。)。 wr_(0xc5)。 wr_dat(39。:39。)。 wr_(0xcb)。 wr_dat(39。39。)。 wr_(0xce)。 wr_dat(39。C39。)。 }/*****************************報(bào)警子程序****************************/void Alarm(){if((m=shangxianamp。amp。beep_st==1)||(mxiaxianamp。amp。beep_st==1))BEEP=1。else if(abc=nongduamp。amp。beep_st==1) BEEP=1。else BEEP=0。if(m=shangxian||mxiaxian) {led_h=0。led_l=1。JDQ=0。}else if(abc=nongdu) {led_h=0。led_l=1。JDQ=0。}else {led_h=1。led_l=0。JDQ=1。}if(x=10){beep_st=~beep_st。x=0。}}void Alarm1(){led_h=0。led_l=1。if(x=10){beep_st=~beep_st。x=0。}if(beep_st==1)BEEP=1。else BEEP=0。led_h=0。led_l=1。JDQ=0。}uchar ADC0832(bit mode,bit channel) //AD轉(zhuǎn)換,返回結(jié)果{ uchar i,dat,ndat。 ADCS = 0。//拉低CS端 _nop_()。_nop_()。 ADDI = 1。 //第1個(gè)下降沿為高電平 ADCLK = 1。//拉高CLK端 _nop_()。 _nop_()。 ADCLK = 0。//拉低CLK端,形成下降沿1 _nop_()。 _nop_()。 ADDI = mode。 //低電平為差分模式,高電平為單通道模式。 ADCLK = 1。//拉高CLK端 _nop_()。 _nop_()。 ADCLK = 0。//拉低CLK端,形成下降沿2 _nop_()。 _nop_()。 ADDI = channel。 //低電平為CH0,高電平為CH1 ADCLK = 1。//拉高CLK端 _nop_()。 _nop_()。 ADCLK = 0。//拉低CLK端,形成下降沿3 ADDI = 1。//控制命令結(jié)束(經(jīng)試驗(yàn)必需) dat = 0。 //下面開始讀取轉(zhuǎn)換后的數(shù)據(jù),從最高位開始依次輸出(D7~D0) for(i = 0。i 8。i++) { dat = 1。 ADCLK=1。//拉高時(shí)鐘端 _nop_()。 _nop_()。 ADCLK=0。//拉低時(shí)鐘端形成一次時(shí)鐘脈沖 _nop_()。 _nop_()。 dat |= ADDO。 } ndat = 0。 //記錄D0 if(ADDO == 1) ndat |= 0x80。 //下面開始繼續(xù)讀取反序的數(shù)據(jù)(從D1到D7) for(i = 0。i 7。i++){ ndat = 1。 ADCLK = 1。//拉高時(shí)鐘端 _nop_()。 _nop_()。 ADCLK=0。//拉低時(shí)鐘端形成一次時(shí)鐘
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1