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

正文內(nèi)容

微機(jī)原理及應(yīng)用課程設(shè)計-基于at89c52單片機(jī)的汽車機(jī)油壓力檢測系統(tǒng)-資料下載頁

2024-11-16 19:12本頁面

【導(dǎo)讀】當(dāng)時鐘電路中的晶振產(chǎn)生外部震蕩脈沖信號時,單片機(jī)開始以時鐘頻率為基準(zhǔn),有條不紊的一拍一拍的工作。再經(jīng)過中值濾波后送。安全閾值時由單片機(jī)口控制蜂鳴器報警。在Keil中用C語言進(jìn)行程序的編寫,機(jī)油壓力檢測報警電路系統(tǒng)。機(jī)油壓力檢測系統(tǒng)是通過聲音和文字信息讓駕駛員了解潤滑系的工作狀態(tài)。在正常區(qū)間內(nèi)時報警電路則輸出語音報警信號,并通過報警線點亮報警燈。數(shù)字溫度傳感器,通過其產(chǎn)生數(shù)字信號代替壓力源模擬量的輸入,因此省去了A/D轉(zhuǎn)換,并輸出到LM016L液晶顯示器,進(jìn)行動態(tài)顯示,當(dāng)壓力值超過安全范圍時用蜂鳴

  

【正文】 { middle_value[i]=readyali()。 } } uchar middle_filter(uint middle_value[], uchar count)//中值濾波函數(shù) { uint sample_value,date。 uchar i, j。 for(i=0。 i(count1)/2。 i++) for(j=count1。 j=i。 j) { if(middle_value[j1]middle_value[j])//從小到大順序排列 { date=middle_value[j1]。 //交換位置 middle_value[j1]=middle_value[j]。 middle_value[j]=date。 } sample_value=middle_value[(count1)/2]。 return(sample_value)。 } } void beepon(void) //蜂鳴器報警子程序 微機(jī)原理及應(yīng)用課程設(shè)計說明書 26 { uchar i。 for(i=0。i200。i++)//喇叭發(fā)聲的時間循環(huán),改變大小可以改變發(fā)聲時間長短 { delay(80)。 //參數(shù)決定發(fā)聲的頻率 ,估算值,可以自行更改參數(shù)并 beep=!beep。 } } void main()//主程序 { LCD_init()。 while(1) { getdata()。//采樣子程序 temp=middle_filter( middle_value,3)。//調(diào)用中值濾波函數(shù) Display(temp)。//調(diào)用顯示程序 if(temp15amp。amp。temp60) { beep=1。 } else { beepon()。 } } } include include include // //名稱:延時函數(shù) 微機(jī)原理及應(yīng)用課程設(shè)計說明書 27 //功能:約為( ms*1)ms 時間 // void Delay_ms(uchar ms) { uchar a,b。 for(a=ms。a0。a) for(b=120。b0。b)。 } // //名稱:液晶寫指令子程序 //功能: // void Write_cmd(uchar cmd) { RS=0。 RW=0。 P0=cmd。 Delay_ms(1)。 E=1。 Delay_ms(1)。 E=0。 } // //名稱:液晶寫數(shù)據(jù)子程序 //功能: // void Write_data(char date)// 微機(jī)原理及應(yīng)用課程設(shè)計說明書 28 { RS=1。 RW=0。 P0=date。 Delay_ms(1)。 E=1。 Delay_ms(1)。 E=0。 } // //名稱:液晶初始化程序 //功能: // void LCD_init() { E=0。 Write_cmd(0x38)。 //16*2,5*7,8 位數(shù)據(jù) Write_cmd(0x0c)。 //顯示開,光標(biāo)不顯示,不閃爍 Write_cmd(0x06)。 //地址加 1,光標(biāo)加 1,整屏不移動 Write_cmd(0x80)。 //地址初始 } include void delay(uint t) //信號輸入程序 { while(t)。//t一次大約 9us } /*ds18b20 初始化 */ void init_ds18b20(void) { 微機(jī)原理及應(yīng)用課程設(shè)計說明書 29 uchar n。 vout=1。 //vout 復(fù)位 delay(8)。 //稍作延時 vout=0。 //單片機(jī)將總線拉低 delay(80)。 //延時要求大于 480us 小于 960us ,發(fā)出一個復(fù)位脈沖 vout=1。 //拉高,釋放總線,構(gòu)成上升沿, delay(20)。 //等待 15US 后, ds18b20 發(fā)出一個 60— 240us 存在脈沖 n=vout。 //檢測是否存在,若 vout=1,存在 delay(30)。 } /*寫一個字節(jié) */ void write_byte(uchar dat) { uchar i。 for(i=0。 i8。i++)//循環(huán) 8次 { vout=0。 vout=datamp。0x01。//先寫最低位 delay(10)。 vout=1。 dat=1。//右移一位 } delay(4)。 } /*讀一個字節(jié) */ uchar read_byte(void) { 微機(jī)原理及應(yīng)用課程設(shè)計說明書 30 uchar i,value=0。 for(i=0。i8。i++) { vout=0。 value=1。 vout=1。 if(vout) value|=0x80。 delay(8)。 } return (value)。 } /*讀取信號值 */ uchar readyali(void) { uchar a=0,b=0。 init_ds18b20()。 write_byte(0xcc)。 write_byte(0x44)。 delay(300)。 init_ds18b20()。 write_byte(0xcc)。 write_byte(0xbe)。 a=read_byte()。 b=read_byte()。 b=4。 b+=(aamp。0xf0)4。 return (b)。 } 微機(jī)原理及應(yīng)用課程設(shè)計說明書 31 附錄二 電路原理圖及 PCB圖 圖附 電路原理圖 微機(jī)原理及應(yīng)用課程設(shè)計說明書 32 圖附 電路 PCB 圖 微機(jī)原理及應(yīng)用課程設(shè)計說明書 33 附錄三 Proteus仿真截圖 圖附 Proteus 仿真圖
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1