【文章內(nèi)容簡介】
ET1 。開定時器 T1 中斷開關 SETB TR1 。啟動定時器 T1 HERE: MOV 88H,15H 。設置中斷循環(huán)次數(shù) MOV 33H,3DH 。設置倒計時顯示數(shù)值 MOV P1,0F3H 。使交通燈東西綠,南北紅 MOV R7,37H MM: LCALL DISP MOV A,P3 。鍵盤掃描 CJNE A,0FFH,READKEY DJNZ R7,MM 21 MOV P1,0E1H 。交通燈東西綠,南北紅同時加亮黃燈 MOV 20H,02H NN: MOV A,P3 CJNE A,0FFH,READKEY SETB 。黃燈進行 5 秒閃爍 SETB LCALL DISP CLR CLR LCALL DISP 。調顯示子程序 DJNZ 20H,NN SETB SETB LCALL DISP MOV P1,0DEH 。交通燈南北綠,東西紅 MOV R7,37H PP: LCALL DISP MOV A,P3 CJNE A,0FFH,READKEY DJNZ R7,PP MOV P1,0CCH 。交通燈南北綠,東西紅同時加亮黃燈 MOV 20H,02H : MOV A,P3 。掃描 P3 口 CJNE A,0FFH,READKEY SETB 22 SETB LCALL DISP CLR CLR LCALL DISP DJNZ 20H, SETB SETB LCALL DISP LCALL QW QW: SJMP HERE RET 23 第五章 系統(tǒng)仿真 一. PROTUES 軟件介紹 Proteus 軟件是 Labcenter Electronics 公司的一款電路設計與仿真軟件,它包括 ISIS、 ARES 等軟件模塊, ARES 模塊主要用來完成 PCB 的設計,而 ISIS模塊用來完成電路原理圖的布圖與仿真。 Proteus 的軟件仿 真基于 VSM 技術,它與其他軟件最大的不同也是最大的優(yōu)勢就在于它能仿真大量的單片機芯片,比如 MCS51 系列、 PIC 系列等等,以及單片機外圍電路,比如鍵盤、 LED、 LCD等等。通過 Proteus 軟件的使用我們能夠輕易地獲得一個功能齊全、實用方便的單片機實驗室。 二.交通燈 系統(tǒng) PROTUES 仿真 用 PROTUES 軟件,根據(jù)交通燈的原理圖,畫出仿真圖,得到的圖如下所示 24 第六章 調試與功能說明 一.硬件調試 系統(tǒng)的硬件調試一般分下面三個步驟。 第一步:目測。檢查外部的各種元件或者電路是否有斷點。 第二步:用萬用表檢測,先用萬用表復核目測中有疑問的連接點,在檢測各種電源線與地線之間是否有短路現(xiàn)象。 第三步:加電檢測。給板加電,檢測所有插座或者器件的電源是否符合要求的值。 給硬件電路接上電源,這時數(shù)碼管全滅,用一根導線的一端與地線相連,另一端一次碰觸 AT89C51 的 P0 和 P2 口,一邊碰觸一邊察看七段數(shù)碼管,正常情況下可以看到每碰觸一個引腳,對應的一段數(shù)碼管點亮。若不亮,仔細查看與該腳相連的電阻及數(shù)碼管是否虛焊。 需要說明的是,由于整個設計是用發(fā)光二極管來代替交通燈,需要低電平“ 0”來驅動點亮,在實際應用中,應使 P1 口輸出高電平“ 1”來驅動繼電器導通,從而使 220V 的交通燈點亮。這是試驗與實際應用比較容易混淆的地方,應該引起注意。同時,在進行交通燈調試應注意 VD1~VD12 這 12 個發(fā)光二極管不能焊反。 仔細檢查 K K K3 三個按鍵是否焊牢,并且三個鍵是否與相應的 I/O 借口對應準確。 二.軟件調試 1.靜態(tài)調試 靜態(tài)調試是指對程序進行人工書面檢查。靜態(tài)調試時要仔細閱讀程序及其文檔,經(jīng)過結構分析、功能分析、邏輯分析、接口分析、語法分析以及逐行檢查。 25 ( 1) 檢查語法錯誤 產(chǎn)生語法錯誤的原因主要有兩個:一是鍵入錯誤,此錯誤如同寫文章時的“筆誤”;二是由于對語法規(guī)則不熟悉,見書后錯誤信息、各種限制、全局變量與局部變量、先后左右的原則等,這些雖不是系統(tǒng)規(guī)定,但也是語法的一部分,應作為專項予以檢查。 ( 2) 跟蹤過程 此時的跟蹤程序流程,即把自己當作計算機。給定一組輸入數(shù)據(jù)后,順序執(zhí)行每條語句,考察所得結果,尋找錯誤。 動態(tài)調試是指實際上機運行程序進行調試。源程序上機運行,語言系統(tǒng)及操作系統(tǒng)會在程序有故障時給出信息,常見的故障分為以下幾種情況: ( 1) 沒有通過編譯。 ( 2) 沒有通過連接編譯。 ( 3) 程序的運行過程因故障而停止。 ( 4) 程序只輸出部分結果。對這部分結果進行分析,可大致了解程序被執(zhí)行的邏輯,或程序在什么地方中斷。 ( 5) 程序執(zhí)行了很長時間沒結果。 26 附錄 整機電路 27 1 2 3 4 5 6ABCD654321DCBAT i tl eN u m b e r R e v i s i o nS i z eBD a t e : 1 M a r 2 0 1 1 S h e e t o f F i le : O :\ 單片機設計實例 \ 3 .智能交通燈控制系統(tǒng) \ 電路原理圖 \ 智能交通燈控制系統(tǒng) .d d bD r a w n B y :E A /V P31X119X218R E S E T9RD17WR16I N T 012I N T 113T014T115P 1 01P 1 12P 1 23P 1 34P 1 45P 1 56P 1 67P 1 78P 0 039P 0 138P 0 237P 0 336P 0 435P 0 534P 0 633P 0 732P 2 021P 2 122P 2 223P 2 324P 2 425P 2 526P 2 627P 2 728P S E N29A L E /P30T X D11R X D10U1 A T 8 9 C 5 1 abfcgdeD P Y1234567abcdefg8dpdpD S 2abfcgdeD P Y1234567abcdefg8dpdpD S 8abfcgdeD P Y1234567abcdefg8dpdpD S 1abfcgdeD P Y1234567abcdefg8dpdpD S 3Y1 1 2 M H ZC1 3 0 P FC2 3 0 P F123456781615141312111098 * 0 .2 KC340uFR 1 40 .5 kK4V C CabfcgdeD P Y[ L E D g n ]1234567abcdefgD S 4abfcgdeD P Y[ L E D g n ]1234567abcdefgD S 5abfcgdeD P Y[ L E D g n ]1234567abcdefgD S 6abfcgdeD P Y[ L E D g n ]1234567abcdefgD S 7123456781615141312111098 * 0 .2 KR44 .7 kR54 .7 kR64 .7 kR74 .7 kR84 .7 kR34 .7 kR94 .7 kR24 .7 kR 1 04 .7 kR14 .7 kR 1 14 .7 kR 1 24 .7 k東西綠南北紅東西黃南北黃東西紅南北綠K1K2K3四個路口的倒計時顯示裝置其中: D S 1 和 D S 2 是一組, D S 3 和 D S 4 是一組, D S 5 和 D S 6 是一組, D S 7 和 D S 8 是一組2kR 1 3V C CV C CV D 1V D 2V D 3V D 4V D 5V D 6V D 7V D 8V D 9V D 1 0V D 1 1V D 1 2交通燈裝置R 1 50 .1 KR E S E T I N1G N D2S R T3S W T4V C C8R E S E T7W D I6W D S5U2M A X 6 3 0 4R 1 79 .1 KR 1 63 .9 KC41 0 P FC51 0 0 P FR E S E TP 1 .6V C CK5S W P B結束語 28 本設計的硬件電路較簡單,硬件電 路容易實現(xiàn)。設計出滿足系統(tǒng)功能要求的程序是該設計任務的重點和難點,該設計要求實現(xiàn)的功能有: ( 1) 能夠控制四個路口的交通燈按照既定的功能要求進行有規(guī)律的變化。 ( 2) 四個路口各有一個倒計時顯示裝置,并在倒計時還剩 5s 時點亮閃爍的黃燈以起禁示作用。 ( 3) 設置三個按鍵分別處理 3 種不同的緊急情況。 設計該系統(tǒng)的控制程序應遵循一定的控制規(guī)律。例如,南北方向之間,東西方向之間交通的變化規(guī)律是一樣