單片機設計.doc_第1頁
單片機設計.doc_第2頁
單片機設計.doc_第3頁
單片機設計.doc_第4頁
單片機設計.doc_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

吉林建筑大學城建學院電氣信息工程系課程設計目 錄摘 要iabstractii第1章 前言11.1 設計的內(nèi)容11.2 設計的要求1第2章 方案論證22.1 課題的選擇22.2 方案的確定22.2.1 電源提供方案22.2.2復位方式22.3 輸入方案22.4 顯示界面方案32.5 交通管理的方案論證4第3章 系統(tǒng)理論分析53.1單片機交通控制系統(tǒng)的通行方案設計53.2單片機交通控制系統(tǒng)的功能要求63.3單片機交通控制系統(tǒng)的基本構成及原理7第4章 系統(tǒng)硬件設計84.1芯片簡介84.1.1 89c52單片機簡介84.2 電路模塊124.2.1 發(fā)光二極管紅綠燈顯示模塊124.2.2 復位電路模塊124.2.3 晶振電路134.2.4 緊急控制電路134.2.4 液晶顯示電路14第5章 系統(tǒng)軟件設計165.1 發(fā)光二極管程序設計165.2 1602液晶顯示器程序設計20第6章 制作電路板與調(diào)試21 6.1 制作電路板的步驟216.2 電路板的調(diào)試21總結23致謝24參考文獻25附錄 摘 要交通在人們的日常生活中占有重要的地位,隨著人們社會活動的日益頻繁,這點更是體現(xiàn)的淋漓盡致。交通信號燈的出現(xiàn),使交通得以有效管制,對于疏導交通流量、提高道路通行能力,減少交通事故有明顯效果。近年來隨著科技的飛速發(fā)展,單片機的應用正在不斷深入,同時帶動傳統(tǒng)控制檢測技術日益更新。在實時檢測和自動控制的單片機應用系統(tǒng)中,單片機往往作為一個核心部件來使用,僅單片機方面知識是不夠的,還應根據(jù)具體硬件結構軟硬件結合,加以完善。本系統(tǒng)采用單片機stc89c52為中心器件來設計交通燈控制器,系統(tǒng)實用性強、操作簡單、擴展性強。本設計就是采用單片機模擬十字路口交通燈的各種狀態(tài)顯示以及倒計時時間。本設計系統(tǒng)由單片機i/o口擴展系統(tǒng)、交通燈狀態(tài)顯示系統(tǒng)、液晶顯示系統(tǒng)、復位電路等幾大部分組成。系統(tǒng)除基本的交通燈功能外,還具有倒計時等功能,較好的模擬實現(xiàn)了十字路口可能出現(xiàn)的狀況。軟件上采用c編程,主要編寫了主程序,液晶顯示程序,中斷程序延時程序等。經(jīng)過整機調(diào)試,實現(xiàn)了對十字路口交通燈的模擬。關鍵字:電子線路 stc89c52 交通燈 abstracttraffic plays an important role in peoples daily life, with peoples social activities have become increasingly frequent,this is reflected the most incisive. the appearance of the traffic signal lamp, so that traffic can be effective control, for ease traffic flow, improve the road capacity, the effect of significantly reducing traffic accidents. in recent years, with the rapid development of science and technology, scm applications are continually deepening, and at the same time, promote more traditional control detection update. in the scm application of real-time detection and automatic control system,micro controller as a core component to use, only scm knowledge is not enough, should also be based on specific hardware structure of hardware and software, to be perfect.the system centric devices to design the traffic light controller using at89s52 single-chip computer, the system practical,simple operation, expansion and strong. various state of the design is the adoption of scm simulation of traffic lights at the crossroads of display and countdown time.this design system is composed of mcu i/o port expansion system, traffic status display system, reset circuit of several major components. in addition to the basic traffic lights function, but also has a countdown functions,good simulation crossroads possible situation.software using c51 programming, mainly to write the main program, interrupt program delay procedures. after the commissioning, the simulation of traffic lights at the crossroads.keywords: electronic circuit stc89c52 traffic lights 第1章 前言1.1 設計的內(nèi)容1利用單片機完成交通信號燈控制。2該交通信號燈控制器由一條主干道和一條支干道匯合成十字路口。3在每個入口處設置紅、綠、黃三色信號燈,紅燈亮禁止通行,綠燈亮允許通行,黃燈亮則給行駛中的車輛有時間停在禁行線外4設置了左轉和右轉燈,左轉綠燈可以左轉;左轉紅燈左轉停;右轉轉和左轉類似。5.設置了人行燈;直行綠燈亮,左右轉紅燈亮則人行綠燈亮;有轉彎或直行為紅燈則人行為紅燈。6設置緊急狀態(tài);當緊急按鈕按下各方向全部變紅燈。1.2 設計的要求1.繪制交通燈控制器的電路原理圖,掌握各個部分電路的原理、功能和應用方法;2.根據(jù)課程設計任務,編程實現(xiàn)系統(tǒng)要求的基本功能;3.根據(jù)電路原理圖制作電路板;4.對系統(tǒng)進行實際調(diào)試;5.編寫課程設計說明書。第 1 頁 共 25頁 第2章 方案論證2.1 課題的選擇 在了解所學的課程知識和社會常識是我們對交通燈有了深刻的了解,所以在本次設計我選擇了運用單片機來設計交通等。2.2 方案的確定2.2.1 電源提供方案 為使模塊穩(wěn)定工作,須有可靠電源,采用單片機控制模塊提供電源。此方案的優(yōu)點是系統(tǒng)簡明扼要,節(jié)約成本;缺點是輸出功率不高。2.2.2復位方式 復位方式有兩種:按鍵復位與軟件復位。由考慮到程序的簡潔,避免冗長,本設計采用按鍵復位,在芯片的復位端口外接復位電路,通過按鍵對單片機輸入一個高電平脈沖,達到復位的目的。2.3輸入方案方案一: 采用89c52擴展i/o 口及鍵盤,顯示等。該方案的優(yōu)點是:使用靈活可編程,并且有ram,及計數(shù)器。若用該方案,可提供較多i/o口,但操作起來稍顯復雜。方案二: 直接在io口線上接上按鍵開關。因為設計時精簡和優(yōu)化了電路,所以剩余的口資源還比較多,我們使用2個按鍵,分別是k1、k2。由于該系統(tǒng)對于交通燈及數(shù)碼管的控制,只用單片機本身的i/o 口就可實現(xiàn),且本身的計數(shù)器及ram已經(jīng)夠用,故選擇方案二2.4顯示界面方案 該系統(tǒng)要求完成倒計時、狀態(tài)燈等功能?;谏鲜鲈颍覀兛紤]了三種方案:方案一:完全采用數(shù)碼管顯示。這種方案只顯示有限的符號和數(shù)碼字符,無法勝任題目要求。方案二:完全采用點陣式led 顯示。這種方案實現(xiàn)復雜,且須完成大量的軟件工作;但功能強大,可方便的顯示各種英文字符,漢字,圖形等。方案三:采用液晶顯示與發(fā)光二極管相結合的方法因為設計既要求倒計時數(shù)字輸出,又要求有狀態(tài)燈輸出等,為方便觀看并考慮到現(xiàn)實情況,用數(shù)碼管與led燈分別顯示時間與提示信息。這種方案既滿足系統(tǒng)功能要求,又減少了系統(tǒng)實現(xiàn)的復雜度。權衡利弊,第三種方案可互補一二方案的優(yōu)缺,我們決定采用方案三以實現(xiàn)系統(tǒng)的顯示功能。設計方框圖整個設計以st89c52單片機為核心,由液晶顯示,led數(shù)碼管顯示,復位電路組成。硬件模塊入圖2-1。stc89c52單片機液晶顯示器顯示發(fā)光二極管管顯示 晶振電路復位電路圖 2-1顯示界面圖2.5 交通管理的方案論證東西、南北兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮時間為東西、南北兩干道的公共停車時間。指示燈燃亮的方案如表2-1。表2-1 指示燈燃亮表 信號燈顯示狀態(tài) 狀態(tài)說明東西方向(簡稱a方向)南北方向(簡稱b方向)紅燈黃燈綠燈紅燈黃燈綠燈滅滅滅亮亮亮滅滅亮滅滅滅亮閃爍滅滅滅滅亮亮亮滅滅滅滅滅滅滅滅亮滅滅滅亮閃爍滅a方向通行,b方向繞行a方向警告,b方向禁行a方向警告,b方向禁行a方向禁行,b方向通行a方向禁行,b方向警告a方向禁行,b方向警告表2-1說明 剛開始時a向綠燈亮,b向紅燈亮,此時a通行,b禁行,持續(xù)55秒;接著a向綠燈閃爍,b向紅燈亮,此時a綠燈閃,b禁行,持續(xù)3秒;接著a向黃燈亮,b向紅燈亮,此時a警告,b禁行,持續(xù)2秒;接著a向紅燈亮、b向綠燈亮,此時a禁行,b通行,持續(xù)25秒;接著a向紅燈亮、b向綠燈閃爍,此時a禁行,b綠燈閃,持續(xù)3秒;接著a向紅燈亮、b向黃燈亮,此時a禁行,b警告,持續(xù)2秒,以此循環(huán),每循環(huán)一次需要90s的時間。第3章 系統(tǒng)理論分析3.1單片機交通控制系統(tǒng)的通行方案設計設在十字路口,分為東西向和南北向,在任一時刻只有一個方向通行,另一方向禁行,持續(xù)一定時間,經(jīng)過短暫的過渡時間,將通行禁行方向對換。其具體狀態(tài)如下圖所示。說明:黑色表示亮,白色表示滅。交通狀態(tài)從狀態(tài)1開始變換,直至狀態(tài)6然后循環(huán)至狀態(tài)1,周而復始,即如圖3-1所示。圖3-1 交通狀態(tài)通過具體的路口交通燈狀態(tài)的演示分析我們可以把這四個狀態(tài)歸納如下:東西方向紅燈滅,同時綠燈亮,南北方向黃燈滅,同時紅燈亮,倒計時55秒。此狀態(tài)下,東西向禁止通行,南北向允許通行。東西方向綠燈滅,同時黃燈亮,南北方向紅燈亮,倒計時3秒。此狀態(tài)下,除了已經(jīng)正在通行中的其他所以車輛都需等待狀態(tài)轉換。南北方向紅燈滅,同時綠燈亮,東西方向黃燈滅,同時紅燈亮,倒計時25秒。此狀態(tài)下,東西向允許通行,南北向禁止通行。南北方向綠燈滅,同時黃燈亮,東西方向紅燈亮,倒計時3秒。此狀態(tài)下,除了已經(jīng)正在通行中的其他所以車輛都需等待狀態(tài)轉換。下面我們可以用圖表表示燈狀態(tài)和行止狀態(tài)的關系如下。表3-1交通狀態(tài)及紅綠燈狀態(tài)狀態(tài)1狀態(tài)3狀態(tài)4狀態(tài)6東西向禁行等待變換通行等待變換南北向通行等待變換禁行等待變換東西紅燈1100東西黃燈0001東西綠燈0010南北紅燈0011南北綠燈1000南北黃燈0100東西南北四個路口均有紅綠黃3燈,在任一個路口,遇紅燈禁止通行,轉綠燈允許通行,之后黃燈亮警告行止狀態(tài)將變換。狀態(tài)及紅綠燈狀態(tài)如表1所示。說明:0表示滅,1表示亮。3.2 單片機交通控制系統(tǒng)的功能要求本設計能模擬基本的交通控制系統(tǒng),用紅綠黃燈表示禁行,通行和等待的信號發(fā)生,還能進行倒計時顯示,通行時間調(diào)整和緊急處理等功能。 (1)倒計時顯示倒計時顯示可以提醒駕駛員在信號燈燈色發(fā)生改變的時間、在“停止”和“通過”兩者間作出合適的選擇。駕駛員和行人普遍都愿意選擇有倒計時顯示的信號控制方式,并且認為有倒計時顯示的路口更安全。倒計時顯示是用來減少駕駛員在信號燈色改變的關鍵時刻做出復雜判斷的1種方法,它可以提醒駕駛員燈色發(fā)生改變的時間,幫助駕駛員在“停止”和“通過”兩者間作出合適的選擇 。 (2)時間的設置 本設計中可通過鍵盤對時間進行手動設置,增加了人為的可控性,避免自動故障和意外發(fā)生,并再緊急狀態(tài)下,可設置所有燈變?yōu)榧t燈。鍵盤是單片機系統(tǒng)中最常用的人機接口,一般情況下有獨立式和行列式兩種。前者軟件編寫簡單,但在按鍵數(shù)量較多時特別浪費i0口資源,一般用于按鍵數(shù)量少的系統(tǒng)。后者適用于按鍵數(shù)量較多的場合,但是在單片機i0 口資源相對較少而需要較多按鍵時,此方法仍不能滿足設計要求。本系統(tǒng)要求的按鍵控制不多,且i0口足夠,可直接采用獨立式。(3)緊急處理 交通路口出現(xiàn)緊急狀況在所難免,如特大事件發(fā)生,救護車等急行車通過等,我們都必須盡量允許其暢通無阻,畢竟在這種情況下是分秒必爭的,時時刻刻關系著公共財產(chǎn)安全,個人生死攸關等。由此在交通控制中增設禁停按鍵,就可達到想此目的。3.3單片機交通控制系統(tǒng)的基本構成及原理單片機設計交通燈控制系統(tǒng),可用單片機直接控制信號燈的狀態(tài)變化,基本上可以指揮交通的具體通行,當然,接入液晶顯示器就可以顯示倒計時以提醒行使者,更具人性化。本系統(tǒng)在此基礎上,加入了緊急情況處理與時間調(diào)整功能,如圖3-2所示。單片機最小系統(tǒng)外圍接口電路 液晶顯示紅黃綠信號燈按鍵控制 電路圖3-2系統(tǒng)的總體框圖據(jù)此,本設計系統(tǒng)以單片機為控制核心,連接成最小系統(tǒng),由按鍵設置模塊產(chǎn)生輸入,信號燈狀態(tài)模塊,led倒計時模塊模塊接受輸出。系統(tǒng)的總體框圖如上所示。單片機上電后,系統(tǒng)進入正常工作狀態(tài),執(zhí)行交通燈狀態(tài)顯示控制,同時將時間數(shù)據(jù)倒計時輸入到led數(shù)碼管上實時顯示。在此過程中隨時調(diào)用急停按鍵和時間調(diào)節(jié)中斷。第4章 系統(tǒng)硬件設計4.1 芯片簡介4.1.1 89c52單片機簡介stc89c52rc單片機是宏晶科技推出的新一代高速/低功耗/超強抗干擾的單片機,指令代碼完全兼容傳統(tǒng)8051單片機,12時鐘/機器周期和6時鐘/機器周期可以任意選擇。主要特性如下:1. 增強型8051單片機,6時鐘/機器周期和12時鐘/機器周期可以任意選擇,指令代碼完全兼容傳統(tǒng)8051.2. 工作電壓:5.5v3.3v(5v單片機)/3.8v2.0v(3v單片機)3. 工作頻率范圍:040mhz,相當于普通8051的080mhz,實際工作頻率可達48mhz4. 用戶應用程序空間為8k字節(jié)5. 片上集成512字節(jié)ram6. 通用i/o口(32個),復位后為:p1/p2/p3/p4是準雙向口/弱上拉,p0口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為i/o口用時,需加上拉電阻。7. isp(在系統(tǒng)可編程)/iap(在應用可編程),無需專用編程器,無需專用仿真器,可通過串口(rxd/p3.0,txd/p3.1)直接下載用戶程序,數(shù)秒即可完成一片8. 具有eeprom功能9. 具有看門狗功能10. 共3個16位定時器/計數(shù)器。即定時器t0、t1、t211. 外部中斷4路,下降沿中斷或低電平觸發(fā)電路,power down模式可由外部中斷低電平觸發(fā)中斷方式喚醒12. 通用異步串行口(uart),還可用定時器軟件實現(xiàn)多個uart13. 工作溫度范圍:-40+85(工業(yè)級)/075(商業(yè)級)14. pdip封裝stc89c52rc單片機的工作模式l 掉電模式:典型功耗0.1a,可由外部中斷喚醒,中斷返回后,繼續(xù)執(zhí)行原程序l 空閑模式:典型功耗2mal 正常工作模式:典型功耗4ma7mal 掉電模式可由外部中斷喚醒,適用于水表、氣表等電池供電系統(tǒng)及便攜設備其引dip封裝的腳圖4-1所示。圖4-1 stc89c52引腳圖stc89c52引腳功能說明vcc(40引腳):電源電壓vss(20引腳):接地p0端口(p0.0p0.7,3932引腳):p0口是一個漏極開路的8位雙向i/o口。作為輸出端口,每個引腳能驅動8個ttl負載,對端口p0寫入“1”時,可以作為高阻抗輸入。在訪問外部程序和數(shù)據(jù)存儲器時,p0口也可以提供低8位地址和8位數(shù)據(jù)的復用總線。此時,p0口內(nèi)部上拉電阻有效。在flash rom編程時,p0端口接收指令字節(jié);而在校驗程序時,則輸出指令字節(jié)。驗證時,要求外接上拉電阻。p1端口(p1.0p1.7,18引腳):p1口是一個帶內(nèi)部上拉電阻的8位雙向i/o口。p1的輸出緩沖器可驅動(吸收或者輸出電流方式)4個ttl輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這是可用作輸入口。p1口作輸入口使用時,因為有內(nèi)部上拉電阻,那些被外部拉低的引腳會輸出一個電流()。此外,p1.0和p1.1還可以作為定時器/計數(shù)器2的外部技術輸入(p1.0/t2)和定時器/計數(shù)器2的觸發(fā)輸入(p1.1/t2ex),具體參見表4-1。在對flash rom編程和程序校驗時,p1接收低8位地址。表4-1 p1.0和p1.1引腳復用功能 引腳號功能特性p1.0t2(定時器/計數(shù)器2外部計數(shù)輸入),時鐘輸出p1.1t2ex(定時器/計數(shù)器2捕獲/重裝觸發(fā)和方向控制)p2端口(p2.0p2.7,2128引腳):p2口是一個帶內(nèi)部上拉電阻的8位雙向i/o端口。p2的輸出緩沖器可以驅動(吸收或輸出電流方式)4個ttl輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電平,這時可用作輸入口。p2作為輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸出一個電流()。在訪問外部程序存儲器和16位地址的外部數(shù)據(jù)存儲器(如執(zhí)行“movx dptr”指令)時,p2送出高8位地址。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行“movx r1”指令)時,p2口引腳上的內(nèi)容(就是專用寄存器(sfr)區(qū)中的p2寄存器的內(nèi)容),在整個訪問期間不會改變。在對flash rom編程和程序校驗期間,p2也接收高位地址和一些控制信號。p3端口(p3.0p3.7,1017引腳):p3是一個帶內(nèi)部上拉電阻的8位雙向i/o端口。p3的輸出緩沖器可驅動(吸收或輸出電流方式)4個ttl輸入。對端口寫入1時,通過內(nèi)部的上拉電阻把端口拉到高電位,這時可用作輸入口。p3做輸入口使用時,因為有內(nèi)部的上拉電阻,那些被外部信號拉低的引腳會輸入一個電流()。在對flash rom編程或程序校驗時,p3還接收一些控制信號。p3口除作為一般i/o口外,還有其他一些復用功能,如表4-2所示。表4-2 p3口引腳復用功能引腳號復用功能p3.0rxd(串行輸入口)p3.1txd(串行輸出口)p3.2(外部中斷0)p3.3(外部中斷1)p3.4t0(定時器0的外部輸入)p3.5t1(定時器1的外部輸入)p3.6(外部數(shù)據(jù)存儲器寫選通)p3.7(外部數(shù)據(jù)存儲器讀選通)rst(9引腳):復位輸入。當輸入連續(xù)兩個機器周期以上高電平時為有效,用來完成單片機單片機的復位初始化操作??撮T狗計時完成后,rst引腳輸出96個晶振周期的高電平。特殊寄存器auxr(地址8eh)上的disrto位可以使此功能無效。disrto默認狀態(tài)下,復位高電平有效。(30引腳):地址鎖存控制信號(ale)是訪問外部程序存儲器時,鎖存低8位地址的輸出脈沖。在flash編程時,此引腳()也用作編程輸入脈沖。在一般情況下,ale以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。然而,特別強調(diào),在每次訪問外部數(shù)據(jù)存儲器時,ale脈沖將會跳過。如果需要,通過將地址位8eh的sfr的第0位置“1”,ale操作將無效。這一位置“1”,ale僅在執(zhí)行movx或mov指令時有效。否則,ale將被微弱拉高。這個ale使能標志位(地址位8eh的sfr的第0位)的設置對微控制器處于外部執(zhí)行模式下無效。(29引腳):外部程序存儲器選通信號()是外部程序存儲器選通信號。當at89c51rc從外部程序存儲器執(zhí)行外部代碼時,在每個機器周期被激活兩次,而訪問外部數(shù)據(jù)存儲器時,將不被激活。(31引腳):訪問外部程序存儲器控制信號。為使能從0000h到ffffh的外部程序存儲器讀取指令,必須接gnd。注意加密方式1時,將內(nèi)部鎖定位reset。為了執(zhí)行內(nèi)部程序指令,應該接vcc。在flash編程期間,也接收12伏vpp電壓。xtal1(19引腳):振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路的輸入端。xtal2(18引腳):振蕩器反相放大器的輸入端。4.2 電路模塊4.2.1 發(fā)光二極管紅綠燈顯示模塊led紅綠燈接線方式如圖4-2所示。圖4-2 紅綠燈接線方式圖d1、d4、d7、d10分別是東、南、西、北四個方向的紅燈,d2、d5、d8、d11分別是東、南、西、北四個方向的黃燈,d3、d6、d9、d12分別是東、南、西、北四個方向的綠燈。4.2.2 復位電路模塊復位方式有多種,本設計采用按鍵復位。接線圖如圖4-3所示。圖4-3 復位電路接線圖在設定的定時時間內(nèi),89c52必須在rst引腳產(chǎn)生一個由高到低的電平變化,以清內(nèi)部定時器. 4.2.3晶振電路晶振電路原理圖如4-4所示。4-5晶振模塊原理圖 選取原則:傳統(tǒng)做法,但能夠實現(xiàn)所需,即最簡單也最是實用。電容選取30pf,晶振為30mhz。4.2.4 緊急控制電路 當cpu正在處理某項事物時候,如果外界或內(nèi)部發(fā)生了緊急事件,要求cpu暫停正在處理的工作轉而去處理這個緊急事件,待處理完后再回到原來被中斷的地方,繼續(xù)處理原來被中斷了的程序,這樣的過程叫中斷。中斷電路是當外界發(fā)生特殊情況時,采取緊急措施。在本論文中我設置了兩個中斷電路。當遇到緊急情況時控制一個方向通行一個方向禁止。中斷電路如圖4-5所示。圖4-6 緊急控制電路4.2.4 液晶顯示電路液晶顯示電路如圖4-7所示。圖4-7 液晶顯示電路1602采用標準的16腳接口,其中各腳說明如下: 第1腳:gnd為電源地第2腳:vcc接電源5v正極第3腳:vo為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源是對比度最高第4腳:rs為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器第5腳:rw為讀寫信號線,高電平1是進行讀操作,低電平0時進行寫操作第6腳:e端為使能端第7-14腳:d0-d7為8位雙向數(shù)據(jù)端第15-16腳:空腳或背燈電源,15腳背光正極,16腳背光負極第5章 系統(tǒng)軟件設計5.1 發(fā)光二極管程序設計#include type def unsigned char uint8;type def unsigned int uint16;sbit rs = p35;sbit rw = p36;sbit en = p37;sbit mang = p27;sbit led_1 = p10; /南北紅sbit led_2 = p12; /南北綠sbit led_3 = p11; /南北黃sbit led_4 = p13; /東西紅sbit led_5 = p15; /東西綠sbit led_6 = p14; /東西黃uint8 tem;uint16 num = 90 ,shi,ge,temer;unsigned char code sm = 0123456789;unsigned char code sm_1 = stop;void duzhuangtai() p2 = 0xff;dors = 0;rw = 1;en = 0;en = 1;while (mang);en = 0;void xiezhiling(uint8 z)duzhuangtai();en = 0;p2 =z;rs = 0; rw = 0;en = 1;en = 0;void xieshuju(uint8 s)duzhuangtai();en = 0;p2 = s;rs = 1;rw = 0;en = 1;en = 0;void xiezifu(uint8 c,uint8 *p)xiezhiling(c);while(*p != 0)xieshuju(*p+);void chushihua()xiezhiling(0x38);xiezhiling(0x0c);xiezhiling(0x06);xiezhiling(0x01);int main()/*中斷使能*/ex0 = 1;it0 = 1;tmod = 0x01;th0 =0xb8;tl0 = 0x00;ea = 1;et0 = 1;tr0 = 1;/*小燈時序控制(循環(huán)掃描)*/while(1)if(tem =50) /tem =50,為1stem = 0;-num; switch(temer)case 0:p1 = 0xff;led_1 = 0;led_5 = 0;break;case 2750:led_5 = 1;break;case 2775:led_5 = 0;break;case 2800:led_5 = 1;break;case 2825:led_5 = 0;break;case 2850:led_5 = 1;break;case 2875:led_5 = 0;break;case 2900:led_5 = 1;led_6 = 0;break;case 3000:led_1 = 1;led_6 = 1;led_4 = 0;led_2 = 0;break;case 3250:led_2 = 1;break;case 3275:led_2 = 0;break;case 3300:led_2 = 1;break;case 3325:led_2 = 0;break;case 3350:led_2 = 1;break;case 3375:led_2 = 0;break;case 4400:led_2 = 1;led_3 = 0;break;case 4500:led_4 = 1;led_3 = 1;temer = 0;break;void time() interrupt 1 /定時器0中斷uint16 a = 0,b = 0,c = 0,d = 0,e = 0,f = 0;th0 = 0xb8; /定時器重新賦初值tl0 = 0x00;if(num =0)num = 50;tem+;temer+;if(num = 30 & num = 32 & num = 30 & num = 0 & num = 2 & num = 0 & num = 2)f = num;5.2 1602液晶顯示器程序設計chushihua();xiezhiling(0x80+1);xieshuju(r);xiezhiling(0x80+4);xieshuju(s);xiezhiling(0x80+6);xieshuju(y);xiezhiling(0x80+9);xieshuju(s);xiezhiling(0x80+11);xieshuju(g);xiezhiling(0x80+14);xieshuju(s); xiezhiling(0xc0+1);xieshuju(r);xiezhiling(0xc0+4);xieshuju(s);xiezhiling(0xc0+6);xieshuju(y);xiezhiling(0xc0+9);xieshuju(s);xiezhiling(0xc0+11);xieshuju(g);xiezhiling(0xc0+14);xieshuju(s);xiezhiling(0x80+2);xieshuju(sma/10);xieshuju(sma%10);xiezhiling(0x80+7);xieshuju(sm0);xieshuju(smf);xiezhiling(0x80+12);xieshuju(sme/10);xieshuju(sme%10);xiezhiling(0xc0+2);xieshuju(smd/10);xieshuju(smd%10);xiezhiling(0xc0+7);xieshuju(sm0);xieshuju(smc);xiezhiling(0xc0+12);xieshuju(smb/10);xieshuju(smb%10); void zhongduan(void) interrupt 0 /外部中斷0p1 = 0xff;led_1 = 0;led_4 = 0;chushihua();xiezifu(0x80+6,sm_1);xiezifu(0xc0+6,sm_1);while(1); /終止程序,保持狀態(tài)第6章 制作電路板與調(diào)試6.1 制作電路板的步驟1.插入電氣元件,注意極性!原件布局如圖6-1所示。圖6-1 電路板原件布局圖2.剪去多余的引腳,留至電路板2-3mm3.用電烙鐵焊接元件引腳,注意不要虛焊!6.2 電路板的調(diào)試 調(diào)試電路板的時候給電路板接上5v的電源繞后觀察發(fā)光二極管的顯示和液晶顯示器的顯示是否正確,若果發(fā)光二極管和液晶顯示器的顯示正常,但是沒有按要求顯示則說明是程序不正常,如果兩者的不正常顯示則說明是焊接有問題。正常的顯示如圖6-2所示。圖 6-2 電路板正常顯示圖總結 本設計介紹了基于stc89c52單片機的智能交通燈控制系統(tǒng)的硬件體系結構、通信控制原理及其軟件設計的部分細節(jié)。應用單片機實現(xiàn)智能交通紅綠燈控制系統(tǒng)具有很強的實用性。系統(tǒng)硬件具有外圍器件少、電路簡單、成本低等優(yōu)點。整個系統(tǒng)作為獨立化模塊,在各種路口及其的上位機總控系統(tǒng)下都能靈活的掛接,具有良好的課擴展特性。該系統(tǒng)還具有先進的體系結構,極高的可靠性良好環(huán)境的適應性,容易安裝、調(diào)試、維修并節(jié)約投資,具有

溫馨提示

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

最新文檔

評論

0/150

提交評論