淺談汽車測距系統(tǒng)的設(shè)計
P0口:P0 口是一組I/O 口,是8 位漏極開路并行口,也就是地址/數(shù)據(jù)總線復(fù)用的I/O 口,字節(jié)地址為80H,位地址為80H-87H。在編程flash 時,指令數(shù)據(jù)發(fā)送到P0口,在校檢程序的時候,指令數(shù)據(jù)從P0口輸出,此時,P0口外部要接上拉電阻以提高驅(qū)動能力。
P1口:是單功能的I/O 口,字節(jié)地址為90H,位地址為90H-97H,P1口只能作為通用的I/O 口使用,P1口由于有內(nèi)部上拉電阻,沒有高阻抗輸入狀態(tài),故為準(zhǔn)雙向口。作為輸出口時,不需要在外接上拉電阻,P1口讀鎖存器時必須向鎖存器寫1。
P2口:P2是一個8位雙向單功能I/O 口,字節(jié)地址為A0H,位地址為A0H-A7H,內(nèi)部帶有上拉電阻,P2口可以以灌入或輸出電流的方式驅(qū)動4個邏輯門(TTL)電路。在訪問8 位地址的外部數(shù)據(jù)存儲器時,特殊功能寄存器(SFR)區(qū)中R2寄存器的內(nèi)容也就是P2口內(nèi)容不會改變。在編程flash 和校檢程序時,P2接收高位地址和其它控制信號。
P3口:P3是一個8位雙功能I/O 口,位地址為B0H-B7H,內(nèi)部帶有上拉電阻。P3口可以以灌入或輸出電流的方式驅(qū)動4個邏輯門(TTL)電路。
RST:復(fù)位端口。當(dāng)振動器正常運(yùn)作的時候,可以給引腳RST高于兩個周期時間以上的高電平將會讓單片機(jī)進(jìn)行復(fù)位操作。
第四章系統(tǒng)硬件設(shè)計
4.1 硬件設(shè)計方案
如圖所示,我設(shè)計的這個系統(tǒng)硬件部分是由AT89S52控制器、超聲波發(fā)射電路、接收電路、聲音報警電路,溫度測量電路和LCD顯示電路幾部分組成。汽車行進(jìn)時LCD會顯示環(huán)境溫度,當(dāng)汽車進(jìn)行倒車的時候,發(fā)射電路和接收電路就會開始工作,通過AT89S52單片機(jī)的數(shù)據(jù)處理將距離也會顯示到LCD顯示屏上,如果在距離小于設(shè)定值的時候,報警電路就會發(fā)出鳴叫聲,這時候司機(jī)就要引起注意了。AT89S52是主控芯片,能夠支持在線下載程序,多以方便調(diào)試,資源豐富,不僅滿足了本系統(tǒng)的各項設(shè)計要求,還滿足了日后擴(kuò)展的各項需求。
復(fù)位電路溫度補(bǔ)償電路AT89S52
接收電路報警電路
發(fā)射電路顯示電路
圖4.1 設(shè)計方案圖
4.2 系統(tǒng)電路
單片機(jī)的系統(tǒng)電路是單片機(jī)的基本組成部分,包括有時鐘、電源、復(fù)位、電源電路等。
4.2.1 單片機(jī)最小系統(tǒng)
本文使用AT89S52 單片機(jī)的意義:在單片機(jī)的大家族中,51 系列單片機(jī)擁有著卓越的性能、成熟的技術(shù)、成本低和應(yīng)用的廣泛迅速占的領(lǐng)了大的市場,在各個領(lǐng)域單片機(jī)都應(yīng)用的十分廣泛,已經(jīng)變成了國內(nèi)外單片機(jī)領(lǐng)域主流的單片機(jī)應(yīng)用。因此世界上大量集成電路生產(chǎn)廠家各自推出了許多種類型的單片機(jī)。
AT89S52 單片機(jī)內(nèi)部裝有8KB存儲器,其本身就是一個數(shù)字量輸入和輸出的最小應(yīng)用,在構(gòu)建AT89S52單片機(jī)最小系統(tǒng)的時候,AT89S52單片機(jī)僅僅只需要外接時鐘電路、復(fù)位電路和5V的電源電路即可。單片機(jī)的最小電路如圖4.2 所示。
圖4.2 單片機(jī)最小電路
AT89S52最小系統(tǒng)主要包括復(fù)位電路與外部晶振。其晶振電路如圖所示。
圖4.3 單片機(jī)時鐘電路
AT89S52單片機(jī)每個部件的運(yùn)行都是以時鐘信號作為基準(zhǔn)的,使得單片機(jī)能夠有條不絮的進(jìn)行工作,時鐘的頻率是相當(dāng)重要的,時鐘頻率會直接影響到單片機(jī)的穩(wěn)定性和單片機(jī)的運(yùn)行速度,所以時鐘電路是單片機(jī)工時作所必須存在的控制信號電路。AT89S52單片機(jī)的內(nèi)部含有一個用于構(gòu)成振蕩器的高增益反相放大器,并且有著兩個輸入引腳,分別是XTAL1和XTAL2。
如圖4.3所示的電路中電容C1和C2通常的選擇為30pF,該電容的大小會直接影響到振蕩器頻率的高低,振蕩器的起振快速性和穩(wěn)定性。晶體震蕩的頻率一般選擇在1.2MHZ-12MHZ,如果時鐘的頻率越高,單片機(jī)的運(yùn)行速度相對就會越快,反之則亦然。但是如果時鐘頻率越高則對存儲器速度的要求就會越高,所以為了保證單片機(jī)系統(tǒng)運(yùn)行,可靠的工作電容的大小起著至關(guān)重要的作用。時鐘電路由兩個30pF的電容保證振蕩器的穩(wěn)定、可靠的工作;石英晶體的頻率越高,單片機(jī)運(yùn)行速度越快,所以選擇12MHZ的石英晶體。復(fù)位電路如圖5所示。
圖4.4 單片機(jī)復(fù)位電路
單片機(jī)進(jìn)行復(fù)位操作的時候,單片機(jī)會初始化,是單片機(jī)從存儲器的0000H 單元執(zhí)行的。當(dāng)程序運(yùn)行出錯、程序跑飛或者錯誤操作的時候都會讓系統(tǒng)處于死鎖的狀態(tài),這時候需要通過使系統(tǒng)初始化來重新啟動程序,所以復(fù)位鍵的功能是用來防止系統(tǒng)跑飛或死鎖的。VCC通電時,電容就開始充電,充電過程中會產(chǎn)生有充電電流,并且在最一開始時電流會最大,隨著充電時間的減少電流逐漸減小直到電容充滿電后充電電流就會變?yōu)?,此時電路中無充電電流輸給電容,電容器相當(dāng)于開路,這個時候的隔直才是真正意義上的,所以在接通電源的一瞬間,是會有通交這個過程的,在電容充電這個過程中,RST端的電壓卻剛好相反是從VCC逐漸減少到0,電容上的電壓是會有個從無到有的過程的,這是個交流變化過程,因為充電電流是從大到小一直到0,在此過程中的RST引腳會一直保持VCC 高電平狀態(tài)的,導(dǎo)致單片機(jī)的復(fù)位,(電容充放電時間常數(shù),由R 和C 決定)。當(dāng)電容不再充電時,沒有電流通過,RST一直為0,單片機(jī)正常的工作。電容的放電過程是通過手動按鍵閉合后,通過按鍵一側(cè)聯(lián)接RST引腳的電阻組成回路的,放電過程是電流從電容的正極板出發(fā)通過閉合按鍵之后經(jīng)過該電阻回到電容的負(fù)極板,完成放電過程的。
復(fù)位操作也就是單片機(jī)的初始化,重新啟動程序,也就是在RST引腳加上大于2個機(jī)器周期的高電平即可以完成單片機(jī)復(fù)位。手動復(fù)位是通過在RST上電阻與Vcc 連接來達(dá)到目的,具體得電路如圖所示,當(dāng)時鐘頻率為12MHZ時,電阻選取為2K歐。在我將按鈕按下去的時間比兩微秒多的情況下,RST就能夠發(fā)出高電平,單片機(jī)復(fù)位,然后重新啟動系統(tǒng)。
4.2.2 電源電路
汽車用電器供電來源主要是由汽車蓄電瓶供電,汽車蓄電瓶電壓為12V。由于車用蓄電瓶電壓為12V 電源高于系統(tǒng)單片機(jī)的需求電壓,同時蓄電瓶由于大電流放電,電壓穩(wěn)定性較差,必須使用電路將蓄電瓶12V 的電壓DC-DC 變化為5V 穩(wěn)定的電壓,然后直流5V 電壓供給超聲波測距系統(tǒng)工作。系統(tǒng)采用線性穩(wěn)壓芯片LM7805 將12V 的電源(汽車蓄電池的輸出電壓)轉(zhuǎn)換為5V 的直流穩(wěn)壓。5V 電源電路如下圖所示。由CZ1 電源接口輸入為12V車載蓄電瓶直流電源,二極管D1 是為了防止電源接反,經(jīng)過C7 和C8 濾波,通過LM7805 將電源穩(wěn)壓至5V。穩(wěn)壓電源5V 輸出給AT89S52 單片機(jī)、測量電路、顯示系統(tǒng)、控制電路、報警電路供電。
         

