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

正文內(nèi)容

基于at89c52單片機的倒車雷達系統(tǒng)(文件)

2025-07-14 18:43 上一頁面

下一頁面
 

【正文】 DQ = 1。 //480us DQ = 1。 Delay(20)。 i 0。 // 拉高數(shù)據(jù)線,停止讀數(shù)據(jù) if(DQ) dat |= 0x80。 for (i = 8。0x01。 //移位,為寫入下一位數(shù)據(jù)做準(zhǔn)備 } } /*******************數(shù)據(jù)轉(zhuǎn)換函數(shù) **************************/void BUMA() { temp=~temp。 Write_Comm(0x01)。a++) { d=dispBUF[a]。 //待顯示的結(jié)果 } if(14==a) { d=0xdf。b33。(b29)) { d=numcode[num[b]]。RW = 1。 BS =(bit)(P0amp。}/*******************寫指令函數(shù) ******************************/ void Write_Comm(uchar lcdm) //寫指令 { while(LCD_BUSY())。delay1ms(1)。 } /*********************寫數(shù)據(jù)函數(shù) ****************************/ void Write_Data(uchar lcddata)//寫數(shù)據(jù) {while(LCD_BUSY())。delay1ms(1)。 }/*********************初始化 LCD****************************/ void Init_LCD() {delay()。 //8 位 2 行 5*8Delay(2)。 //顯示開/ 關(guān),光標(biāo)開閃爍開Delay(2)。 _nop_()。 _nop_()。 _nop_()。} /************************18b20 延時函數(shù)************************/ void Delay(uint time) { while( time )。i++) for(j=0。for(y=0。for (i=0。 jbp 。 for(i=0。j++)。 LCD_DISP()。 //啟動定時器 0 TESTTEMP()。jsl=TL1。 //讀取溫度 count=0。 //標(biāo)準(zhǔn)位復(fù)位}if(distance=110){beep(150)。 //重新啟動轉(zhuǎn)換 LCD_DISP()。 //轉(zhuǎn)換成 BCD 碼 JULIJS()。 //收到回波 TR1=0。 //標(biāo)準(zhǔn)位復(fù)位 ET0=1。 //初始化 while(!START ){ beep(150)。i++) for(j=0。 //一個 CPU 周期} BUZZER=0。i++) { BUZZER=!BUZZER。y++)。j++)。 for(i=0。 us。 _nop_()。 _nop_()。 _nop_()。 //文字不動,光標(biāo)右移Delay(2)。 //清顯示Delay(2)。delay1ms(1)。RW = 0。delay1ms(1)。RW = 0。 E = 0。 E = 1。 //寫入要顯示的數(shù)據(jù)(數(shù)據(jù)傳輸) } } /*********檢查 LCD 忙狀態(tài) ***********/ bit LCD_BUSY() //lcd_busy 為 1 時,忙,等待。 if((b24)amp。 //寫入要顯示的數(shù)據(jù) } Write_Comm(0xc0)。amp。 //寫首地址 for(a=0。 } /**************************LCD 顯示函數(shù)*******************/ void LCD_DISP() { uchar a,b,d。 //稍作延時DQ = 1。 i) { DQ = 0。 } return (dat)。 // 拉低數(shù)據(jù)線,開始讀數(shù)據(jù) dat = 1。 uchar dat = 0。 //稍做延時后 如果 x=0 則初始化成功,x=1 則初始化失敗 if(DQ) flag=0。 DQ = 0。t = t | a。 //發(fā)送讀溫度命令a = B20_RDAT()。 // 發(fā)送溫度轉(zhuǎn)化命令 } } /***********讀取溫度函數(shù) **************/ uint GET_WD(void){ uint a = 0, b = 0, t = 0。 num[28]=tmp/1。 num[26]=tmp/100。 //最高位加上符號位 num[13]=tmp/10(tmp/100)*10。 } tp*=10。 //溫度符號位 if(temp0x8000) tp=temp*。 distance=sqrt(s)。 t=jsh*256+jsl120。 //開總中斷 } /******************距離計算 ***************************/ void JULIJS() //使用全局變量,可以定義為空{(diào) float c,d,s。 //設(shè)置定時器/計數(shù)器 0 的初值,60ms 溢出 P0 =0。i++) //顯示清零 { num[i]=0。 //延時,避免直達信號干擾,啟動定時器 /計數(shù)器 1 delay15(50)。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 CNT=1。 _nop_()。 //定時器 0 設(shè)定初值 TH1=0。 //返回信號 sbit BUZZER =P3^7。 //10MS 到標(biāo)準(zhǔn)位,flag 即通用標(biāo)志位,當(dāng) sta_flag=1 時,表示到了 10ms sbit fuhao =flag^1。 //初始化 18B20 void Write_Comm(uchar)。 void BUMA(void)。 //LCD 忙 void Delay(uint time)。 //LCD RS sbit RW=P2^1。 //10 秒計次數(shù) uint distance。}。,39。,39。,39。,39。 uchar numcode[10]={39。但至少立足于此,學(xué)到了很多,這才是最重要的。通過對課題的全方位理解,加之在細節(jié)方面的慎重考慮,思維與動手能力得到了前所未有的鍛煉,并且豐富了這方面的經(jīng)驗知識,對以后的工作有一定的幫助,相信這樣的結(jié)果已經(jīng)達到了學(xué)校設(shè)定畢業(yè)設(shè)計的目的。倒車系統(tǒng)可以對一定范圍內(nèi)的距離在理論上實現(xiàn)測距的任務(wù),但是由于現(xiàn)實條件的制約,系統(tǒng)并沒有達到最為理想的倒車測距系統(tǒng)的要求,存在著一定的缺陷,還有改進的空間。(3)由于超聲波在發(fā)出、反射到被傳感器接收其振幅會有很大的衰減,并且會呈現(xiàn)出指數(shù)規(guī)律。所以進行系統(tǒng)設(shè)計時理所當(dāng)然的的會想到使用一些抗干擾的措施。 系統(tǒng)的改進鑒于所學(xué)知識的局限及時間方面等的原因,下面將對設(shè)計存在的一些缺點進行簡單的改進說明。而如果在應(yīng)用中對精度的要求高,則可以嘗試軟硬件兩個方面的改進辦法,其中硬件方面可以增加一個補償電路,軟件方面可以通過改進算法來加以校正。軟件仿真的成功說明本設(shè)計達到了初步的要求。用 Proteus 繪制好電路圖后導(dǎo)入程序文件(用 Keil 編譯過后的 HEX 文件) ,然后就可以執(zhí)行仿真,在仿真的時候 檢測到高電平即為返回信號獲得,由于在軟件中沒有 CX20226 模型,所以 懸空,則程序開始就認為返回信號獲得了,所以顯示了一個最小測量值 0118mm,而溫度為 26176。開始讀取數(shù)據(jù)補碼、原碼轉(zhuǎn)化子程序數(shù)據(jù)寫入顯示數(shù)組返回圖 14 數(shù)據(jù)轉(zhuǎn)換程序流程圖由于距離是不能直接測得的,它與溫度有關(guān),需要通過相應(yīng)公式的計算才能間接的獲得,所以有必要設(shè)計一個計算最終距離的程序如圖 15 所示,其中包括溫度與時間數(shù)據(jù)的讀取以及結(jié)合溫度與速度的關(guān)系再加上讀進的時間值來進行距離的計算。由于液晶顯示器是一種運行速度較為慢的零件,固在對其執(zhí)行每一條指令時必須附帶的先對其進行查忙操作,若檢測到的是低電平信號則表示 LCD 顯示器此時不忙,否則寫入的任何指令都將被其視為無效。脈沖的產(chǎn)生程序較簡單,而且又要求運行準(zhǔn)確,固可以直接采用匯編語言進行編程,以獲得超聲波傳播經(jīng)過的時間,流程圖如圖 11 所示。 主程序主程序流程圖如圖 10 所示所要的任務(wù)是要對系統(tǒng)進行各種操作初始化的。在上述兩種語言作為編程的基礎(chǔ)上系統(tǒng)軟件采用模塊化設(shè)計,這種設(shè)計方式比較有利于后續(xù)的改動,也有利于讀者的理解。圖 9 時鐘電路圖3 系統(tǒng)軟件實現(xiàn)針對上述介紹的系統(tǒng)硬件基本框架,接下來輔助以軟件方面的實現(xiàn)。要想使系統(tǒng)能可靠的復(fù)位,只要 RST 端保持高電平就可以讓單片機處于循環(huán)復(fù)位中??紤]到設(shè)計結(jié)構(gòu)較簡單,干擾又不是很大,固用上電自動復(fù)位 [4],電路圖如圖 8 所示。聲音報警指的是當(dāng)超聲波探測到的障礙物距離小于所設(shè)定的安全值時裝置就會發(fā)出聲音提醒駕駛員。RS 作為寄存器的選擇端,加高平電壓是當(dāng)做數(shù)據(jù)寄存器,加低平電壓就是當(dāng)做指令寄存器 [5],該液晶顯示的操作時序如表 2 所示。它有著比較多的特點如微功耗、使用壽命長、屏幕大且清晰、低壓等。在這里濾波電路的作用尤其重要,因為超聲波在傳播、反射與折射后能夠被探頭接收到的信號已經(jīng)十分微弱而且還可能夾雜著一些噪聲。圖 4 超聲波發(fā)射電路圖 超聲波接
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1