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

正文內(nèi)容

基于at89s52的汽車倒車防撞系統(tǒng)-資料下載頁

2024-12-04 01:35本頁面

【導讀】隨著社會經(jīng)濟的發(fā)展交通運輸業(yè)日益興旺,汽車的數(shù)量在大副攀升。STC89C52單片機的倒車防撞報警系統(tǒng)。該系統(tǒng)采用軟、硬件結合的方法,具有模塊?;投嘤没奶攸c。論文概述了超聲波檢測的發(fā)展及基本原理,闡述了超聲波傳感器的原理及特性。出了系統(tǒng)的總體構成。通過多種發(fā)射接收電路設計方案比較,得出了最佳設計方案,對組成各系統(tǒng)電路的芯片進行了介紹,并。論文介紹了系統(tǒng)的軟件結構,通過編程來實現(xiàn)系統(tǒng)功能。后,通過對系統(tǒng)的誤差分析,給出了系統(tǒng)的改進方案。

  

【正文】 oid delay(uint m)。 void motor(uchar index, char speed)。 //顯示數(shù)據(jù)轉換程序 void conversion(uint temp_data) { uchar ge_data,shi_data,bai_data,qian_data 。 if(temp_data=10||temp_data=900) temp_data=1000。 if(temp_data=150) tt=0。 if(0temp_dataamp。amp。temp_data=150) { 汽車倒車防撞系統(tǒng) 31 motor(1,70)。 motor(2,100)。 fmq=0。 yzhuan=0。 zzhuan=1。 } else if(tt10amp。amp。tt20) { motor(1,48)。 motor(2,100)。 fmq=1。 zzhuan=0。 yzhuan=1。 } qian_data=temp_data/1000。 temp_data=temp_data%1000。 bai_data=temp_data/100 。 temp_data=temp_data%100。 //取余運算 shi_data=temp_data/10 。 temp_data=temp_data%10。 //取余運算 ge_data=temp_data。 qian_data=SEG7[qian_data]。 bai_data=SEG7[bai_data]。 shi_data=SEG7[shi_data]。 ge_data =SEG7[ge_data]。 EA=0。 qian=qian_data。 汽車倒車防撞系統(tǒng) 32 bai = bai_data。 shi = shi_data。 ge = ge_data 。 EA=1。 } //****************************************************************** void delay_20us() { uchar bt 。 for(bt=0。bt100。bt++)。 } void delay(uint m) { uchar i,j。 for(i=0。im。i++) for(j=0。j124。j++)。 } void delayus(unsigned int a) { while(a)。 } /* 電機控制函數(shù) index電機號 (1,2)。 speed電機速度 (100— 100) */ void motor(uchar index, char speed) { if(speed=100 amp。amp。 speed=100) { if(index==1) /* 電機 1的處理 */ { m1=abs(speed)。 /* 取速度的絕對值 */ 汽車倒車防撞系統(tǒng) 33 if(speed0) /* 速度值為負則反轉 */ { s1=0。 s2=1。 } else /* 不為負數(shù)則正轉 */ { s1=1。 s2=0。 } } if(index==2) /* 電機 2的處理 */ { m2=abs(speed)。 /* 取速度的絕對值 */ if(speed0) /* 速度值為負則反 轉 */ { s3=0。 s4=1。 } else /* 不為負數(shù)則正轉 */ { s3=1。 s4=0。 } } } } 汽車倒車防撞系統(tǒng) 34 void main(void) // 主程序 { uint distance_data,a,b。 uchar CONT_1。 flag=0。 Trig=0。 //首先拉低脈沖輸入引腳 TMOD=0x11。 //定時器 0,定時器 1, 16 位工作方式 TH0=(65536500)/256。 //重裝初值使定時器定在 100us TL0=(65536500)%256。 EA=1。 //打開總中斷 0 TR0=1。 //啟動定時器 0 ET0=1。 //打開定時器 0 中斷 IT0=0。 //外部中斷 0采用觸發(fā)方式 EX0=0。 //關閉外部中斷 motor(1,48)。 //motor(2,100)。 //fmq=0。 while(1) //程序循環(huán) { EA=0。 Trig=1。//產(chǎn)生脈沖 delay_20us()。 Trig=0。 //產(chǎn)生一個 20us 的脈沖,在 Trig 引腳 汽車倒車防撞系統(tǒng) 35 while(Echo==0)。 //等待 Echo 回波引腳變高電平 succeed_flag=0。 //清測量成功標志 EX0=1。 //打開外部中斷 TH1=0。 //定時器 1清零 TL1=0。 //定時器 1 清零 TF1=0。 // TR1=1。 //啟動定時器 1 EA=1。 while(TH1 30)。//等待測量的結果,周期 毫秒(可用中斷實現(xiàn)) TR1=0。 //關閉定時器 1 EX0=0。 //關閉外部中斷 if(succeed_flag==1) { distance_data=outeH。 //測量結果的高 8位 distance_data=8。 //放入 16 位的高 8位 distance_data=distance_data|outeL。//與低 8位合并成為 16位結果數(shù)據(jù) distance_data*=12。 //因為定時器默 認為 12 分頻 distance_data/=58。 //微秒的單位除以 58 等于厘米 if(distance_data=900||distance_data==0) distance_data=900。 } //為什么除以 58 等于厘米, Y 米 =( X秒 *344) /2 // X 秒=( 2*Y 米) /344 ==》 X秒 =*Y 米 ==》厘米 =微秒 /58 if(succeed_flag==0) { distance_data=900。 //沒有回波則清零 汽車倒車防撞系統(tǒng) 36 } a=distance_data。 if(b==a) CONT_1=0。 if(b!=a) CONT_1++。 if(CONT_1=3) { CONT_1=0。 b=a。 conversion(b)。 } } } //*************************************************************** //外部中斷 0,用做判斷回波電平 void INTO_() interrupt 0 // 外部中斷是 0 號 { outeH =TH1。 //取出定時器的值 outeL =TL1。 //取出定時器的值 succeed_flag=1。 //至 成功測量的標志 EX0=0。 //關閉外部中斷 } //**************************************************************** //定時器 0 中斷 ,用做顯示 void timer0() interrupt 1 // 定時器 0中斷是 1號 { TH0=(65536500)/256。 //重裝初值使定時器定在 100us TL0=(65536500)%256。 汽車倒車防撞系統(tǒng) 37 if(t==99) tt++。 if(tt=20) tt=20。 if(t==0) /* 1 個 PWM 周期完成后才會接受新數(shù)值 */ { tmp1=m1。 tmp2=m2。 } if(ttmp1) en1=1。 else en1=0。 /* 產(chǎn)生電機 1 的 PWM 信號 */ if(ttmp2) en2=1。 else en2=0。 /* 產(chǎn)生電機 2 的 PWM 信號 */ t++。 if(t=100) t=0。 /* 1 個 PWM 信號由 100 次中斷產(chǎn)生 */ switch(flag) { case 0x00: wei=1。 P0=0x01。 wei=0。 duan=1。 P0=qian。 duan=0。 flag++。 break。 汽車倒車防撞系統(tǒng) 38 case 0x01: wei=1。 P0=0x02。 wei=0。 duan=1。 P0=bai。 duan=0。 flag++。 break。 case 0x02: wei=1。 P0=0x04。 wei=0。 duan=1。 P0=shi。 duan=0。 flag++。 break。 case 0x03: wei=1。 P0=0x08。 wei=0。 duan=1。 P0=ge。 duan=0。 flag=0。 break。 }
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1