單片機(jī)交通燈課程設(shè)計(jì)報(bào)告(含電路圖源程序_第1頁
單片機(jī)交通燈課程設(shè)計(jì)報(bào)告(含電路圖源程序_第2頁
單片機(jī)交通燈課程設(shè)計(jì)報(bào)告(含電路圖源程序_第3頁
單片機(jī)交通燈課程設(shè)計(jì)報(bào)告(含電路圖源程序_第4頁
單片機(jī)交通燈課程設(shè)計(jì)報(bào)告(含電路圖源程序_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、摘 要11.引言22.總體設(shè)計(jì)方案22.1.設(shè)計(jì)思路22.1.1.設(shè)計(jì)目的22.1.2.設(shè)計(jì)任務(wù)和內(nèi)容32.1.3.方案比較、設(shè)計(jì)與論證32.1.4.芯片簡介52.2.設(shè)計(jì)方框圖83.設(shè)計(jì)原理分析83.1.交通燈顯示時(shí)序的理論分析與計(jì)算83.2.交通燈顯示時(shí)間的理論分析與計(jì)算103.3.電路模塊113.3.1.LED數(shù)碼管顯示模塊113.3.2.LED紅綠燈顯示模塊133.3.3.復(fù)位電路153.3.4.晶振電路164.結(jié)束語165.參考文獻(xiàn)166.附錄176.1.附錄1:程序清單176.2.附錄2:電路設(shè)計(jì)總圖226.3附錄3:實(shí)物圖231. 總體設(shè)計(jì)方案1.1. 設(shè)計(jì)思路1.1.1. 設(shè)計(jì)

2、目的(1)加強(qiáng)對單片機(jī)和匯編語言的認(rèn)識(shí),充分掌握和理解設(shè)計(jì)各部分的工作原理、設(shè)計(jì)過程、選擇芯片器件、模塊化編程等多項(xiàng)知識(shí)。(2)用單片機(jī)模擬實(shí)現(xiàn)具體應(yīng)用,使個(gè)人設(shè)計(jì)能夠真正使用。(3)把理論知識(shí)與實(shí)踐相結(jié)合,充分發(fā)揮個(gè)人能力,并在實(shí)踐中鍛煉。(4)提高利用已學(xué)知識(shí)分析和解決問題的能力。(5)提高實(shí)踐動(dòng)手能力。1.1.2. 設(shè)計(jì)任務(wù)和內(nèi)容1.1.2.1. 設(shè)計(jì)任務(wù)單片機(jī)采用用AT89S52芯片,使用發(fā)光二極管(紅,黃,綠)代表各個(gè)路口的交通燈,用8段數(shù)碼管對轉(zhuǎn)換時(shí)間進(jìn)行倒時(shí)(東西路口15秒,南北路口25秒,黃燈時(shí)間5秒)。1.1.2.2. 設(shè)計(jì)內(nèi)容(1)設(shè)計(jì)并繪制硬件電路圖(2)制作PCB并焊接

3、好元器件(3)編寫程序并將調(diào)試好的程序固化到單片機(jī)中1.1.3. 方案比較、設(shè)計(jì)與論證1.1.3.1. 電源提供方案 為使模塊穩(wěn)定工作,須有可靠電源,采用單片機(jī)控制模塊提供電源。此方案的優(yōu)點(diǎn)是系統(tǒng)簡明扼要,節(jié)約成本;缺點(diǎn)是輸出功率不高。綜上所述,我們選擇第二種方案。1.1.3.2. 復(fù)位方案復(fù)位方式有兩種:按鍵復(fù)位與軟件復(fù)位。由考慮到程序的簡潔,避免冗長,本設(shè)計(jì)采用按鍵復(fù)位,在芯片的復(fù)位端口外接復(fù)位電路,通過按鍵對單片機(jī)輸入一個(gè)高電平脈沖,達(dá)到復(fù)位的目的。1.1.3.3. 輸入方案方案一:采用89S52擴(kuò)展I/O 口及鍵盤,顯示等。該方案的優(yōu)點(diǎn)是:使用靈活可編程,并且有RAM,及計(jì)數(shù)器。若用該

4、方案,可提供較多I/O口,但操作起來稍顯復(fù)雜。方案二: 直接在IO口線上接上按鍵開關(guān)。因?yàn)樵O(shè)計(jì)時(shí)精簡和優(yōu)化了電路,所以剩余的口資源還比較多,我們使用2個(gè)按鍵,分別是K1、K2。由于該系統(tǒng)對于交通燈及數(shù)碼管的控制,只用單片機(jī)本身的I/O 口就可實(shí)現(xiàn),且本身的計(jì)數(shù)器及RAM已經(jīng)夠用,故選擇方案二1.1.3.4. 顯示界面方案 該系統(tǒng)要求完成倒計(jì)時(shí)、狀態(tài)燈等功能。基于上述原因,我們考慮了三種方案:方案一:完全采用數(shù)碼管顯示。這種方案只顯示有限的符號(hào)和數(shù)碼字符,無法勝任題目要求。方案二:完全采用點(diǎn)陣式LED 顯示。這種方案實(shí)現(xiàn)復(fù)雜,且須完成大量的軟件工作;但功能強(qiáng)大,可方便的顯示各種英文字符,漢字,圖

5、形等。方案三:采用數(shù)碼管與點(diǎn)陣LED 相結(jié)合的方法因?yàn)樵O(shè)計(jì)既要求倒計(jì)時(shí)數(shù)字輸出,又要求有狀態(tài)燈輸出等,為方便觀看并考慮到現(xiàn)實(shí)情況,用數(shù)碼管與LED燈分別顯示時(shí)間與提示信息。這種方案既滿足系統(tǒng)功能要求,又減少了系統(tǒng)實(shí)現(xiàn)的復(fù)雜度。權(quán)衡利弊,第三種方案可互補(bǔ)一二方案的優(yōu)缺,我們決定采用方案三以實(shí)現(xiàn)系統(tǒng)的顯示功能。設(shè)計(jì)方框圖整個(gè)設(shè)計(jì)以AT89S52單片機(jī)為核心,由數(shù)碼管顯示,LED數(shù)碼管顯示,復(fù)位電路組成。硬件模塊入圖2-1。AT89S52單片機(jī)數(shù)碼管顯示LED數(shù)碼管顯示晶振電路復(fù)位電路1.1.3.5. 交通管理的方案論證東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和

6、行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車時(shí)間。指示燈燃亮的方案如表2。25S5S25S5S東西道紅燈亮紅燈亮綠燈亮黃燈亮南北道綠燈亮黃燈亮紅燈亮紅燈亮表2說明: (1)當(dāng)東西方向?yàn)榧t燈,此道車輛禁止通行,東西道行人可通過;南北道為綠燈,此道車輛通過,行人禁止通行。時(shí)間為25秒。(2)黃燈5秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。 (3)當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛禁止通過,行人通行。時(shí)間為25秒。 (4)這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能安全暢

7、通的通行。1.1.4. 芯片簡介1AT89S52單片機(jī)簡介其引DIP封裝的腳圖如下:主要性能 與MCS-51單片機(jī)產(chǎn)品兼容 、8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器、 1000次擦寫周期、 全靜態(tài)操作:0Hz33Hz 、 三級加密程序存儲(chǔ)器 、 32個(gè)可編程I/O口線 、三個(gè)16位定時(shí)器/計(jì)數(shù)器 八個(gè)中斷源 、全雙工UART串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時(shí)器 、雙數(shù)據(jù)指針 、掉電標(biāo)識(shí)符 。功能特性描述 At89s52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用Atmel 公司高密度非 易失性存儲(chǔ)器技術(shù)制造,與工業(yè)8

8、0C51 產(chǎn)品指令和引腳完 全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng) 可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提 供高靈活、超有效的解決方案。 AT89S52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級中斷結(jié)構(gòu),全雙工串行口, 片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏 輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中

9、斷繼續(xù)工 作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié), 單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。8 位微控制器 8K 字節(jié)在系統(tǒng)可編程 Flash AT89S52 P0 口:P0口是一個(gè)8位漏極開路的雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏 輯電平。對P0端口寫“1”時(shí),引腳用作高阻抗輸入。 當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下, P0具有內(nèi)部上拉電阻。 在flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn) 時(shí),需要外部上拉電阻。 P1 口:P1 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p

10、1 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。 在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。 引腳號(hào)第二功能 P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出 P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號(hào)和方向控制) P1.5 MOSI(在系統(tǒng)編程用) P1.6 MIS

11、O(在系統(tǒng)編程用) P1.7 SCK(在系統(tǒng)編程用) P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR) 時(shí),P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用 8位地址(如MOVX RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。 在flash編程和校驗(yàn)時(shí),P2口也接

12、收高8位地址字節(jié)和一些控制信號(hào)。 P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對P3 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入 口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。 P3口亦作為AT89S52特殊功能(第二功能)使用,如下表所示。 在flash編程和校驗(yàn)時(shí),P3口也接收一些控制信號(hào)。 端口引腳 第二功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 INTO(外中斷0)P3.3 INT1(外中斷1)P3.4 TO(定時(shí)/計(jì)數(shù)器0)P3.5 T1

13、(定時(shí)/計(jì)數(shù)器1)P3.6 WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號(hào)。RST復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。ALE/PROG當(dāng)訪問外部程存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號(hào),因此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對FLASH存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄

14、存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。PSEN程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號(hào)。EA/VPP外部訪問允許,欲使CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如

15、EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器的指令。FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。復(fù)位晶振源1.2. 設(shè)計(jì)方框圖AT89S52LED倒計(jì)時(shí)顯示各路口紅綠燈燈2. 設(shè)計(jì)原理分析2.1. 交通燈顯示時(shí)序的理論分析與計(jì)算對于一個(gè)交通路口來說,能在最短的時(shí)間內(nèi)達(dá)到最大的車流量,就算是達(dá)到了最佳的性能,我們稱在單位時(shí)間內(nèi)多能達(dá)到的最大車流為車流量,用公式:車流量= 車流 / 時(shí)間 來表示。先設(shè)定一些標(biāo)號(hào)如圖21 所示。說明:此圖為直方圖,上邊為北路口燈,右邊為東路口燈,下邊為南路口燈,左邊為西路口燈。 圖22 所

16、示為一種紅綠燈規(guī)則的狀態(tài)圖,分別設(shè)定為S1、S2、S3、S4,交通燈以這四的狀態(tài)為一個(gè)周期,循環(huán)執(zhí)行(見圖23)。圖21請注意圖21b和圖21d,它們在一個(gè)時(shí)間段中四個(gè)方向都可以通車,這種狀態(tài)能在一定的時(shí)間內(nèi)達(dá)到較大的車流量,效率特別高。依據(jù)上述的車輛行駛的狀態(tài)圖,可以列出各個(gè)路口燈的邏輯表,由于相向的燈的狀態(tài)圖是一樣的,所以只需寫出相鄰路口的燈的邏輯表;根據(jù)圖23 可以看出,相鄰路口的燈它們的狀態(tài)在相位上相差180。因此最終只需寫出一組S1、S2、S3、S4的邏輯狀態(tài)表。如表21 所示。表21表中的“”代表是紅燈亮(也代表邏輯上的0),“”是代表綠燈亮(也代表邏輯上的1),依上表,就可以向相

17、應(yīng)的端口送邏輯值。2.2. 交通燈顯示時(shí)間的理論分析與計(jì)算東西和南北方向的放行時(shí)間的長短是依據(jù)路口的各個(gè)方向平時(shí)的車流量來設(shè)定,并且S1、S2、S3、S4各個(gè)狀態(tài)保持的時(shí)間之有嚴(yán)格的對應(yīng)關(guān)系,其公式如下示。T-S1+T-S2=T-S3T-S2=T-S4T-S1=T-S3我們可以依據(jù)上述的標(biāo)準(zhǔn)來改變車輛的放行時(shí)間。按照一般的規(guī)則,一個(gè)十字路口可分為主干道和次干道,主干道的放行時(shí)間大于次干道的放行時(shí)間,我們設(shè)定值時(shí)也應(yīng)以此為參考2.3. 電路模塊2.3.1. LED數(shù)碼管顯示模塊(1) 靜態(tài)顯示方式:靜態(tài)顯示方式是指當(dāng)顯示器顯示某一字符時(shí),發(fā)光二極管的位選始終被選中。在這種顯示方式下,每一個(gè)LED

18、數(shù)碼管顯示器都需要一個(gè)8位的輸出口進(jìn)行控制。由于單片機(jī)本身提供的I/O口有限,實(shí)際使用中,通常通過擴(kuò)展I/O口的形式解決輸出口數(shù)量不足的問題。 靜態(tài)顯示主要的優(yōu)點(diǎn)是顯示穩(wěn)定,在發(fā)光二極管導(dǎo)通電流一定的情況下顯示器的亮度大,系統(tǒng)運(yùn)行過程中,在需要更新顯示內(nèi)容時(shí),CPU才去執(zhí)行顯示更新子程序,這樣既節(jié)約了CPU的時(shí)間,又提高了CPU的工作效率。其不足之處是占用硬件資源較多,每個(gè)LED數(shù)碼管需要獨(dú)占8條輸出線。隨著顯示器位數(shù)的增加,需要的I/O口線也將增加。 (2)動(dòng)態(tài)顯示方式:動(dòng)態(tài)顯示方式是指一位一位地輪流點(diǎn)亮每位顯示器(稱為掃描),即每個(gè)數(shù)碼管的位選被輪流選中,多個(gè)數(shù)碼管公用一組段選,段選數(shù)據(jù)僅

19、對位選選中的數(shù)碼管有效。對于每一位顯示器來說,每隔一段時(shí)間點(diǎn)亮一次。顯示器的亮度既與導(dǎo)通電流有關(guān),也與點(diǎn)亮?xí)r間和間隔時(shí)間的比例有關(guān)。通過調(diào)整電流和時(shí)間參數(shù),可以既保證亮度,又保證顯示。若顯示器的位數(shù)不大于8位,則顯示器的公共端只需一個(gè)8位I/O口進(jìn)行動(dòng)態(tài)掃描(稱為掃描口),控制每位顯示器所顯示的字形也需一個(gè)8位口(稱為段碼輸出)。數(shù)碼管顯示子程序:DISP: MOV A,R2 MOV B,#10 DIV AB MOV 60H,A MOV 61H,B MOV A,R3 MOV B,#10 DIV AB MOV 62H,A MOV 63H,B MOV 40H,#04H MOV R5,#0FEH M

20、OV R0,#60HLLP: MOV A,R0 MOV DPTR,#TABLE MOVC A,A+DPTR MOV P0,A MOV A,R5 MOV P2,A LCALL DELAY1 MOV P2, #0FFH ;令顯示器熄滅,以免產(chǎn)生殘影 RL A MOV R5,A INC R0 DJNZ 40H,LLP RETDELAY1: ;延時(shí)子程序 MOV R4,#12DL2: MOV R7,#12 DJNZ R7,$ DJNZ R4,DL2 RETTABLE:DB 3FH,24H,5dH,75H,66H DB 73H,7bH,25H,7fH,77H END2.3.2. LED紅綠燈顯示模塊本實(shí)

21、驗(yàn)有四種狀態(tài):狀態(tài)1, 東西綠燈亮,南北紅燈亮,此時(shí)P1.0口P1.7口的高低電平為#0BBH。子程序:ST1: MOV P1,#0EBH ;第一個(gè)狀態(tài),主干道亮綠燈、支干道亮紅燈; CJNE R1,#0FFH,TZ1 MOV R1,#00H DEC 20H DEC 23HTZ1: MOV R2,20H MOV R3,23H LCALL DISP ;調(diào)用顯示子程序。 MOV A,20H CJNE A,#00H,ST1 MOV 20H,#25狀態(tài)2, 東西黃燈亮,南北紅燈亮,此時(shí)P1.0口P1.7口的高低電平為#0BDH。子程序:ST2: MOV P1,#0EDH ;第二個(gè)狀態(tài),主干道亮黃燈、支

22、干道亮紅燈; CJNE R1,#0FFH,TZ2 MOV R1,#00H DEC 21H DEC 23HTZ2: MOV R2,21H MOV R3,23H LCALL DISP ;調(diào)用顯示子程序。 MOV A,21H CJNE A,#00H,ST2 MOV 21H,#05狀態(tài)3, 東西紅燈亮,南北綠燈亮,此時(shí)P1.0口P1.7口的高低電平為#0DEH。子程序:ST3: MOV P1,#0BEH ;第三個(gè)狀態(tài),主干道亮紅燈、支干道亮綠燈; CJNE R1,#0FFH,TZ3 MOV R1,#00H DEC 24H DEC 22HTZ3: MOV R2,24H MOV R3,22H LCALL

23、DISP ;調(diào)用顯示子程序。 MOV A,22H CJNE A,#00H,ST3 MOV 22H,#15狀態(tài)4, 東西紅燈亮,南北黃燈亮,此時(shí)P1.0口P1.7口的高低電平為#0EEH。再采用顯示子程序與延時(shí)子程序可使LED顯示燈按照要求點(diǎn)亮。子程序:ST4: MOV P1,#0DEH ;第四個(gè)狀態(tài),主干道 亮紅燈、支干道亮黃燈; CJNE R1,#0FFH,TZ4 MOV R1,#00H DEC 24H DEC 21HTZ4: MOV R2,24H MOV R3,21H LCALL DISP ;調(diào)用顯示子程序。 MOV A,21H CJNE A,#00H,ST4 MOV 21H,#05 MO

24、V 24H,#20 LJMP ST1程序初始化狀態(tài)1(S1)狀態(tài)2 (S2)狀態(tài)3(S3)狀態(tài)4(S4)2.3.3. 復(fù)位電路復(fù)位方式有多種,本設(shè)計(jì)采用按鍵復(fù)位。接線圖如圖程序3.1復(fù)位電路,框圖在設(shè)定的定時(shí)時(shí)間內(nèi),89S52必須在RST引腳產(chǎn)生一個(gè)由高到低的電平變化,以清內(nèi)部定時(shí)器. 2.3.4. 晶振電路晶振電路原理圖如3-2:3-2晶振模塊原理圖選取原則:傳統(tǒng)做法,但能夠?qū)崿F(xiàn)所需,即最簡單也最是實(shí)用。電容選取30pF,晶振為30MHz。3. 結(jié)束語通過這次課程設(shè)計(jì),使我得到了一次用專業(yè)知識(shí)、專業(yè)技能分析和解決問題全面系統(tǒng)的鍛煉。使我在單片機(jī)的基本原理、單片機(jī)應(yīng)用系統(tǒng)開發(fā)過程,以及在常用編

25、程設(shè)計(jì)思路技巧(特別是匯編語言)的掌握方面都能向前邁了一大步。本次課程設(shè)計(jì)的過程是艱辛的,不過收獲卻是很大的。在設(shè)計(jì)過程中,會(huì)出現(xiàn)了一些問題,但都是常見的小問題,如:代碼中雙引號(hào)的使用并不是在英語書寫狀態(tài)下,輸入字母出錯(cuò)等,在調(diào)試時(shí)出現(xiàn)異常,不過這些都是經(jīng)常性錯(cuò)誤,經(jīng)過調(diào)試修改都一一解決,程序順利完成,并實(shí)現(xiàn)了其功能。綜合課程設(shè)計(jì)讓我把以前學(xué)習(xí)到的知識(shí)得到鞏固和進(jìn)一步的提高認(rèn)識(shí),對已有知識(shí)有了更進(jìn)一步的理解和認(rèn)識(shí)。在此,由于自身能力有限,在課程設(shè)計(jì)中碰到了很多的問題,我通過查閱相關(guān)書籍、資料以及和周圍同學(xué)交流。由于使用的是單片機(jī)作為核心的控制元件,使得電路的可靠性比較高,功能也比較強(qiáng)大,而且可

26、以隨時(shí)的更新系統(tǒng),進(jìn)行不同狀態(tài)的組合。但是在我們設(shè)計(jì)和調(diào)試的過程中,也發(fā)現(xiàn)了一些問題,譬如紅燈和綠燈的切換還不夠迅速,紅綠燈規(guī)則不效率還不是很高等等,這需要在實(shí)踐中進(jìn)一步完善。當(dāng)然,通過這次課程設(shè)計(jì),我也發(fā)現(xiàn)了自身的很多不足之處,在以后的學(xué)習(xí)中,我會(huì)不斷的完善自我。附錄3.1. 附錄1:程序清單 ORG 0000H LJMP MAIN ORG 0003H LJMP INTT0 ORG 0013H LJMP INTT1 ORG 001BH LJMP TT1 ORG 0100HTT1: MOV TH1,#0D8H ;定時(shí)器1,定時(shí)10us MOV TL1,#0F0H DJNZ R6,EXIT MO

27、V R6,#100 ;定時(shí)器定時(shí)100次 MOV R1,#0FFHEXIT: RETIINTT0:MOV P1,#0BEH ;外部中斷0, JB P3.4,$ RETIINTT1:MOV P1,#0BBH ;外部中斷1, JB P3.4,$ RETI ORG 1000HMAIN: MOV R6,#100 ;主程序; MOV R1,#00H MOV TMOD,#10H ;初始化 MOV TH1,#0D8H MOV TL1,#0F0H MOV IE,#8DH MOV 20H,#25 MOV 21H,#5 MOV 22H,#15 MOV 23H,#30 MOV 24H,#20 SETB TR1ST1: MOV P1,#0EBH ;第一個(gè)狀態(tài),主干道亮綠燈、支干道亮紅燈; CJNE R1,#0FFH,TZ1 MOV R1,#00H DEC 20H DEC 23HTZ1: MOV R2,20H MOV R3,23H LCALL DISP ;調(diào)用顯示子程序。 MOV A,20H CJNE A,#00H,ST1 MOV 20H,#25ST2: MOV P1,#0EDH ;第二個(gè)狀態(tài),主干道亮黃燈、支干道亮紅燈; CJNE R1,#0FFH,TZ2 MOV R1,#00H DE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論