模擬路燈控制系統(tǒng)的設(shè)計(jì).doc
《模擬路燈控制系統(tǒng)的設(shè)計(jì).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《模擬路燈控制系統(tǒng)的設(shè)計(jì).doc(61頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
. 摘 要 路燈照明對(duì)人們的日常生活有著很重要的作用,路燈照明系統(tǒng)的好壞直接影響到人們夜晚出行的安全。中國(guó)的路燈控制系統(tǒng)老舊,效率低,浪費(fèi)能源過多。路燈系統(tǒng)控制方式落后,無(wú)法遠(yuǎn)程控制開關(guān)燈時(shí)間,缺乏設(shè)備故障檢測(cè)和報(bào)警系統(tǒng)。急需升級(jí)改善。單片機(jī)擁有卓越的控制能力,已經(jīng)廣泛應(yīng)用在很多領(lǐng)域?;趩纹瑱C(jī)的智能路燈控制系統(tǒng)可以改變中國(guó)路燈現(xiàn)狀,使得路燈的管理變得簡(jiǎn)單、可靠,能節(jié)約更多的電能,能使人們更加安全的出行,減少因路燈控制系統(tǒng)不完善而引起的交通事故。因此,設(shè)計(jì)一款智能路燈控制系統(tǒng)具有非常重要的意義。 文章介紹了模擬路燈控制系統(tǒng)的兩大組成部分,即硬件系統(tǒng)和軟件系統(tǒng)。硬件系統(tǒng)以AT89S52單片機(jī)為主控芯片,由實(shí)時(shí)時(shí)鐘芯片DS1302產(chǎn)生實(shí)時(shí)系統(tǒng)時(shí)間,由LCD1602液晶顯示屏顯示菜單、提示和實(shí)時(shí)時(shí)間等信息,使用獨(dú)立式鍵盤調(diào)整切換功能菜單、設(shè)置開關(guān)燈時(shí)間等,采用光敏電阻檢測(cè)環(huán)境的明暗情況,使用反射型紅外光電傳感器檢測(cè)交通情況,配合蜂鳴器和LED燈實(shí)現(xiàn)故障報(bào)警。軟件系統(tǒng)包含系統(tǒng)監(jiān)控程序模塊、顯示程序模塊、鍵盤程序模塊、實(shí)時(shí)時(shí)鐘程序模塊,環(huán)境檢測(cè)程序模塊、報(bào)警程序模塊、交通檢測(cè)程序模塊,設(shè)定路燈開關(guān)時(shí)間程序模塊等。 通過在proteus軟件中模擬仿真調(diào)試,實(shí)現(xiàn)了課題規(guī)定的功能和性能指標(biāo)要求,設(shè)計(jì)成果具有一定的推廣應(yīng)用價(jià)值。 關(guān)鍵詞 : 路燈控制;AT89S52;DS1302;LCD1602 精選word范本! ABSTRACT Street lighting has a quite significant impact on peoples daily life, the quality of the street lamp lighting system directly affects the safety of people at night. In china, street lamp control system is old-style, low efficiency and waste too much energy.The mode of streetlight control system is backward, it can’t remotely control switch lights in time, and lack equipment in fault detection and alarm system, which is badly in need of upgrading. MCU has excellent control ability, which has been widely used in many fields. Based on MCU intelligent lighting control system can change the status of Chinese street lighting, the street lamp management becomes simple and reliable, which can save more energy, make people more safe travel and reduce traffic accidents caused by defective street lamp control system . Therefore, it is great crucial to design a intelligent street lamp control system. This paper introduces the two components of the analog street lamp control system, namely the hardware system and the software system. The main control chip of hardware system is the AT89S52 microcontroller , real-time system time is produced by the real-time clock chip DS1302 , the information of menu,prompt and real time is displayed on the LCD1602 , hardware system use a separate keyboard to adjust or switch function menu and set the time switch lights, photosensitive resistance to measure the brightness of environment, and the reflection type infrared photoelectric sensor to detect traffic situation, with the buzzer and LED lamp realizes fault alarm. Software system includes system monitor module, display module, keyboard module, real-time clock module, environment detection program module, alarm module program, traffic detection program module, set the street lamp switch time program module and so on. By simulating and debugging in Proteus Software, the function and performance requirement of the project are achieved, and the design result has certain application value. Key words: street lamp control; at89s52; ds1302; lcd1602 精選word范本! 目 錄 1 緒論 1 1.1 課題的背景及意義 1 1.2 設(shè)計(jì)的主要工作 2 2 設(shè)計(jì)思想與方案 3 2.1 設(shè)計(jì)思想 3 2.2 設(shè)計(jì)方案 3 3 硬件系統(tǒng)的設(shè)計(jì) 5 3.1 主要元器件介紹 5 3.1.1 AT89S52單片機(jī) 5 3.1.2 DS1302芯片 6 3.1.3 LCD1602液晶顯示屏 6 3.1.4 光敏電阻 8 3.1.5 紅外光電傳感器 8 3.1.6 LM324電壓比較器 9 3.2 硬件單元電路的設(shè)計(jì) 10 3.2.1 AT89S52單片機(jī)最小系統(tǒng) 10 3.2.2 獨(dú)立鍵盤模塊電路 12 3.2.3 LCD1602液晶顯示電路 13 3.2.4 DS1302時(shí)鐘電路 14 3.2.5 交通環(huán)境檢測(cè)電路 14 3.2.6 環(huán)境明暗檢測(cè)電路 14 3.2.7 故障檢測(cè)檢測(cè)電路 16 3.2.8 聲光報(bào)警電路 16 3.2.9 路燈電路 16 4 軟件系統(tǒng)的設(shè)計(jì) 17 4.1 軟件設(shè)計(jì)的描述 17 4.2 系統(tǒng)軟件的程序設(shè)計(jì) 17 4.2.1 系統(tǒng)監(jiān)控模塊程序設(shè)計(jì) 17 4.2.2 獨(dú)立鍵盤模塊程序設(shè)計(jì) 17 精選word范本! 4.2.3 液晶顯示模塊程序設(shè)計(jì) 18 4.2.4 DS1302時(shí)鐘模塊程序設(shè)計(jì) 19 4.2.5 設(shè)定路燈開關(guān)時(shí)間模塊程序設(shè)計(jì) 20 4.2.6 環(huán)境檢測(cè)模塊程序設(shè)計(jì) 21 4.2.7 交通檢測(cè)模塊程序設(shè)計(jì) 21 4.2.8 聲光報(bào)警模塊程序設(shè)計(jì) 21 5 系統(tǒng)調(diào)試運(yùn)行及結(jié)果分析 23 5.1 系統(tǒng)使用說明 23 5.2 系統(tǒng)運(yùn)行結(jié)果 23 5.2.1 進(jìn)入系統(tǒng)提示 23 5.2.2 選擇菜單顯示結(jié)果 23 5.2.3 實(shí)時(shí)時(shí)間顯示結(jié)果 24 5.2.4 環(huán)境明暗變化仿真結(jié)果 24 5.2.5 聲光報(bào)警仿真結(jié)果 25 5.2.6 交通環(huán)境仿真結(jié)果 26 5.2.7 設(shè)定路燈開關(guān)時(shí)間仿真結(jié)果 27 5.2.8 獨(dú)立控制路燈仿真結(jié)果 29 5.3 結(jié)果分析與結(jié)論 30 5.4 設(shè)計(jì)體會(huì) 30 結(jié)束語(yǔ) 32 參考文獻(xiàn) 33 致謝 1 附錄 36 附錄A 元件清單 36 附錄B 程序清單 37 精選word范本! 1 緒論 1.1 課題的背景及意義 路燈照明對(duì)人們的日常生活有著很重要的作用,路燈照明系統(tǒng)的好壞直接影響到人們夜晚出行的安全。過去的幾十年里,中國(guó)的經(jīng)濟(jì)發(fā)生了天翻地覆的變化,中國(guó)的路燈數(shù)量逐年上升,數(shù)量龐大,但是國(guó)內(nèi)路燈的控制系統(tǒng)老舊落后,國(guó)家應(yīng)該高度重視這種現(xiàn)狀。 由于中國(guó)人口基數(shù)和人口密度大,遼遠(yuǎn)的公路總長(zhǎng)度,中國(guó)已經(jīng)是路燈總數(shù)量全球最多的國(guó)家之一。2012年路燈總數(shù)量已經(jīng)達(dá)到3000多萬(wàn)盞,隨著國(guó)家對(duì)公路安全的重視不斷加強(qiáng),每年的增長(zhǎng)速度很快,到2016年,路燈的數(shù)量之多可想而知。就路燈照明而言,耗電量就幾乎占全國(guó)照明總用電量的三分之一[1]。良好的交通道路照明可以給國(guó)民生活提供安全的環(huán)境,但是,由此產(chǎn)生的問題也很嚴(yán)峻,首先,路燈數(shù)量多導(dǎo)致能源的使用逐年增加,而且使道路路燈的維護(hù)更加困難,維護(hù)人員和維護(hù)費(fèi)用增加,政府的財(cái)政支出花銷增多,光源污染現(xiàn)象嚴(yán)重,問題的出現(xiàn)給社會(huì)帶來了不利影響,亟待政府出臺(tái)政策解決問題[2]。 中國(guó)的路燈控制系統(tǒng)老舊,電能使用效率低,浪費(fèi)能源過多。中國(guó)路燈系統(tǒng)的控制方式落后,無(wú)法遠(yuǎn)程控制路燈點(diǎn)亮和熄滅的時(shí)間,而且缺乏設(shè)備故障檢測(cè)和報(bào)警系統(tǒng),急需升級(jí)改善。單片機(jī)擁有卓越的控制能力,已經(jīng)廣泛應(yīng)用在很多領(lǐng)域?;趩纹瑱C(jī)的智能路燈控制系統(tǒng)可以改變中國(guó)路燈現(xiàn)狀,使得路燈的管理變得簡(jiǎn)單、可靠,能節(jié)約更多的電能,能使人們更加安全的出行。因此,設(shè)計(jì)一款智能路燈控制系統(tǒng)具有非常重要的意義[1]。 相比國(guó)內(nèi)的路燈控制系統(tǒng),國(guó)外的路燈控制系統(tǒng)有著很大的優(yōu)勢(shì),國(guó)外的科技很新穎獨(dú)特。國(guó)外將RFID、互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等技術(shù)用于路燈控制系統(tǒng)。有些發(fā)達(dá)國(guó)家,將RFID技術(shù)運(yùn)用到路燈控制系統(tǒng)中,在公路旁邊安裝RFID讀卡器,在汽車上安裝RDID電子標(biāo)簽,設(shè)計(jì)了一款智能路燈自動(dòng)控制系統(tǒng),可以對(duì)路燈進(jìn)行智能控制,不僅能夠節(jié)約能源,而且管理路燈系統(tǒng)更加有效率。2015年,美國(guó)洛杉磯與荷蘭PHILIPS公司達(dá)成合作協(xié)議,計(jì)劃將洛杉磯10萬(wàn)盞以上的路燈全新升級(jí),將它們統(tǒng)一添加到一個(gè)無(wú)線網(wǎng)絡(luò)中。如果發(fā)現(xiàn)路燈出現(xiàn)問題,管理者想要控制它們的開關(guān)狀態(tài),只須在電腦前打開瀏覽器就可以成功控制路燈,在飛利浦的無(wú)線網(wǎng)絡(luò)系統(tǒng)中,用戶通過地圖能查看到全城路燈的詳細(xì)狀況,包括每一盞路燈的型號(hào)和使用狀態(tài)。管理者使用鼠標(biāo)對(duì)路燈操作,就可以實(shí)現(xiàn)打開或關(guān)閉城市路燈并且可以控制路燈的亮暗。PHILIPS公司設(shè)計(jì)的系統(tǒng)使用非常方便,可以給人們的夜行提供良好的環(huán)境。從國(guó)內(nèi)外的路燈系統(tǒng)的發(fā)展比較,國(guó)外的科技真的很先進(jìn),中國(guó)應(yīng)該努力的學(xué)習(xí)國(guó)外的科技和設(shè)計(jì)思路,提高中國(guó)自身的科技力量,從而提升中國(guó)的國(guó)民生活質(zhì)量。 以MCU為控制核心的智能路燈控制系統(tǒng)可以顯著改善中國(guó)道路路燈控制系統(tǒng),不但可以達(dá)到智能化控制,使路燈控制系統(tǒng)的管理更加有效率,而且還能降低了運(yùn)行成本,除此之外,智能的路燈控制系統(tǒng)可以很好的節(jié)約能源,減少對(duì)環(huán)境的影響,提高人們的日常生活質(zhì)量,減少因路燈系統(tǒng)不完善而發(fā)生的事故[4,5]。因此,智能路燈控制系統(tǒng)的全面使用,使路燈控制系統(tǒng)的管理更簡(jiǎn)便可靠,提高服務(wù)效率,使城市的市容市貌更美麗,道路交通環(huán)境更安全。 1.2 設(shè)計(jì)的主要工作 模擬路燈控制系統(tǒng)的設(shè)計(jì)的特點(diǎn)是,能顯示實(shí)時(shí)時(shí)間,能定時(shí)點(diǎn)亮和熄滅路燈,能根據(jù)環(huán)境明暗自動(dòng)點(diǎn)亮和熄滅路燈,能根據(jù)交通情況自動(dòng)點(diǎn)亮和熄滅路燈,并且能檢查故障。設(shè)計(jì)的系統(tǒng)可控制性很好,比較智能化,操作簡(jiǎn)單,容易上手。 要想設(shè)計(jì)好模擬路燈控制系統(tǒng),系統(tǒng)最關(guān)鍵的就是設(shè)計(jì)控制模塊和檢測(cè)模塊。首先,設(shè)計(jì)系統(tǒng)的核心就是要挑選一個(gè)合適,控制能力又強(qiáng)的控制模塊,需要查詢相關(guān)的資料,確定用那種芯片作為系統(tǒng)的主控模塊。然后設(shè)計(jì)檢測(cè)模塊,包括環(huán)境檢測(cè)和交通情況檢測(cè),根據(jù)設(shè)計(jì)的要求,確定所有的檢測(cè)元器件,設(shè)計(jì)好完整的檢測(cè)電路。系統(tǒng)還需要能夠顯示實(shí)時(shí)時(shí)間,設(shè)定路燈點(diǎn)亮和熄滅的時(shí)間,因此,要設(shè)計(jì)實(shí)時(shí)時(shí)鐘電路,顯示電路和按鍵輸入電路。系統(tǒng)還要求,當(dāng)路燈出現(xiàn)故障時(shí),系統(tǒng)能過自動(dòng)的發(fā)出聲光報(bào)警,所以需要設(shè)計(jì)者設(shè)計(jì)聲光報(bào)警電路。當(dāng)設(shè)計(jì)好了硬件電路圖后,設(shè)計(jì)的主要工作就是要設(shè)計(jì)各個(gè)模塊的軟件程序。軟件系統(tǒng)包括系統(tǒng)監(jiān)控程序模塊、液晶顯示程序模塊、獨(dú)立鍵盤程序模塊、DS1302時(shí)鐘程序模塊,環(huán)境檢測(cè)程序模塊、聲光報(bào)警程序模塊、交通檢測(cè)程序模塊、設(shè)定路燈開關(guān)時(shí)間程序模塊等。當(dāng)兩者都設(shè)計(jì)完成之后,就需要可以進(jìn)行仿真或者實(shí)物制作,期間,需要不斷的調(diào)試軟件和硬件電路,最后實(shí)現(xiàn)課題規(guī)定的功能和性能指標(biāo)要求。以上就是整個(gè)設(shè)計(jì)的主要的工作。 2 設(shè)計(jì)思想與方案 2.1 設(shè)計(jì)思想 首先根據(jù)課題的設(shè)計(jì)要求,查找翻閱相關(guān)資料,確定系統(tǒng)的各個(gè)模塊,確定模塊后,再去選擇各個(gè)模塊需要的電子元器件,可以在Proteus仿真軟件中先設(shè)計(jì)好原理圖,再完成系統(tǒng)的軟件設(shè)計(jì)。在Proteus中仿真,當(dāng)所有的功能都能實(shí)現(xiàn)時(shí),然后就可以設(shè)計(jì)硬件原理圖,可以根據(jù)硬件原理圖做出實(shí)物,再通過反復(fù)的調(diào)試,實(shí)現(xiàn)設(shè)計(jì)要求的功能,最后整理設(shè)計(jì)的相關(guān)材料,編寫課題說明書。 設(shè)計(jì)的思路主要硬件電路系統(tǒng)與軟件系統(tǒng)設(shè)計(jì)。硬件系統(tǒng)包括主控模塊電路、電源電路、晶振電路、復(fù)位電路、下載電路、獨(dú)立按鍵電路、路燈電路、液晶顯示電路、DS1302時(shí)鐘電路、交通監(jiān)測(cè)電路、明暗環(huán)境監(jiān)測(cè)電路、聲光報(bào)警電路、故障監(jiān)測(cè)電路等;軟件系統(tǒng)是針對(duì)設(shè)計(jì)的各個(gè)模塊編寫相應(yīng)的模塊程序。其中包含系統(tǒng)監(jiān)控程序、液晶顯示程序、獨(dú)立鍵盤程序、DS302時(shí)鐘程序,環(huán)境檢測(cè)程序、聲光報(bào)警程序、交通檢測(cè)程序,設(shè)定路燈開關(guān)時(shí)間程序等模塊。 2.2 設(shè)計(jì)方案 設(shè)計(jì)模擬路燈控制系統(tǒng)有很多種方法,可以用高度集成的FPGA控制芯片來設(shè)計(jì),也可以采用單片機(jī)技術(shù)實(shí)現(xiàn)模擬路燈控制系統(tǒng)的設(shè)計(jì),兩者都有各自的優(yōu)勢(shì)和特點(diǎn),首先來介紹基于FPGA控制芯片設(shè)計(jì)的系統(tǒng)方案。 方案一:FPGA控制芯片是一種集成度非常高的芯片,使用FPGA設(shè)計(jì)系統(tǒng),非常的靈活,它可以支持在線修改的功能,隨時(shí)修改軟件系統(tǒng)設(shè)計(jì),但是不用修改任何硬件電路,它能解決定制電路的缺陷,可以肯定的是,F(xiàn)PGA可以設(shè)計(jì)任何數(shù)字電路?;贔PGA的模擬路燈控制系統(tǒng)需要設(shè)計(jì)一些外圍的電路,其中包括環(huán)境檢測(cè)電路、故障檢測(cè)電路、交通檢測(cè)電路、聲光報(bào)警電路、按鍵電路、顯示電路和路燈電路等?;贔PGA芯片設(shè)計(jì)的系統(tǒng)框圖如圖1所示。 方案二:?jiǎn)纹瑱C(jī)技術(shù)使用的范圍非常廣,已經(jīng)應(yīng)用與很多領(lǐng)域,單片機(jī)最突出的特點(diǎn)就是控制能力非常強(qiáng)悍,芯片響應(yīng)速度快,同時(shí)也是高度集成的一種芯片,集成了模數(shù)轉(zhuǎn)換器、串口、定時(shí)器、中斷、看門狗等外設(shè),使得設(shè)計(jì)系統(tǒng)很方便,能達(dá)到很好的效果。系統(tǒng)可以使用AT89S52單片機(jī)為主控芯片,由實(shí)時(shí)時(shí)鐘芯片DS1302產(chǎn)生實(shí)時(shí)系統(tǒng)時(shí)間,由LCD1602液晶顯示屏顯示菜單、提示和實(shí)時(shí)時(shí)間等信息,使用獨(dú)立式鍵盤調(diào)整切換功能菜單、設(shè)置開關(guān)燈時(shí)間等,采用光敏電阻檢測(cè)環(huán)境的明暗情況,使用反射型紅外光電傳感器檢測(cè)交通情況,配合蜂鳴器和LED燈實(shí)現(xiàn)故障報(bào)警[6]。所以硬件電路設(shè)計(jì)包括AT89S52主控芯片、電源電路、晶振電路、復(fù)位電路、下載電路、獨(dú)立按鍵電路、路燈電路、顯示電路、時(shí)鐘電路、交通監(jiān)測(cè)電路、明暗環(huán)境監(jiān)測(cè)電路、聲光報(bào)警電路、故障監(jiān)測(cè)電路等?;趩纹瑱C(jī)設(shè)計(jì)的系統(tǒng)框圖如圖2所示。 圖1 基于FPGA芯片設(shè)計(jì)的系統(tǒng)框圖 圖2 基于單片機(jī)設(shè)計(jì)的系統(tǒng)框圖 根據(jù)上述兩個(gè)方案的介紹,各有優(yōu)點(diǎn),但是考慮到設(shè)計(jì)系統(tǒng)的成本和適用性,單片機(jī)有著天然的優(yōu)勢(shì),單片機(jī)價(jià)格便宜,功耗低,易于控制,可靠性高,開發(fā)更加容易,而FPGA價(jià)格昂貴,不適合模擬路燈控制系統(tǒng)的設(shè)計(jì),所以選用方案二。 3 硬件系統(tǒng)的設(shè)計(jì) 3.1 主要元器件介紹 3.1.1 AT89S52單片機(jī) 模擬路燈控制系統(tǒng)的設(shè)計(jì)是以AT89S52為主控芯片。AT89S52是一款高度集成、低功耗、控制能力非常強(qiáng)的8位控制芯片,是由Atmel公司生產(chǎn),使用可編程的Flash存儲(chǔ)器,容量高達(dá)8KB,擁有256字節(jié)數(shù)據(jù)存儲(chǔ)器,與80C51單片機(jī)完全兼容。除此之外,文章采用的AT89S52是PDIP40封裝,具有4 0個(gè)引腳,多達(dá)32個(gè)可用的雙向I/O口,而且內(nèi)部資源豐富,具有系統(tǒng)異常可以復(fù)位的看門狗定時(shí)器,6個(gè)中斷源(2個(gè)外部中斷源,一個(gè)串口中斷源,3個(gè)定時(shí)/計(jì)數(shù)中斷源),3個(gè)可以定時(shí)計(jì)數(shù)的16 位定時(shí)器/計(jì)數(shù)器,其中一個(gè)定時(shí)器T2可以捕捉外部信息,1個(gè)全雙工異步串行通信口,內(nèi)部還有自帶的晶振和時(shí)鐘電路[7,8]。另外,AT89S52兼容匯編和C語(yǔ)言編程,C語(yǔ)言程序具有高度移植性,使得開發(fā)工作更簡(jiǎn)便。AT89S52芯片的管腳分布圖如圖3所示。 圖3 AT89S52芯片的管腳分布圖 3.1.2 DS1302芯片 由于Ds1302具有高性能、低功耗、穩(wěn)定的實(shí)時(shí)時(shí)間計(jì)時(shí)能力等特點(diǎn),所以文章選用DS1302產(chǎn)生系統(tǒng)所需的實(shí)時(shí)時(shí)鐘。DS1302由美國(guó)DALLAS公司研發(fā)生產(chǎn),它可以對(duì)時(shí)間和日期進(jìn)行準(zhǔn)確的計(jì)時(shí),識(shí)別年份是否為閏年,工作電壓為2.5伏特~5.5伏特[9]。DS1302內(nèi)部有31字節(jié)數(shù)據(jù)寄存器,可以臨時(shí)存放接收的數(shù)據(jù)。DS1302只有8個(gè)引腳,采用三根線信號(hào)線(SCLK、IO、RST)與CPU進(jìn)行同步通信,Vcc1接外部后備電源,可以使用3.6V的電池,VCC2外接主電源,電壓2.5V以上,當(dāng)主電源切斷的情況下,在后備電源的供電下,芯片同樣可以保持時(shí)鐘正常的運(yùn)行,不會(huì)丟失數(shù)據(jù),具有掉電保護(hù)的作用,安全性能好。1腳和2腳是時(shí)鐘源接口,需要外接32.768kHz晶振,在內(nèi)部電路作用下進(jìn)行32768分頻,可以產(chǎn)出精確的1秒時(shí)基。RST是復(fù)位/片選線,當(dāng)RST為高電平使能所有的數(shù)據(jù)傳送,使能單片機(jī)對(duì)DS1302進(jìn)行讀寫操作。在數(shù)據(jù)傳送過程中,一旦RST突變?yōu)榈碗娖剑麄€(gè)數(shù)據(jù)傳送將被停止,除此之外,當(dāng)且僅當(dāng)SCLK是低電平的時(shí)候,RST才能變成高電平,I/O引腳為傳送數(shù)據(jù)口,雙向傳輸數(shù)據(jù)(雙向),SCLK引腳作為芯片的同步時(shí)鐘輸入口,通過這個(gè)引腳,DS1302能與其他芯片進(jìn)行同步通信,只有當(dāng)SCLK是上升沿的時(shí)候,I/O口才能接受的到外部傳送過來的數(shù)據(jù)[10]。 DS1302的引腳功能圖如圖4所示。 圖4 DS1302的引腳功能圖 3.1.3 LCD1602液晶顯示屏 LCD1602液晶顯示屏具有良好的顯示字符功能,所以文章選用它來作為顯示時(shí)間、提示等信息,相比數(shù)碼管顯示器,它更容易控制,更加穩(wěn)定。LCD1602液晶顯示屏是一種廣泛應(yīng)用于工業(yè)生產(chǎn)的字符型液晶,總共可以顯示32個(gè)字符,是一塊由若干個(gè)5X7或者5X11等點(diǎn)陣字符位組成點(diǎn)陣型液晶屏,可以用來顯示符號(hào)、數(shù)字、字母等。1602代表16X2,也就是可以顯示32個(gè)字符,每行顯示16個(gè)字符,總共兩行[11]。只需要控制LCD1602的3根引腳的時(shí)序就能使LCD正常顯示數(shù)據(jù),RS=0,RW=0,可以往LCD寫入指令或者顯示地址,RS=1,RW=0可以可以往LCD寫入顯示的數(shù)據(jù),當(dāng)E腳出現(xiàn)下降沿,數(shù)據(jù)和命令就能被接收或發(fā)送,從而顯示數(shù)據(jù)。 LCD1602基本技術(shù)參數(shù)為: 顯示容量:2行,每行16個(gè)字符 芯片正常工作電壓:4.5~5.5伏特 工作電流:2毫安 液晶顯示最佳時(shí)工作電壓:5伏特 LCD1602液晶顯示屏各個(gè)引腳解釋如表1所示: 表1 LCD1602液晶顯示屏各個(gè)引腳解釋 編號(hào) 符號(hào) 引腳解釋 編號(hào) 符號(hào) 引腳解釋 1 VSS 電源地 9 D2 數(shù)據(jù) 2 VDD 電源正極 10 D3 數(shù)據(jù) 3 VL 液晶顯示偏壓 11 D4 數(shù)據(jù) 4 RS 數(shù)據(jù)/命令選擇 12 D5 數(shù)據(jù) 5 R/W 讀/寫選擇 13 D6 數(shù)據(jù) 6 E 使能信號(hào) 14 D7 數(shù)據(jù) 7 D0 數(shù)據(jù) 15 BLA 背光源正極 8 D1 數(shù)據(jù) 16 BLK 背光源負(fù)極 下面介紹各個(gè)引腳的功能。 第1腳:VSS為電源地。 第2腳:VDD接5V電源正級(jí)。 第3腳:VL是用來對(duì)屏幕亮度對(duì)比度進(jìn)行調(diào)整的接口,當(dāng)置高電平時(shí)對(duì)比 度最差,接低電平時(shí),對(duì)比度最好,如果對(duì)比度太高,會(huì)產(chǎn)生重影, 可以通過電位器調(diào)整對(duì)比度,一般采用10K。 第4腳:RS是功能選擇口,被置高電平,代表傳輸數(shù)據(jù),被置低電平,傳 輸控制命令字。 第5腳:R/W是用來傳送讀寫信號(hào)的接口,被置高電平代表可以進(jìn)行讀操作, 被置低電平代表可以進(jìn)行寫操作。 第6腳:E端是使能端,當(dāng)E為下降沿的時(shí),LCD才能讀取單片機(jī)發(fā)送過來 的數(shù)據(jù)和命令。 第7~14腳:用來同單片機(jī)相接線,傳輸雙向數(shù)據(jù)的信號(hào)接口。 第15腳:背光源正極。 第16腳:背光源負(fù)極。 LCD1602實(shí)物圖如圖4所示。 圖4 LCD1602實(shí)物圖 3.1.4 光敏電阻 光敏電阻的特點(diǎn)是當(dāng)光照強(qiáng)度變大,其電阻會(huì)減小,光照強(qiáng)度變小,電阻會(huì)增大,光照強(qiáng)度小的時(shí)候,暗電阻會(huì)高達(dá)1~5M歐姆,光照強(qiáng)度大的時(shí)候,亮電阻才50K歐姆左右,這說明光敏電阻的靈敏度很好,可以比較準(zhǔn)確的檢測(cè)出環(huán)境的變化。所以文章采用GL3547光敏電阻檢測(cè)環(huán)境明暗情況。GL3547的亮電阻為50K~100K,暗電阻高達(dá)5M歐姆。光敏電阻與200K歐姆電阻串聯(lián)分壓接入LM324,當(dāng)光線變?nèi)鯐r(shí),光敏電阻變小,使得LM324的輸出為低電平,單片機(jī)可以讀取低電平,執(zhí)行相應(yīng)的操作,整個(gè)原理就是光敏電阻將光信號(hào)轉(zhuǎn)化成了電信號(hào),從而得到環(huán)境的變化情況。如果設(shè)計(jì)的項(xiàng)目有光控功能需求,可以使用光線強(qiáng)度較亮的白熾燈模擬,縮短開發(fā)的時(shí)間[12]。光敏電阻的實(shí)物圖如圖5所示。 圖5 光敏電阻的實(shí)物圖 3.1.5 紅外光電傳感器 文章設(shè)計(jì)的模擬路燈控制系統(tǒng)采用紅外光電傳感器ST178檢測(cè)交通環(huán)境情況。它的特點(diǎn)有三個(gè),采用靈敏度高的光電晶體管和發(fā)射功率高的紅外光電二極管組成,檢測(cè)距離為4-10mm ,采用非接觸檢測(cè)方式[13]。ST178的工作原理是,當(dāng)有物體靠近ST178時(shí),它的輸出為低電平,沒有物體遮擋時(shí),它的輸出為高電平,單片機(jī)可以觀察ST178的輸出,從而得出交通的變化。ST178的實(shí)物圖如圖6所示。 圖6 ST178的實(shí)物圖 3.1.6 LM324電壓比較器 LM324是帶差分輸入的標(biāo)準(zhǔn)運(yùn)算放大器,可以減少共模干擾,與其他的運(yùn)算放大器對(duì)比,占有一定的上風(fēng)。LM324的工作電壓為3V到32伏,靜態(tài)電流為普通運(yùn)放的靜態(tài)電流的20%[14]。當(dāng)去掉LM324內(nèi)部的反饋電阻時(shí),LM324可以用作電壓比較器,電壓比較器的輸出是一種高低電平組成的矩形波,相當(dāng)于數(shù)字信號(hào),而輸入確實(shí)模擬信號(hào),所以LM324廣泛用于數(shù)字電子技術(shù)中,它的原理是當(dāng)同相輸入端信號(hào)大于反相輸入端信號(hào)時(shí),其輸出為低電平,當(dāng)小于反相輸入端時(shí),其輸出為高電平[15]。LM324的實(shí)物圖如圖7所示,LM324的電路圖形符號(hào)如圖8所示。 圖7 LM324的實(shí)物圖 圖8 LM324的電路圖形符號(hào) 3.2 硬件單元電路的設(shè)計(jì) 3.2.1 AT89S52單片機(jī)最小系統(tǒng) 單片機(jī)最小系統(tǒng)是由單片機(jī)芯片、復(fù)位、晶振、電源、下載等電路組成。單獨(dú)一個(gè)單片機(jī)芯片是不能完成控制任務(wù)的,需要電源電路給芯片供電,除此之外,還需要晶振電路給單片機(jī)提供時(shí)鐘源,單片機(jī)才能工作,當(dāng)單片機(jī)芯片死機(jī)的時(shí)候,需要復(fù)位電路復(fù)位單片機(jī)。因而對(duì)于系統(tǒng)的設(shè)計(jì),首先要設(shè)計(jì)單片機(jī)的最小系統(tǒng)。 (1) AT89S52控制芯片電路部分:AT89S52控制芯片電路如圖9所示。 圖9 AT89S52控制芯片電路 (2)電源電路部分:模擬路燈控制系統(tǒng)的各個(gè)模塊正常工作必須引入穩(wěn)定的供電電壓,才能使各個(gè)模塊能過驅(qū)動(dòng)其他外圍電路,文章設(shè)計(jì)的模擬路燈控制系統(tǒng)需要+5V的供電電壓,所以需要設(shè)計(jì)直流穩(wěn)壓電源,文章設(shè)計(jì)的直流穩(wěn)壓電源是由變壓器、整流、濾波、穩(wěn)壓等四部分電路組成。首先,通過電源變壓器(12V輸出 20w )將交流電壓220V降壓成12V左右交流電壓,然后通過整流橋(2W10 2A/1000V)整流變成波動(dòng)的直流電壓,因?yàn)椴▌?dòng)的直流電流還存在很大的文波,所以需要用濾波電路除去它,文章使用電容濾波(470μF和0.1μF)消除波動(dòng)的直流成分,可以得到比較平整的直流電壓,但是平整的直流電壓還會(huì)隨著電網(wǎng)電壓的波動(dòng)、負(fù)載和溫度的變化而波動(dòng)[16]。為了解決問題,文章通過穩(wěn)壓芯片(LM7805)輸出穩(wěn)定的+5V直流電壓,為了知道電源是否接通,在電源輸出端接了一個(gè)發(fā)光二極管,串聯(lián)470Ω電阻防止燒壞發(fā)光二極管。電源電路如圖10所示。 圖10 電源電路 (3)晶振電路部分:晶振相當(dāng)于單片機(jī)的心臟,在單片機(jī)系統(tǒng)里的作用非常大,它結(jié)合自己內(nèi)部的電路,可以產(chǎn)生單片機(jī)必需的時(shí)鐘驅(qū)動(dòng),單片機(jī)執(zhí)行的所有指令都是建立在時(shí)鐘基礎(chǔ)上的,晶振諧振的時(shí)鐘頻率越高,那單片機(jī)的運(yùn)行速度也就越快[17]。通常單片機(jī)系統(tǒng)共用同一個(gè)晶振,可以保證單片機(jī)系統(tǒng)各個(gè)模塊同步。文章設(shè)計(jì)的晶振電路是通過在AT89S52的XT1、XT2引腳上接入12MHz的石英晶振,外加兩個(gè)電容(33PF)組成的電路,為單片機(jī)提供時(shí)鐘信號(hào)。晶振電路如圖11所示。 圖11 晶振電路 (4)復(fù)位電路部分:所有的單片機(jī)系統(tǒng)設(shè)計(jì),都要設(shè)計(jì)系統(tǒng)的復(fù)位電路,當(dāng)系統(tǒng)出現(xiàn)死機(jī)時(shí),復(fù)位電路可以使系統(tǒng)初始化。一個(gè)良好的復(fù)位電路可以提高系統(tǒng)的穩(wěn)定性和可靠性,單片機(jī)上電后就會(huì)自動(dòng)復(fù)位,復(fù)位系統(tǒng)的設(shè)置和初始化所有參數(shù)[18]。單片機(jī)復(fù)位分為按鍵復(fù)位和上電復(fù)位,當(dāng)出現(xiàn)死機(jī)和運(yùn)行錯(cuò)誤時(shí),一般采用按鍵方式對(duì)系統(tǒng)進(jìn)行復(fù)位操作,使單片機(jī)內(nèi)部清零和置位。C51單片機(jī)的復(fù)位電平為高電平,按鍵復(fù)位需要手動(dòng)在復(fù)位輸入端RST上輸入高電平。文章采用的辦法是在RST端和電源Vcc之間接一個(gè)按鍵,然后串聯(lián)一個(gè)200歐姆和1000歐姆的電阻,再接到電源地。當(dāng)人為按下按鈕時(shí),則200歐姆的電阻與1000歐姆電阻分壓,高電平接入到單片機(jī)的RST引腳[19]。上電復(fù)位是通過電容(22μF)充電實(shí)現(xiàn)復(fù)位的。當(dāng)系統(tǒng)上電時(shí),電容處于充電狀態(tài),電壓幾乎為0V,那么RST引腳為+5V,為高電平,系統(tǒng)就會(huì)復(fù)位,當(dāng)電容充滿電后,RST就會(huì)為低電平,系統(tǒng)停止復(fù)位。復(fù)位電路如圖12所示。 圖12 復(fù)位電路 (5)下載電路部分:設(shè)計(jì)好系統(tǒng)電路后,需要在編程軟件中編寫好各個(gè)模塊的程序,然后經(jīng)過編譯、鏈接產(chǎn)生可執(zhí)行文件,然后在將可執(zhí)行文件燒錄到單片機(jī)中。如何燒錄程序呢,那就需要通過下載電路將可執(zhí)行文件寫入單片機(jī)。文章設(shè)計(jì)的下載電路是ISP下載電路,單片機(jī)的P15引腳(MOSI),P16引腳(MISO),P17引腳(SCK),RST引腳與ISP下載線插座相連,再接上電源。在軟件下載工具progisp的幫助下,就可以將生成的可執(zhí)行文件燒錄到AT89S52單片機(jī)中。下載電路如圖13所示。 圖13 下載電路 3.2.2 獨(dú)立鍵盤模塊電路 模擬路燈控制系統(tǒng)要求能切換菜單、設(shè)置路燈亮滅的時(shí)間和獨(dú)立的控制每個(gè)路燈,那么就需要鍵盤來實(shí)現(xiàn)以上功能。獨(dú)立鍵盤是模擬路燈控制系統(tǒng)的輸入設(shè)備,能對(duì)系統(tǒng)的功能進(jìn)行操作和設(shè)置,總共需要8個(gè)獨(dú)立式鍵盤完成所有的操作。獨(dú)立式鍵盤相互獨(dú)立,每個(gè)按鍵之間互不影響,按鍵一端統(tǒng)一接地,另一端連接到單片機(jī)的P1口,當(dāng)有按鍵按下,對(duì)應(yīng)的引腳會(huì)被拉低[20]。在通過10ms時(shí)間的消抖,按鍵還沒有松開,就認(rèn)為那個(gè)按鍵確實(shí)被按下,然后根據(jù)按下鍵的功能做出相應(yīng)的執(zhí)行動(dòng)作。 菜單鍵(P10)用來選擇菜單模式,以便知道是選擇了那個(gè)模式;確定鍵(P11)的作用是當(dāng)選擇好菜單模式后,按下確定鍵進(jìn)入相應(yīng)的模式;退出鍵(P12)的作用是退出相應(yīng)的菜單模式;選擇設(shè)定LED1開關(guān)燈時(shí)間鍵(P13)的作用是當(dāng)按下此鍵就進(jìn)入選擇設(shè)定LED1開關(guān)燈時(shí)間模式;選擇設(shè)定LED2開關(guān)燈時(shí)間鍵(P14)的作用是當(dāng)按下此鍵就進(jìn)入選擇設(shè)定LED2開關(guān)燈時(shí)間模式;選擇調(diào)整時(shí)間鍵(P15)的作用是選擇調(diào)整LED開關(guān)燈時(shí)間的小時(shí)或者分鐘;加鍵或者LED1燈的開關(guān)鍵(P16)的作用是調(diào)整時(shí)間加和開關(guān)LED1;減鍵或者LED2燈的開關(guān)鍵(P16)的作用是調(diào)整時(shí)間鍵和開關(guān)LED2;系統(tǒng)的獨(dú)立鍵盤電路如圖8所示。 圖14 獨(dú)立式鍵盤電路 3.2.3 LCD1602液晶顯示電路 模擬路燈控制系統(tǒng)需要顯示實(shí)時(shí)時(shí)間和故障編號(hào),就需要顯示電路。數(shù)碼管顯示電路控制復(fù)雜,不能顯示清楚的字符,所以就選用了LCD1602液晶屏來顯示時(shí)間,LCD1602液晶顯示屏比較容易控制,文章設(shè)計(jì)的顯示電路時(shí)采用并行數(shù)據(jù)傳輸控制,單片機(jī)P2口與LCD1602液晶顯示屏的數(shù)據(jù)口相連,LCD1602的控制引腳RS、RW、EN引腳分別與單片機(jī)的P05、P06、P07引腳相連,單片機(jī)只要控制好LCD1602液晶顯示屏的時(shí)序,就能正確顯示所要的內(nèi)容。液晶電路如圖15所示。 圖15 LCD1602液晶顯示電路 3.2.4 DS1302時(shí)鐘電路 模擬路燈控制系統(tǒng)要求能顯示實(shí)時(shí)時(shí)間,可以利用單片機(jī)內(nèi)部的定時(shí)計(jì)數(shù)器產(chǎn)生1秒時(shí)基,用定時(shí)器計(jì)時(shí)很浪費(fèi)CPU的資源,所以采用DS1302時(shí)鐘芯片來計(jì)時(shí),DS1302能精準(zhǔn)的對(duì)時(shí)間計(jì)時(shí),當(dāng)主電源被切斷后,3.6V的備用電池會(huì)給DS1302供電,保證數(shù)據(jù)不會(huì)丟失。文章設(shè)計(jì)的DS1302時(shí)鐘電路,需要DS1302芯片在其X1、X2管腳上接入一個(gè)32.768KHz的石英晶振來作為芯片的時(shí)鐘振蕩信號(hào),芯片的I/O數(shù)據(jù)口與單片機(jī)的P3.4引腳相連接,SCLK時(shí)鐘信號(hào)引腳連接著單片機(jī)P3.3,RST復(fù)位引腳連接著單片機(jī)P3.5引腳,在接上電源,單片機(jī)正確對(duì)DS1302的時(shí)序描述,就能讀取DS1302的實(shí)時(shí)時(shí)間。DS1302時(shí)鐘電路如圖15所示。 圖15 DS1302時(shí)鐘電路 3.2.5 交通環(huán)境檢測(cè)電路 模擬路燈控制系統(tǒng)需要根據(jù)交通環(huán)境自動(dòng)的亮滅路燈,所以設(shè)計(jì)相應(yīng)的電路。電路用到的是單光束反射取樣式紅外光電傳感器ST178檢測(cè)交通環(huán)境情況,ST178接一個(gè)510Ω電阻是為了限流,防止ST178燒壞,接一個(gè)20K的下拉電阻,但是ST178的輸出為模擬電壓,單片機(jī)接收的是數(shù)字信號(hào),所以在ST178的輸出接上一個(gè)電壓比較器LM324,它能將模擬信號(hào)轉(zhuǎn)化成數(shù)字信號(hào),輸出的電平只能是+5V或者0V,然后被單片機(jī)讀取,單片機(jī)根據(jù)電平執(zhí)行相應(yīng)的操作。交通環(huán)境檢測(cè)電路如圖16所示 3.2.6 環(huán)境明暗檢測(cè)電路 模擬路燈控制系統(tǒng)要求能過根據(jù)環(huán)境的明暗情況自動(dòng)亮滅路燈,所以要設(shè)計(jì)檢測(cè)環(huán)境明暗的電路。系統(tǒng)是使用光敏電阻(GL3547)和電壓比較器組成的電路檢測(cè)環(huán)境,光敏電阻與200K電阻串聯(lián)分壓到LM324的反相輸入端,4.7K的電阻與470Ω的電阻串聯(lián)分壓接到LM324的正向輸入端,電壓恒定為0.45V。當(dāng)有光照強(qiáng)度時(shí),光敏電阻的阻值為5M,反相端的電壓為0.2V,沒有光照時(shí),電阻約為50K,反相端的電壓為4V。所以當(dāng)有光強(qiáng)時(shí),反相輸入端大于正向輸入端,LM324輸出為低電平,當(dāng)沒有光強(qiáng)時(shí),反相輸入端小于正向輸入端,LM324輸出為高電平,單片機(jī)可以根據(jù)電平執(zhí)行相應(yīng)的操作。環(huán)境明暗檢測(cè)電路如圖17所示。 圖16 交通環(huán)境檢測(cè)電路 圖17 環(huán)境明暗檢測(cè)電路 3.2.7 故障檢測(cè)檢測(cè)電路 模擬路燈控制系統(tǒng)要求當(dāng)路燈出現(xiàn)故障時(shí),路燈應(yīng)該亮?xí)r,卻是熄滅狀態(tài),單片機(jī)能發(fā)出聲光報(bào)警信號(hào),同時(shí)顯示出現(xiàn)故障路燈的地址編號(hào)。故障檢測(cè)電路的原理與環(huán)境明暗檢測(cè)電路一致,路燈正常情況的狀態(tài)是點(diǎn)亮的,出現(xiàn)異常就會(huì)發(fā)出通知單片機(jī),發(fā)出報(bào)警信號(hào)。故障檢測(cè)檢測(cè)電路如圖18所示。 圖18 故障檢測(cè)檢測(cè)電路 3.2.8 聲光報(bào)警電路 當(dāng)路燈出現(xiàn)故障時(shí),路燈正常情況應(yīng)該為亮燈狀態(tài),卻變成熄滅狀態(tài),此時(shí)應(yīng)該發(fā)出聲光報(bào)警。聲光報(bào)警電路是由有源蜂鳴器(HYT-1205)、三極管(S9012)、1K電阻、發(fā)光二極管(BT101)等組成。電路中的三極管相當(dāng)一個(gè)開關(guān),當(dāng)P07為高電平時(shí),三極管為截止?fàn)顟B(tài),LS1為低電平,蜂鳴器不響,當(dāng)P07為低電平時(shí),三極管為導(dǎo)通狀態(tài),LS1為高電平,蜂鳴器響,發(fā)光二極管LED4的原理與蜂鳴器相同。1K電阻的作用是限流,防止器件損壞。聲光報(bào)警電路如圖19所示。 3.2.9 路燈電路 路燈電路是用兩個(gè)LED發(fā)光二極管來模擬,470歐姆的電阻的作用是限流,防止路燈燒壞。路燈電路如圖20所示。 圖19 聲光報(bào)警電路 圖20 路燈電路 4 軟件系統(tǒng)的設(shè)計(jì) 4.1 軟件設(shè)計(jì)的描述 根據(jù)設(shè)計(jì)的要求,模擬路燈控制系統(tǒng)的軟件設(shè)計(jì)包括系統(tǒng)監(jiān)控程序模塊、液晶顯示程序模塊、獨(dú)立鍵盤程序模塊、DS1302時(shí)鐘程序模塊,環(huán)境檢測(cè)程序模塊、聲光報(bào)警程序模塊、交通檢測(cè)程序模塊,設(shè)定路燈開關(guān)時(shí)間程序模塊等。 4.2 系統(tǒng)軟件的程序設(shè)計(jì) 模擬路燈控制系統(tǒng)的程序設(shè)計(jì)是分模塊設(shè)計(jì)的,根據(jù)設(shè)計(jì)的電路圖,設(shè)計(jì)相應(yīng)的程序模塊,在調(diào)試程序的時(shí)候,能容易的查找到對(duì)應(yīng)的程序,對(duì)程序修改。接下來將分模塊對(duì)系統(tǒng)的程序進(jìn)行介紹。 4.2.1 系統(tǒng)監(jiān)控模塊程序設(shè)計(jì) 模擬路燈控制系統(tǒng)的系統(tǒng)監(jiān)控程序又叫主函數(shù)程序,在主程序中,需要對(duì)LCD1602初始化,DS1302初始化,然后顯示提示字符,接下來進(jìn)入死循環(huán),在循環(huán)體內(nèi),等待按鍵掃描,當(dāng)按下某個(gè)功能鍵,就會(huì)去執(zhí)行相應(yīng)的功能鍵子程序。流程圖如圖22所示。 4.2.2 獨(dú)立鍵盤模塊程序設(shè)計(jì) 模擬路燈控制系統(tǒng)采用獨(dú)立式鍵盤,采用查詢法進(jìn)行按鍵掃描。系統(tǒng)的鍵盤掃描程序流程圖如圖21所示。 圖21 鍵盤掃描程序流程圖 圖22 系統(tǒng)監(jiān)控程序流程圖 4.2.3 液晶顯示模塊程序設(shè)計(jì) 系統(tǒng)需要顯示實(shí)時(shí)時(shí)間和報(bào)警信息,系統(tǒng)用LCD1602液晶顯示器顯示,LCD1602可以分為并行數(shù)據(jù)傳輸和串行數(shù)據(jù)傳輸顯示,系統(tǒng)采用的是并行接口傳輸數(shù)據(jù)。接下來介紹液晶顯示的軟件核心設(shè)計(jì)步驟,首先,LCD顯示屏初始化,包括設(shè)置功能設(shè)置;顯示與不顯示設(shè)置;輸入模式設(shè)置等[21]。接著清屏,清除屏上的內(nèi)容,寫入顯示字符的地址命令,寫入顯示的數(shù)據(jù),最后在顯示器上顯示數(shù)據(jù)。液晶顯示模塊程序設(shè)計(jì)的流程圖如圖23所示。 圖23 液晶顯示程序流程圖 4.2.4 DS1302時(shí)鐘模塊程序設(shè)計(jì) 模擬路燈控制系統(tǒng)要求顯示實(shí)時(shí)時(shí)間,采用DS1302來對(duì)時(shí)間計(jì)時(shí),現(xiàn)在介紹DS1302的程序編寫思路。首先開啟DS1302的寫保護(hù),允許單片機(jī)向DS1302寫入數(shù)據(jù),然后寫入初始時(shí)間,在關(guān)閉寫保護(hù),禁止寫數(shù)據(jù),當(dāng)單片機(jī)需要顯示時(shí)間的時(shí)候,向DS1302讀取時(shí)間,最后在LCD1602上顯示時(shí)間。DS1302時(shí)鐘程序設(shè)計(jì)的流程圖如圖24所示。 圖24 DS1302時(shí)鐘程序流程圖 4.2.5 設(shè)定路燈開關(guān)時(shí)間模塊設(shè)計(jì) 模擬路燈控制系統(tǒng)要求能調(diào)整路燈亮滅的時(shí)間,需要一個(gè)調(diào)整時(shí)間的程序,文章是用按鍵來實(shí)現(xiàn)的,當(dāng)選中設(shè)定時(shí)間菜單,按下確定鍵后,當(dāng)按選擇設(shè)定LED1或LED2開關(guān)燈時(shí)間鍵,將進(jìn)入相應(yīng)的調(diào)整模式,通過選擇調(diào)整時(shí)間鍵,調(diào)整想要的時(shí)間,最后按下確定鍵,時(shí)間就設(shè)定成功了,當(dāng)時(shí)間到了之后,路燈會(huì)自動(dòng)的亮滅。時(shí)間設(shè)定程序模塊設(shè)計(jì)的流程圖下如圖25所示 圖25 時(shí)間設(shè)定程序模塊設(shè)計(jì)的流程圖 4.2.6 環(huán)境檢測(cè)模塊程序設(shè)計(jì) 模擬路燈控制系統(tǒng)要求根據(jù)環(huán)境明暗自動(dòng)亮滅路燈,所以要設(shè)計(jì)相應(yīng)的程序。當(dāng)天黑時(shí),光敏電阻電阻很大,使LM324得輸出為低電平,P0.0為低電平,此時(shí)要驅(qū)動(dòng)路燈亮,當(dāng)白天時(shí),光敏電阻電阻很小,使LM324得輸出為高電平,P0.0為高電平,路燈熄滅。環(huán)境檢測(cè)模塊程序設(shè)計(jì)的流程圖如圖26所示。 圖26 環(huán)境檢測(cè)模塊程序設(shè)計(jì)的流程圖 4.2.7 交通檢測(cè)模塊程序設(shè)計(jì) 模擬路燈控制系統(tǒng)要求能根據(jù)交通情況自動(dòng)的亮滅燈,系統(tǒng)設(shè)計(jì)了交通檢測(cè)模塊程序,當(dāng)車輛到達(dá)第一個(gè)位置S處(第一個(gè)ST178能感應(yīng)的位置),第一個(gè)路燈亮(P36=0),然后等待車輛到達(dá)B處,當(dāng)車輛到達(dá)第二個(gè)位置B處(第二個(gè)ST178能感應(yīng)的位置),第二個(gè)路燈亮(P37=0),第一個(gè)燈滅(P37=1),等待車輛到達(dá)S’處,當(dāng)車輛到達(dá)第三個(gè)位置S’處(第三個(gè)ST178能感應(yīng)的位置),兩個(gè)路燈都熄滅(P36=1,P37=1),當(dāng)車輛反相通過時(shí),原理是相同的。交通檢測(cè)模塊程序設(shè)計(jì)流程圖如圖27所示。 4.2.8 聲光報(bào)警模塊程序設(shè)計(jì) 當(dāng)模擬路燈控制系統(tǒng)出現(xiàn)故障時(shí),路燈應(yīng)該亮?xí)r,卻是熄滅狀態(tài),系統(tǒng)會(huì)發(fā)出聲光報(bào)警。當(dāng)單片機(jī)通過兩個(gè)光敏電阻檢測(cè)到路燈出現(xiàn)故障時(shí)會(huì)給P0.7低電平,驅(qū)動(dòng)蜂鳴器響,使LED燈亮。聲光報(bào)警模塊程序設(shè)計(jì)的流程圖如圖28所示。 圖27 交通檢測(cè)模塊程序設(shè)計(jì)流程圖 圖28 聲光報(bào)警模塊程序設(shè)計(jì)的流程圖 5 系統(tǒng)調(diào)試運(yùn)行及結(jié)果分析 5.1 系統(tǒng)使用說明 文章設(shè)計(jì)的模擬路燈控制系統(tǒng)是通過Proteus仿真得到的結(jié)果,首先把各個(gè)硬件模塊按照設(shè)計(jì)的思路連接在一起,組成一個(gè)完整的系統(tǒng),通過Proteus仿真軟件把在Keil uVision4中編譯好的程序下載到設(shè)計(jì)的系統(tǒng)中。在Proteus中按下開始按鈕,首先顯示的是“Entering System Please Waiting”等字樣,準(zhǔn)備就緒后進(jìn)入模擬路燈控制系統(tǒng),系統(tǒng)會(huì)提示“Select Menu”,當(dāng)?shù)谝淮伟聪耂4按鍵(菜單鍵)時(shí),顯示“Realtime”,當(dāng)?shù)诙伟聪耂4按鍵時(shí),顯示“Environment”,當(dāng)?shù)谌伟聪耂4按鍵時(shí),顯示“Traffic”,當(dāng)?shù)谒拇伟聪耂4按鍵時(shí),顯示“Set time”,通過按S5鍵(確定鍵)進(jìn)入相應(yīng)的菜單模式,當(dāng)需要調(diào)整路燈亮滅時(shí)間時(shí),按下S7鍵選擇調(diào)整LED1,通過S9鍵選擇時(shí)間調(diào)整的位置,設(shè)置完后,按下S5鍵,設(shè)置成功。LED2的設(shè)置操作相同,在菜單選擇中,按下S10,S11可以分別亮滅LED1,LED2。系統(tǒng)中的ST178紅外光電傳感器是由按鍵來模擬的,當(dāng)有車輛經(jīng)過時(shí),ST178的輸出為低電平,按鍵可以模擬這種效果,光敏電阻指示燈的值為0代表沒有光強(qiáng),1000代表光照強(qiáng)度最大。 5.2 系統(tǒng)運(yùn)行結(jié)果 5.2.1 進(jìn)入系統(tǒng)提示 在Proteus中點(diǎn)擊開始運(yùn)行,系統(tǒng)首先會(huì)在LCD1602上顯示進(jìn)入系統(tǒng)的提示“Entering System Please Waiting”。仿真的結(jié)果如圖29所示。 圖29 進(jìn)入系統(tǒng)提示 5.2.2 選擇菜單顯示結(jié)果 正常進(jìn)入系統(tǒng)后,液晶會(huì)顯示“Select Menu”仿真的結(jié)果如圖30所示。 圖30 選擇菜單顯示 5.2.3 實(shí)時(shí)時(shí)間顯示結(jié)果 當(dāng)選擇了“Realtime”模式時(shí),按下S5鍵(確定鍵)就會(huì)顯示實(shí)時(shí)時(shí)間?!癛ealtime”模式顯示如圖31所示,實(shí)時(shí)時(shí)間顯示如圖32所示。 圖31 Realtime模式顯示 圖32 實(shí)時(shí)時(shí)間顯示 5.2.4 環(huán)境明暗變化仿真結(jié)果 當(dāng)選擇了“Environment”模式時(shí),按下S5鍵(確定鍵)就會(huì)進(jìn)入環(huán)境模式。當(dāng)光敏電阻LDR3檢測(cè)到天黑時(shí),P0.0會(huì)為低電平,路燈就會(huì)點(diǎn)亮,LCD0602會(huì)顯示“LED1 OK”“ LED2 OK”,“Environment”模式顯示如圖33所示,光敏電阻電路圖如圖34所示,路燈顯示情況如圖35所示,路燈正常LCD的顯示如圖36所示。 圖33 Environment模式顯示 圖34 光敏電阻電路圖 圖35 路燈顯示情況 圖36 路燈正常LCD的顯示 5.2.5 聲光報(bào)警仿真結(jié)果 在上一節(jié)的后面,當(dāng)故障檢測(cè)電路中的兩個(gè)光敏電阻沒有光照照射時(shí),P0.1和P0.2變成低電平,系統(tǒng)會(huì)驅(qū)動(dòng)聲光報(bào)警電路發(fā)出聲光報(bào)警,光敏電阻沒有光照時(shí)的電路狀態(tài)與路燈狀態(tài)如圖37所示,聲光報(bào)警電路的狀態(tài)如圖38所示,LCD1602顯示報(bào)警的狀態(tài)如圖39所示。 圖37 光敏電阻沒有光照時(shí)的電路狀態(tài)與路燈狀態(tài) 圖38 聲光報(bào)警電路的狀態(tài) 圖39 LCD1602顯示報(bào)警的狀態(tài) 5.2.6 交通環(huán)境仿真結(jié)果 當(dāng)有物體經(jīng)過ST178(開關(guān)閉合),對(duì)應(yīng)的路燈會(huì)點(diǎn)亮,下面演示從左至右,Traffic模式顯示如圖40所示,到達(dá)S點(diǎn)的路燈狀態(tài)如圖41所示,到達(dá)B點(diǎn)的路燈狀態(tài)如圖42所示,到達(dá)S’點(diǎn)的路燈狀態(tài)如圖43所示。 圖40 Traffic模式顯示 圖41 到達(dá)S點(diǎn)的路燈狀態(tài) 圖42 到達(dá)B點(diǎn)的路燈狀態(tài) 如圖43 到達(dá)S’點(diǎn)的路燈狀態(tài) 5.2.7 設(shè)定路燈開關(guān)時(shí)間仿真結(jié)果 系統(tǒng)上電的時(shí)間是2016年5月12日02時(shí)00分,仿真設(shè)置LED1亮燈時(shí)間為02時(shí)02分,滅燈時(shí)間為02時(shí)03分,設(shè)置LED2亮燈時(shí)間為02時(shí)03分,滅燈時(shí)間為02時(shí)04分。LED1時(shí)間設(shè)定如圖44所示,LED2時(shí)間設(shè)定如圖45所示,02時(shí)02分路燈的狀態(tài)如圖46所示,02時(shí)03分路燈的狀態(tài)如圖47所示,02時(shí)04分路燈的狀態(tài)如圖48所示。 圖44 LED1時(shí)間設(shè)定 圖45 LED2時(shí)間設(shè)定 圖46 02時(shí)02分路燈的狀態(tài) 圖47 02時(shí)03分路燈的狀態(tài) 圖48 02時(shí)04分路燈的狀態(tài) 5.2.8 獨(dú)立控制路燈仿真結(jié)果 當(dāng)系統(tǒng)提示選擇菜單時(shí),可以通過操作S10控制LED1的亮滅,可以通過操作S11控制LED2的亮滅,按鍵奇數(shù)次,路燈亮,按鍵偶數(shù)次,路燈滅。按下S10奇數(shù)次路燈的狀態(tài)如圖49所示,按下S10偶數(shù)數(shù)次路燈的狀態(tài)如圖50所示, 按下S11奇數(shù)次路燈的狀態(tài)如圖51所示,按下S11偶數(shù)數(shù)次路燈的狀態(tài)如圖52所示。 圖49 按下S10奇數(shù)次路燈的狀態(tài) 圖50 按下S10偶數(shù)次路燈的狀態(tài) 圖51 按下S11奇數(shù)次路燈的狀態(tài) 圖52 按下S12偶數(shù)次路燈的狀態(tài) 5.3 結(jié)果分析與結(jié)論 通過上一節(jié)的仿真結(jié)果顯示,模擬路燈控制系統(tǒng)上電后,能顯示正在進(jìn)入系統(tǒng)界面,能準(zhǔn)確的顯示實(shí)時(shí)時(shí)間,而且能通過S4鍵精確的調(diào)整菜單。按S4鍵第一次能選擇實(shí)時(shí)時(shí)間顯示,按S4鍵第二次能選擇環(huán)境模式,按S4鍵第三次能選擇交通顯示,按S4鍵第四次能選擇設(shè)定時(shí)間顯示,當(dāng)按下S5按鍵時(shí),可以進(jìn)入相應(yīng)的模式,系統(tǒng)能根據(jù)周圍環(huán)境明暗自動(dòng)點(diǎn)亮和熄滅路燈,當(dāng)路燈出現(xiàn)故障,路燈熄滅,能發(fā)出聲光報(bào)警,能根據(jù)交通環(huán)境自動(dòng)點(diǎn)亮和熄滅路燈,能設(shè)定路燈點(diǎn)亮和熄滅的時(shí)間,能獨(dú)立控制兩個(gè)路燈的點(diǎn)亮和熄滅時(shí)間。從以上仿真結(jié)果可以得出結(jié)論,設(shè)計(jì)的系統(tǒng)符合設(shè)計(jì)要求。 5.4 設(shè)計(jì)體會(huì) 從開始設(shè)計(jì)模擬路燈控制系統(tǒng)的時(shí)候,從網(wǎng)上搜集了很多資料,比如LCD1602、DS1302、ST178、光敏電阻、LM324電壓比較器等器件的工作原理,通過學(xué)習(xí)以上的內(nèi)容,根據(jù)器件的原理,用C語(yǔ)言把上述器件的軟件設(shè)計(jì)出來,最后完成了課程要求的任務(wù)。通過完成整個(gè)系統(tǒng)的設(shè)計(jì),有很多的心得體會(huì)。面對(duì)一個(gè)陌生的課題,首先要了解課題的設(shè)計(jì)要求,通過研究設(shè)計(jì)要求,確定好系統(tǒng)的各個(gè)模塊,考慮系統(tǒng)設(shè)計(jì)的可行性,最后確定設(shè)計(jì)總體方案。 在完成設(shè)計(jì)系統(tǒng)的過程中,出現(xiàn)了一些不應(yīng)該出現(xiàn)的錯(cuò)誤,都是因?yàn)闆]有注意細(xì)節(jié),一個(gè)微小的細(xì)節(jié)導(dǎo)致系統(tǒng)調(diào)試結(jié)果錯(cuò)誤,查找很久都不能找到答案,所以得出一個(gè)結(jié)論,設(shè)計(jì)系統(tǒng)要注重細(xì)節(jié),比如在編寫DS1302和LCD1602程序時(shí),要嚴(yán)格的按照芯片的時(shí)序編寫程序,只要把時(shí)序描述清楚才能使芯片正常工作,稍有一個(gè)細(xì)節(jié)被忽略,就會(huì)失敗。系統(tǒng)程序復(fù)雜,在為系統(tǒng)編寫程序的過程中,發(fā)現(xiàn)把程序模塊化,使編程更加容易,可以便于查找系統(tǒng)的錯(cuò)誤,修改程序。 結(jié)束語(yǔ) 文章設(shè)計(jì)的系統(tǒng)能根據(jù)環(huán)境明暗自動(dòng)亮滅路燈,當(dāng)路燈出現(xiàn)故障,能發(fā)出聲光報(bào)警,能根據(jù)交通環(huán)境自動(dòng)亮滅路燈,能設(shè)定路燈亮滅的時(shí)間。設(shè)計(jì)的系統(tǒng)符合設(shè)計(jì)要求。 完成系統(tǒng)的設(shè)計(jì),有很多的感受。從選擇課題開始,不斷的通過互聯(lián)網(wǎng)和圖書館查找相關(guān)資料,了解了課題的背景意義。通過老師的指導(dǎo),首先完成開題報(bào)告,通過自己所學(xué)知識(shí)和查詢相關(guān)資料文獻(xiàn),確定了模擬路燈控制系統(tǒng)的設(shè)計(jì)方案。設(shè)計(jì)出硬件電路后,接著軟件程序的設(shè)計(jì),在Proteus中模擬仿真,不斷的進(jìn)行電路和軟件的調(diào)試,最終使系統(tǒng)達(dá)到了設(shè)計(jì)的要求,編寫了課題設(shè)計(jì)說明書。整個(gè)設(shè)計(jì)過程,更加深入的了解和研究單片機(jī)知識(shí),增強(qiáng)了硬件電路和軟件程序設(shè)計(jì)能力,同時(shí)加強(qiáng)了自學(xué)能力。 在設(shè)計(jì)期間- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
15 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 模擬 路燈 控制系統(tǒng) 設(shè)計(jì)
鏈接地址:http://www.szxfmmzy.com/p-5422439.html