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

正文內(nèi)容

畢業(yè)設(shè)計論文-基于stc89c52單片機(jī)的大棚溫濕度監(jiān)測與報警系統(tǒng)設(shè)計-資料下載頁

2024-11-14 19:53本頁面

【導(dǎo)讀】本人在論文寫作中參考的其他個人或集體的。研究成果,將均在文中以明確方式標(biāo)明。本人依法享有和承。擔(dān)由此論文而產(chǎn)生的權(quán)利和責(zé)任。完成了一款適用于大棚的監(jiān)測與報警系統(tǒng)。該系統(tǒng)主要由環(huán)境參數(shù)采集模塊、數(shù)據(jù)處理模塊、顯示及按鍵模塊和電源模塊幾大部分組成。首先由傳感器采集溫度、濕度數(shù)據(jù),經(jīng)單片機(jī)處。片機(jī)啟動報警模塊。經(jīng)調(diào)試,系統(tǒng)工作性能穩(wěn)定,溫度測量精度可達(dá)℃,濕度測量精度??蛇_(dá)1%,基本達(dá)到預(yù)設(shè)目標(biāo)。

  

【正文】 x53 unsigned char key_[]={0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12}。 uchar ch451_key 。 //讀取鍵值 uint adc_result = 0。 /* AD 計算結(jié)果 */ uchar tem0 , tem1。 uchar temp0 , temp1。 uint f=0。 codeCH[]={CH451_DIG0,CH451_DIG1,CH451_DIG2,CH451_DIG3,CH451_DIG4,CH451_DIG5,CH451_DIG6,CH451_DIG7}。 code key_code[]={0,1,2,3,4,5,6,7,8,9}。 codeKEY_0_9[]={KEY_0,KEY_1,KEY_2,KEY_3,KEY_4,KEY_5,KEY_6,KEY_7,KEY_8,KEY_9,KEY_A,KEY_B}。 sbit ch451_load=P1^2。 sbit ch451_din=P1^0。 sbit ch451_dclk=P1^1。 sbit ch451_dout=P3^3。 sbit GB=P2^0。 //輸出低電平 開風(fēng)扇 sbit FB=P2^1。 //輸出低電平 蜂鳴 報警 sbit CLK = P3^7。 /* AD 時鐘信號 */ sbit CS = P1^4。 /* AD 片選信號 */ sbit DOUT = P1^5。 /* 數(shù)據(jù)輸出 */ /**********************************************************************/ void delay(uchar us) { while(us)。 } void ch451_init() //初始化 { P1=0x70。 //禁止其它芯片 ch451_din=0。 //先低后高,選擇 4 線輸入 ch451_dclk=1。 ch451_din=1。 ch451_load=1。 溫州醫(yī)學(xué)院本科畢業(yè)論文(設(shè)計) 大棚溫濕度監(jiān)測及報警系統(tǒng)的設(shè)計與制作 31 ch451_dout=1。 ifdef USE_KEY // 存放鍵盤中斷中讀取的鍵值 IT1=0。 //置外部信號為低電平觸發(fā) IE1=0。 //清中斷標(biāo)志 PX1=1。 //設(shè)置高優(yōu)先級 EX1=1。 //允許鍵盤中斷 endif } define USE_KEY 1 //0 禁止, 1 使用鍵盤中斷 //************************************************* //延時程序 void delay10ms(){ //在 12P 下延時十毫秒 uchar i,j,k。 for(i=0。i10。i++) for(j=0。j40。j++) for(k=0。k120。k++)。 } //輸出命令子程序 //定義一無符號整型變量存儲 12 字節(jié)的命令字。 void ch451_write(unsigned int mand) { unsigned char i。 ifdef USE_KEY EX1=0。 //禁止鍵盤中斷 endif ch451_load=0。 //命令開始 for(i=0。i12。i++){ //送入 12 位數(shù)據(jù),低位在前 ch451_din=mandamp。1。 ch451_dclk=0。 mand=1。 ch451_dclk=1。 //上升沿有效 } ch451_load=1。 //加載數(shù)據(jù) ifdef USE_KEY EX1=1。 endif } 溫州醫(yī)學(xué)院本科畢業(yè)論文(設(shè)計) 大棚溫濕度監(jiān)測及報警系統(tǒng)的設(shè)計與制作 32 ifdef USE_KEY //************************************************* //輸入命令子程序, MCU 從 451 讀一字節(jié) unsigned char ch451_read() { unsigned char i。 unsigned char mand,keycode。 //定義命令字,和數(shù)據(jù)存儲器 EX1=0。 //關(guān)中段 mand=0x07。 //輸入讀 451 命令字 ch451_load=0。 for(i=0。i4。i++) { ch451_din=mandamp。1。 //送入最低位 ch451_dclk=0。 mand=1。 //往右移一位 ch451_dclk=1。 //產(chǎn)生時鐘上升沿鎖通知 CH451 輸入位數(shù)據(jù) } ch451_load=1。 //產(chǎn)生加載上升沿通知 CH451 處理命令數(shù)據(jù) keycode=0。 //清除 keycode for(i=0。i7。i++){ keycode=1。 //數(shù)據(jù)移入 keycode,高位在前 ,低位在后 keycode|=ch451_dout。 //從高到低讀入 451 的數(shù)據(jù) ch451_dclk=0。 //產(chǎn)生時鐘下升沿通知 CH451 輸出下一位 ch451_dclk=1。 } IE1=0。 //清中斷標(biāo)志 EX1=1。 return(keycode)。 //反回鍵值 } //************************************************* //中斷子程序 使用中斷 2,寄存器組 1 void ch451_inter() interrupt 2 using 1 { unsigned char i。 //定義循環(huán)變量 unsigned char mand,keycode。 //定義控制字寄存器,和中間變量定時器 mand=0x07。 //讀取鍵值命令的高 4 位 0111B ch451_load=0。 //命令開始 溫州醫(yī)學(xué)院本科畢業(yè)論文(設(shè)計) 大棚溫濕度監(jiān)測及報警系統(tǒng)的設(shè)計與制作 33 for(i=0。i4。i++){ ch451_din=mandamp。1。 //低位在前 ,高位在后 ch451_dclk=0。 mand=1。 //右移一位 ch451_dclk=1。 //產(chǎn)生時鐘上升沿鎖通知 CH451 輸入位數(shù)據(jù) } ch451_load=1。 //產(chǎn)生加載上升沿通知 CH451 處理命令數(shù)據(jù) keycode=0。 //清除 keycode for(i=0。i7。i++){ keycode=1。 //數(shù)據(jù)作移一位 ,高位在前 ,低 位在后 keycode|=ch451_dout。 //從高到低讀入 451 的數(shù)據(jù) ch451_dclk=0。 //產(chǎn)生時鐘下升沿通知 CH451 輸出下一位 ch451_dclk=1。 } ch451_key=keycode。 //保存上次的鍵值 IE1=0。 //清中斷標(biāo)志 } endif /* 讀取 AD 輸出的 10bit 數(shù)據(jù) */ uint adc_1549(void) { uint data_out=0。 uchar i。 CS = 1。 // _nop_()。 CS = 0。 for (i=0。 i10。 i++) /* 讀取 10 位數(shù)據(jù) */ { CLK = 0。 data_out = (data_out1)|DOUT。 CLK = 1。 // _nop_()。 } CLK = 0。 CS = 1。 溫州醫(yī)學(xué)院本科畢業(yè)論文(設(shè)計) 大棚溫濕度監(jiān)測及報警系統(tǒng)的設(shè)計與制作 34 delay(3)。 /* 延時 21us 以上 */ return(data_out)。 } /*A/D1549 數(shù) 據(jù) 處 理 及 結(jié) 果 顯 示***********************************************************/ void data_pro() { uint n,n1,kk,kk1,kk2,kk3,kk4,kk5,k1,k2,k3。 kk=(adc_result2730)。 kk1=kk/1000。 n=kk%1000。 kk2=n/100。 n1=n%100。 kk3=n1/10。 kk4=n1%10。 ch451_write((CH[0])|0x10)。 ch451_write((CH[1])|kk2)。 ch451_write((CH[2])|(kk3+0x80))。 ch451_write((CH[3])|kk4)。 kk2=(key_[0]amp。0x0f)。 kk3=(key_[1]amp。0x0f)。 kk4=(key_[2]amp。0x0f)。 kk5=(kk2*100)+(kk3*10)+kk4。 if(n=kk5)GB=0。 else GB=1。 k1=(key_[4]amp。0x0f)。 k2=(key_[5]amp。0x0f)。 k3=k1*10+k2。 if (temp0*10+temp1=k3)FB=0。 else FB=1。 } /**************************************************************************** 溫州醫(yī)學(xué)院本科畢業(yè)論文(設(shè)計) 大棚溫濕度監(jiān)測及報警系統(tǒng)的設(shè)計與制作 35 * 名稱: timer0() * 功能: 定時器 1,每 50000us 中斷一次。 * 入口參數(shù): ****************************************************************************/ void timer0() interrupt 1 { EA =0。 TR0=0。 TR1=0。 TL0=0xFF。 //重裝值 定時 50000us OX4BFFH TH0=0x4B。 tem0 = TL1。 //讀數(shù) tem1 = TH1。 TL1=0x00。 //定時器 1 清零 TH1=0x00。 f=1。 //作標(biāo)注位 TR0=1。 TR1=
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1