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

正文內(nèi)容

基于單片機煙霧警報器系統(tǒng)的設(shè)計與實現(xiàn)畢業(yè)論文-資料下載頁

2025-06-27 19:58本頁面
  

【正文】 n_Key(void)。void delay_ms(unsigned char)。void baojin(void)。endif)(2)ADC0832模數(shù)程序模塊ifndef _ADC0832_H_define _ADC0832_H_//include include include define uchar unsigned chardefine uint unsigned int extern void _nop_ (void)。/*********************************************************************** 函數(shù)名 :ADC0832讀數(shù)據(jù)程序** 入口 :需轉(zhuǎn)換通道channel [0:1]** 返回 : 無符號字符型 uchar** 例子 : Data_adc = ReadAdc0832( 0 )。 //讀取adc0832芯片的0通道模擬電壓** 說明 : 使用時請在芯片加上精準(zhǔn)電壓源, 建議彩專用芯片*********************************************************************/uchar ReadAdc0832( uchar channel )。//ADC0832端口定義sbit P3_2 = P2^1。 //scksbit P3_3 = P2^2。 //IOsbit P3_4 = P2^0。 //片選define ADC0832_SCK_H P3_2 = 1define ADC0832_SCK_L P3_2 = 0define ADC0832_DIDO_H P3_3 = 1define ADC0832_DIDO_L P3_3 = 0define ADC0832_DIDO P3_3define ADC0832_CS_H P3_4 = 1define ADC0832_CS_L P3_4 = 0 //工作時序//當(dāng)cs由高變低時,選中ADC0832。在時鐘的上升沿,DI端的數(shù)據(jù)移入ADC0832內(nèi)部的多路地址移位寄存器。//在第一個時鐘期間,Dl為高,表示啟動位,緊接著輸入兩位配置位。當(dāng)輸入啟動位和配置位后,選通輸入模擬通道,轉(zhuǎn)換開始。//轉(zhuǎn)換開始后,經(jīng)過一個時鐘周期延遲,以使選定的通道穩(wěn)定。ADC0832接著在第4個時鐘下降沿輸出轉(zhuǎn)換數(shù)據(jù)。//數(shù)據(jù)輸出時先輸出最高位(D7~DO);輸出完轉(zhuǎn)換結(jié)果后,又以最低位開始重新輸出一遍數(shù)據(jù)(D7~DO),兩次發(fā)送的最低位共用。當(dāng)片選cS//為高時,內(nèi)部所有寄存器清0,輸出變?yōu)楦咦钁B(tài)。如果要再進行一次模傲轉(zhuǎn)換,片選cs必須再次從高向低跳變,后面再輸入啟動位和配置位//adc0832讀數(shù)據(jù)uchar ReadAdc0832(uchar channel){ uchar i = 0。 uchar outdata = 0。 //初始化: 選通 數(shù)據(jù)口保持高電平 //當(dāng)cs由高變低時,選中ADC0832。在時鐘的上升沿,DI端的數(shù)據(jù)移入ADC0832內(nèi)部的多路地址移位寄存器 ADC0832_CS_L。 // 使能 ADC0832_DIDO_H。 // ADC0832_SCK_L。 //第一次觸發(fā) _nop_()。 _nop_()。 ADC0832_SCK_H。 // _nop_()。 _nop_()。 //模擬通道的選擇及單端輸入和差分輸入的選擇 ADC0832_DIDO_H。 ADC0832_SCK_L。 //第二次觸發(fā) _nop_()。 _nop_()。 ADC0832_SCK_H。 _nop_()。 _nop_()。 if( channel == 1 ) { ADC0832_DIDO_H。 } else { ADC0832_DIDO_L。 } ADC0832_SCK_L。 //第三次觸發(fā) _nop_()。 _nop_()。 ADC0832_SCK_H。 _nop_()。 _nop_()。 ADC0832_SCK_L。 _nop_()。 _nop_()。 ADC0832_DIDO_H。 //置為輸入準(zhǔn)備讀數(shù)據(jù) ADC0832_SCK_H。 _nop_()。 _nop_()。outdata = 0。 //初始化 //讀數(shù)據(jù)D7~D0 for( i = 1。 i = 8。 i++ ) { if( ADC0832_DIDO == 1 ) { outdata |= 0x01。 } ADC0832_SCK_H。 ADC0832_SCK_L。 outdata = outdata 1。 //左移一位 } //此函數(shù)不再讀數(shù)據(jù)D0~D7 (注意D0位重疊) ADC0832_CS_H。 //禁止 return outdata。}endif //(3)數(shù)碼管與指示燈顯示模塊程序includeincludedefine laddata =P0。unsigned char code table[]={0xaf,0xe0,0xa2,0x2b,0x32,0x30,0xa7}。extern unsigned char id=0。extern unsigned char value。unsigned char level。bit h_temp=0, l_temp=0。// 定義閃爍標(biāo)志位 //timecount用于5000d定時記數(shù) 時間到取反標(biāo)志位 RE re_disp int flag=1。float nongdu。unsigned int data dis[4]={0x00,0x00,0x00,0x00}。 //定義3個顯示數(shù)據(jù)單元和一個數(shù)據(jù)存儲單元 sbit beep= P1^0。sbit one = P2^7。sbit alarmHand = P3^3。sbit Handout =P3^4。unsigned char nongduFlag=0,buttonFlag=0。sbit ledNorm = P1^3。sbit ledAlarm = P1^4。unsigned char displayFlag=0。void delay_ms(unsigned char ms) // 延時毫秒@12M,ms最大值255 { unsigned char i。 while(ms) for(i = 0。 i 100。 i++)。 } void display(void){ dis[2]=value/51。 //AD值轉(zhuǎn)換為3為BCD碼。 dis[3]=value%51。 //余數(shù)暫存 dis[3]=dis[3]*10。 //計算小數(shù)第一位 dis[1]=dis[3]/51。 dis[3]=dis[3]%51。 dis[3]=dis[3]*10。 //計算小數(shù)第二位 dis[0]=dis[3]/51。 nongdu = dis[2]*+dis[1]*+dis[0]*。 if(nongdu) { level=1。 nongduFlag=0。 } else if(=nongdu) { level=2。 nongduFlag=0。 } else if(=nongdu) { level=3。 nongduFlag=1。 } else if(=nongdu) { level=4。 nongduFlag=1。 } else if(=nongdu) { level=5。 nongduFlag=1。 } P0=table[level1]。 one=0。 delay_ms(20)。 one=1。}void Scan_Key(void){ display()。 if(alarmHand == 0) { delay_ms(20)。 if(alarmHand == 0) { buttonFlag=1。 } while(alarmHand == 0)。 } if(Handout ==0) { delay_ms(20)。 if(Handout == 0) { buttonFlag=0。 } while(Handout == 0)。 }}void baojin(void){ if(buttonFlag|nongduFlag) { beep=0。 ledAlarm=0。 ledNorm=1。 } else { beep=1。 ledAlarm=1。 ledNorm=0。 }
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1