一種智能汽車防撞報警器的設計開發
通過以上兩個函數可獲得t,后面轉換成s和判斷是否報警便迎刃而解。Chret.c的函數組成:
主程序對抗干擾采取了3個措施(防止誤報警):
(1)t4~t5狀態,給反射回來的波定個窗口,對于高于33.3 Hz或小于11.1 Hz的波不計數;
(2)t6~t7狀態,通過測10 ms來判斷:若是干擾在此時能測到;若是正常反射,此時應根本測不到波;
(3)對報警判斷兩次(1.3 s會自動清0一次)。
3.2 串口通信模塊——transplant.c
主要將主AT89C52的程序中chDis準確無誤傳給顯示部分(位于駕駛室),設計一個通信協議,以保證不收亂碼,即在chDis這個數據前面添加一個報頭數據Head,而后面添加一個檢驗數據check,這樣顯示部分就只在Head出現時才接收,且檢驗正確才顯示。由于測t時,程序的時序已經固定,在此基礎上進行串口通信,就只能夠采用中斷方式,而不能采用查詢方式,否則將出現“死機”現象。
對于display.c,eraseint.a51這兩個模塊,在主程序中調用即可,功能單一:一個用來顯示數據;一個用來執行iret指令。
4 結 語
本文設計的防撞裝置在結構上采用微電腦技術和專用芯片設計,具有結構簡單,小型化的特點,非常適合用于測控系統;在軟件設計上,突出模塊的靈活性,并且 C51語言簡潔,大大簡化了編寫程序的工作量。比較現在市場上已有的汽車防撞器,該系統結構緊湊,成本低,可靠性好,通信能力強,能有效地避免汽車相撞事故的發生,具有一定的市場價值。
評論