【文章內(nèi)容簡介】
學技術的不斷發(fā)展,單片機的工藝和集成度不斷提高,其功能正朝著多功能、高性能的方向發(fā)展,主要體現(xiàn)在以下幾方面。1. 各種等級的單片機性能提高隨著工藝技術和集成度技術的發(fā)展,許多低端單片機的性能在 CPU 功能、內(nèi)部資源及尋址范圍等方面有了較大的提高,甚至可以完成部分高端單片機才能實現(xiàn)的功能,其運算速度、功能和可靠性等方面也得到了快速的發(fā)展。2. 小型化、低功耗在一些智能控制系統(tǒng)中,其整體系統(tǒng)體積較小,功率不大,因此要求單片機的體積和功耗都要在一定范圍內(nèi),促使單片機向小型化、低功耗的方向發(fā)展。例如,1992 年美國推出的 i80860 超級單片機,運算速度為 億次每秒,可進行 32 位整數(shù)運算、64 位浮點運算,同時片內(nèi)集成了一個三維圖形處理器,可構成超級圖形工作站 [7]。 系統(tǒng)電路系統(tǒng)共分為 5 個模塊,最小系統(tǒng)模塊、LED 顯示模塊、數(shù)碼管顯示模塊、按鍵控制模塊和驅(qū)動模塊。 最小系統(tǒng)模塊最小系統(tǒng)模塊由 89C52 單片機、晶振電路及復位電路組成。89C52 單片機作為整個系統(tǒng)的核心部分,將 LED 模塊、數(shù)碼管顯示模塊、按鍵控制模塊及驅(qū)動模塊連結成一個整體的系統(tǒng),并提供程序的輸入端口;晶振電路提供時鐘激勵,保證單片機內(nèi)部和外部電路的時序邏輯電路協(xié)調(diào)動作;復位電路在上電或復位的過程中,控制 CPU 的復位狀態(tài),這段時間內(nèi)讓 CPU 保持復位狀態(tài),防止 CPU 發(fā)出錯誤的指令或執(zhí)行錯誤的操作。圖 34 最小系統(tǒng)模塊 LED 顯示模塊LED 顯示模塊由 4 個 LED 等組成,分別為LEDLEDLEDLED4,4 個 LED 分別接入 89C52 單片機的、。其中,LED1 和 LED2 分別表示南北方向的綠燈和紅燈,LED4 和 LED3 分別表示東西方向的綠燈和紅燈。當 LED1 和 LED3 點亮時,南北方向可以通行,東西方向禁止通行;當LED2 和 LED4 點亮時,南北方向禁止通行,東西方向可以通行。圖 35 LED 顯示模塊 數(shù)碼管顯示模塊數(shù)碼管顯示模塊由 4 個七段數(shù)碼管組成,接單片機 89C52 在自動控制模式中,后兩個數(shù)碼管顯示時間(從 60 秒倒計時到 1 秒) 。在人工控制模式中,在K2 鍵按下時,若當前交通為南北通行,則四個數(shù)碼管直接顯示 “9999”,若當前交通為東西通行,則四個數(shù)碼管先顯示 10 秒倒計時(從 10 秒到 1 秒) ,完成后顯示“9999” ;在 K3 鍵按下時,若當前交通為東西通行,則四個數(shù)碼管直接顯示“9999” ,若當前交通為南北通行,則四個數(shù)碼管先顯示 10 秒倒計時(從10 秒到 1 秒) ,完成后顯示“9999” ;在 K1 鍵按下時,四段數(shù)碼管由 “9999”變?yōu)?10 秒倒計時,此時系統(tǒng)進入自動控制模式。圖 36 數(shù)碼管顯示模塊 按鍵控制模塊按鍵控制模塊由 KKK3 三個按鍵組成,系統(tǒng)初始為自動控制模式。若按下 K2 鍵,則系統(tǒng)由自動控制模式進入手動控制模式,此時交通系統(tǒng)強制南北方向通行,東西方向禁止通行;若按下 K3 鍵,則系統(tǒng)有自動控制模式進入手動控制模式,此時交通系統(tǒng)強制東西方向通行,南北方向禁止通行;若按下 K1 鍵,則系統(tǒng)由手動控制模式進入自動控制模式。圖 37 按鍵控制模塊 驅(qū)動模塊驅(qū)動模塊由 4 個 PNP8550、4 個 240 歐電阻及 1 個 10k 歐的排阻組成。數(shù)碼管的段碼端口通過排阻與單片機的 P0 口相連,此處電阻起到限流作用。而數(shù)碼管的位選端口與 PNP 型三極管的射極相連,集電極接電源,為數(shù)碼管提供足夠大的驅(qū)動電流,三極管的基極與單片機的 到 相連,通過單片機端口的電位變化控制三極管的導通與截止,從而達到驅(qū)動數(shù)碼管穩(wěn)定顯示的功能 [8]。圖 38 驅(qū)動模塊4 軟件設計 主程序流程圖單片機初始化后顯示初始數(shù)值,首先進入自動控制模式,然后調(diào)用鍵盤掃描函數(shù)獲取鍵盤信息,根據(jù)按鍵情況進入不同的的工作模式,從進入各模式的子函數(shù)中,最終通過數(shù)碼管、LED 燈將交通信號顯示出來。開始程序初始化設置二極管 , 數(shù)碼管顯示初始數(shù)值調(diào)用鍵盤掃描程序 s c a n _ k e y ( ) , 獲取鍵盤信息k e y b u f = 0 e k e y b u f = 0 d k e y b u f = 0 b 其他調(diào)用 m o d e l 0 () 調(diào)用 m o d e l 1 ( 0 ) 調(diào)用 m o d e l 1 ( 1 )T 0 0 . 5 m s 定時刷新數(shù)碼顯示管 L e d 以 T 1 0 . 5 s 定時閃爍Y e s Y e s Y e s圖41 主流程圖 子程序流程控制 自動控制模式程序在自動控制模式下,通過判斷工作模式標志位 modelflag 來判斷是保持自動控制模式還是進入人工控制模式。自動控制模式下,數(shù)碼管開始 60 秒倒計時顯示(從 60 秒到 1 秒),LEDLED3 點亮且 LED1 最后 10 秒閃爍。如果modelflag 為 1,則進入人工控制模式。在 m o d e l 0 模式 下 m o d e l f l a g = 0m o d e l f l a g = 0 ;數(shù)碼管 6 0 s 延時顯示L E D 燈點亮且最后 1 0 秒閃爍轉(zhuǎn)入 m o d e l ( k ) 方式Y e s N o圖42 自動控制流程圖 人工控制模式程序在人工控制模式下,按下 K2 鍵或 K3 鍵通過判斷工作模式標志位modelflag 來判斷如何保持人工控制狀態(tài)。當工作模式標志位 modelflag 為 0 時,說明是由自動控制模式轉(zhuǎn)入人工控制模式,再通過判斷以前的交通狀態(tài)來確定當前顯示狀態(tài):若之前狀態(tài)和所要求狀態(tài)相同時,數(shù)碼管直接顯示“9999”,LED 燈也直接顯示所要求狀態(tài);若之前狀態(tài)和所要求狀態(tài)不同時,數(shù)碼管首先顯示 10 秒遞減,完成后顯示“9999”,LED 燈經(jīng)過延時后,顯示所要求狀態(tài)。當工作模式標志位 modelflag 為 1 時,說明之前工作狀態(tài)已為人工控制模式。若之前狀態(tài)與所要求狀態(tài)不同,則 LED 燈轉(zhuǎn)變?yōu)樗鬆顟B(tài),數(shù)碼顯示管保持“9999”;若之前狀態(tài)與所要求狀態(tài)相同,則 LED 燈保持之前狀態(tài),數(shù)碼顯示管仍保持“9999”。K 2 或 K 3 按下m o d e l f l a g = 0m o d e l f l a g = 1( f l a g = 0 ) amp。 amp。 ( d i r f l a g ! = k )i r f l a g = k L E D 顯示狀態(tài)方向標志 d i r f l a g 改變關閉時間定時T R 1 = 0 。 E T 1 = 0顯示 9 9 9 9數(shù)碼管顯示 1 0 s 遞減數(shù)據(jù) L E D 閃爍 1 0 sY e sN oY e sY e s N oL E D 保持以前狀態(tài)N o圖43 人工控制流程圖 鍵盤掃描程序所用三個簡單按鍵作為輸入控制端,單片機通過 P3 口寫入全 1,然后再判斷 P3 信息是否改變,即判斷出是否有鍵按下。如若有鍵按下或電路電平抖動,都可能使 P3 口電位發(fā)生變化。因此,為確定是否的確有鍵按下,要經(jīng)過一定時間的延時再次判斷鍵值與延時前是否相同。如果相同且不全為 1,則斷定有確定鍵按下,否則無鍵按下。 P 3 寫入全 1P 3 第四位是否全 1延時去抖兩次按下是否相同返回鍵值Y e sY e sN o圖44 鍵盤掃描流程圖 數(shù)碼管中斷顯示程序數(shù)碼管通過單片機定時器以一定時間間隔刷屏,當時間間隔小于人眼所能分辨的最小時間間隔時,所觀察的數(shù)碼管顯示穩(wěn)定,從而使時間正常顯示。此處用到定時器 0 的工作方式 1,即 16 位定時器。每次記滿之后需將計數(shù)值再次寫入 TH0、TL0 中。定義顯示代碼段 l e d _ t a b l e ;設置定時器 T 0 T H 0 = 0 x d 8 。T L 0 = 0 x f 0 。 T M O D = 0 x 1 1 ;開啟定時 E T 0 = 1 。 T R 0 = 1 。 f l a g = 1是否記滿T H 0 = 0 x d 8 。T L 0 = 0 x f 0 。數(shù)碼管顯示等待記滿Y e sN o圖45 數(shù)碼管中斷顯示流程圖 定時器 T1 子程序通過T1定時器提供的時序來控制交通燈顯示。每隔 ,中斷120次時實現(xiàn)60秒倒計時。中斷100次后控制LED燈閃爍,這樣來實現(xiàn)最后的10秒閃爍提醒 [9]。設置 T 1 工作方式 t m o d = 0 x 1 1設置初值 T H 1 = 3 c , T L 1 = b 0 ; j = 0開啟 T 1 : E A = 1 , E T = 1 , T R 1 = 1是否記滿寫入初值 ; T H 1 = 0 X 3 C 。 T L 1 = 0 X B 0 。 f l a g = 1 。 j + +j = 1 0j = 0 ; 將 n u m b / 2 寫入顯示緩存 d i s p _ b u fn u m b = 2 0d i r f l a g = 0s n g r e e n = ~ s n g r e e n e w g r e e n = ~ e w g r e e nn u m b n u m b = 0m o d f l a g = 1關中斷 T R 1 = 0 。 E T 1 = 0 。 f l a g = 0 。F l a g = 0 ; 顯示 9 9 9 9 ;n u m = 2 0 ; d i r f l a g 取反L e d 閃爍等待計數(shù)Y e sY e sY e sN oN oY e sY e sN oN oY e s等待中斷N oN o圖46 定時器T1子程序5 調(diào)試分析 Proteus 軟件簡介Proteus 軟 件 是 英 國 Labcenter electronics 公 司 出 版 的 EDA 工 具 軟 件 。它 不 僅 具 有 其 它 EDA 工 具 軟 件 的 仿 真 功 能 , 還 能 仿 真 單 片 機 及 外 圍 器 件 。它 是 目 前 最 好 的 仿 真 單 片 機 及 外 圍 器 件 的 工 具 。 雖 然 目 前 國 內(nèi) 推 廣 剛 起 步 ,但 已 受 到 單 片 機 愛 好 者 、 從 事 單 片 機 教 學 的 教 師 、 致 力 于 單 片 機 開 發(fā) 應 用 的科 技 工 作 者 的 青 睞 。 Proteus 是 世 界 上 著 名 的 EDA 工 具 , 從 原 理 圖 布 圖 、代 碼 調(diào) 試 到 單 片 機 與 外 圍 電 路 協(xié) 同 仿 真 , 一 鍵 切 換 到 PCB 設 計 , 真 正 實 現(xiàn)了 從 概 念 到 產(chǎn) 品 的 完 整 設 計 。 是 目 前 世 界 上 唯 一 將 電 路 仿 真 軟 件 、 PCB 設計 軟 件 和 虛 擬 模 型 仿 真 軟 件 三 合 一 的 設 計 平 臺 , 其 處 理 器 模 型 支 持805 HC1 PIC10/12/16/18/24/30/DsPIC3 AVR、 ARM、 8086 和MSP430 等 , 2022 年 又 增 加 了 Cortex 和 DSP 系 列 處 理 器 , 并 持 續(xù) 增 加 其 他系 列 處 理 器 模 型 。 在 編 譯 方 面 , 它 也 支 持 IAR、 Keil 和 MPLAB 等 多 種 編譯 器 。 Proteus 仿真圖首 先 運 用 proteus 軟 件 畫 出 系 統(tǒng) 電 路 圖 , 然 后 分 別 仿 真 出 自 動 控 制 和 人工 控 制 兩 種 模 式 下 電 路 的 運 行 狀 況 [10]。 自動控制仿真圖51 自動控制仿真 人工控制仿真圖52 人工控制仿真結 語本論文在深入探討分析交通控制原理的基礎上設計出了一套基于單片機的交通控制系統(tǒng),通過閱讀大量相關文獻,對當前交通控制技術有了比較深入的了解,并在此基礎上進行了硬件選型和軟件系統(tǒng)的設計,經(jīng)過在實驗室調(diào)試,分析并驗證了設計方案的可行性。在開發(fā)過程中,運用了Proteus開發(fā)軟件,在編程方面使用了C語言。課題完成的主要工作與結論如下:(1) 閱讀了大量資料,對交通控制系統(tǒng)進行了綜合分析,明確了論文的方向,確定了基于80C51單片機的研究與設計的總體設計方案;(2) 分析了具體要求,題注硬件總體設計方案,對硬件進行了選型。(3) 深入分析、總結了系統(tǒng)軟件部分的原理,基于Protues進行了軟件系統(tǒng)的設計。(4) 經(jīng)過實驗驗證,本系統(tǒng)準確達到了本次設計的要求,進而驗證了系統(tǒng)的可行性。本次設計經(jīng)歷讓我對交通控制系統(tǒng)有了更深入的認識,也了解到現(xiàn)有交通控制系統(tǒng)存在的不足。希望通過努力,最終能將本系統(tǒng)修改為可以指揮交通的應用型系統(tǒng),彌補現(xiàn)有交通控制系統(tǒng)的不足,為交通系統(tǒng)的發(fā)展貢獻一份力量。參考文獻[1] [J]. [2] [J]. 今日中國 .2022.[3] [M]. 電子工業(yè)出版社. . [4] [M]. .11. [5] [M]. 西安電子科技大學出版社 .1998.[6] (第三版)[M]. 北京航空航天大學出版社 .2022. [7] [J]. .[8] [M]. 高等教育出