• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于AT89C51的交通信號燈控制系統(tǒng)

    2017-06-10 00:19:13崔兆春
    電子技術(shù)與軟件工程 2017年11期
    關(guān)鍵詞:譯碼器黃燈數(shù)碼管

    崔兆春

    摘 要隨著經(jīng)濟的發(fā)展我國汽車保有量不斷增加,道路交通問題日益凸顯。本文主要研究以AT89C51單片機作為控制系統(tǒng),實現(xiàn)對十字路口交通信號燈的控制。以東西向為例,綠燈亮80秒、黃燈亮3秒、紅燈亮60秒、綠燈亮80秒依次循環(huán)實現(xiàn)對于東西向車流的控制。采用AT89C51單片機控制交通信號燈具有簡單可靠等優(yōu)點。

    【關(guān)鍵詞】單片機 設(shè)計

    1 AT89C51單片機概述

    1.1 AT89C51單片機簡介

    AT89C51單片機是ATMEL公司出品的一款與MCS51兼容的一款單片機,屬于第三代單片機。AT89C51提供4K的Flash存儲器,128字節(jié)RAM,4個IO口,2個16位定時器,一個中斷系統(tǒng),一個串行通信口,片內(nèi)震蕩器和時鐘電路。AT89C51支持兩種軟件可選的節(jié)電工作模式。空閑模式停止CPU的工作但允許其他功能部件如RAM,中斷系統(tǒng)等繼續(xù)工作,掉電模式保持RAM中的內(nèi)容不丟失其他所有部件都將停止工作一直到下一個硬件復(fù)位。

    1.2 74HC138譯碼器簡介

    74HC138譯碼器是一個高速CMOS器件,具有三個輸入端A B C 及其3個特有的使能輸入端兩個低有效(E1和E2)一個高有效(E3)。只有E1,E2置低電平,E3置高電平時譯碼器才能正常譯碼。否則譯碼器輸出將全為高電平。74HC138譯碼器按照輸入端三位二進制輸入碼的條件從8個輸出端譯出一個低電平輸出。

    2 方案論證

    利用單片機設(shè)計一個十字路口交通燈控制系統(tǒng)。利用用單片機控制LED燈模擬指示。東西向通行時間為8秒,南北向通行時間為60秒,緩沖時間為3秒。以東西向為例,東西向綠燈亮80秒,黃燈亮3秒,紅燈亮60秒,綠燈再亮80秒依次循環(huán)。

    3 設(shè)計原理

    3.1 硬件原理分析

    本系統(tǒng)主要由單片機控制系統(tǒng)、譯碼模塊、數(shù)碼管顯示模塊、交通燈模塊等組成。

    單片機控制控制模塊:選用AT89C51單片機,外加震蕩電路為單片機提供脈沖信號。將51單片機的P3.0,P3.1,P3.2用作普通IO口使用,利用這三個口控制交通信號燈模塊。P3.0口輸出為高電平綠燈亮,P3.1口輸出為高電平黃燈亮,P3.2口輸出為高電平紅燈亮。利用P1.0,P1.1,P1.2控制譯碼模塊(3-8譯碼器)。利用P2口與譯碼模塊控制數(shù)碼管顯示,P2口輸出值即為譯碼器選中的當(dāng)前數(shù)碼管所顯示的值。

    譯碼模塊:由一個3-8譯碼器構(gòu)成。輸出端只利用Y0,Y1,Y2,Y3四個口。輸入端由單片機的P1.0,P1.1,P1.2控制。如:當(dāng)前P1.0輸出為高,P1.1輸出為高,P1.2輸出為低,則Y3輸出為低選中最右端數(shù)碼管顯示。P1口不斷輸出不同值,依次輪流選中四個數(shù)碼管進行顯示,在整個系統(tǒng)運行過程中都要不斷地進行選中即進行掃描。

    數(shù)碼管顯示模塊:由單片機P2口與譯碼器共同控制。由譯碼器選中當(dāng)前的數(shù)碼管,當(dāng)前數(shù)碼管顯示P2口傳過來的值。

    交通燈模塊:由紅黃綠三個LED燈組成。由單片機的P3.0,P3.1,P3.2控制。P3.0口輸出為高電平綠燈亮,P3.1口輸出為高電平黃燈亮,P3.2口輸出為高電平紅燈亮。

    3.2 軟件原理分析

    單片機的控制程序主要由條件標(biāo)志位g的判斷模塊、綠燈顯示模塊、黃燈顯示模塊、紅燈顯示模塊構(gòu)成。

    條件標(biāo)志位g判斷模塊:設(shè)條件標(biāo)志位g,若g=0執(zhí)行綠燈顯示程序,若g=1執(zhí)行黃燈顯示程序,若g=2執(zhí)行紅燈顯示程序。

    綠燈顯示模塊:首先進行一段時間的延時,然后對f進行判斷(f初始值為80)若f>0則直接輸出f值,采用不斷取余的方式顯示f的十位個位。若f<=0則將f重新賦值并修改條件標(biāo)志位g再輸出顯示一次f后返回轉(zhuǎn)入黃燈顯示程序執(zhí)行。

    黃燈顯示模塊:基本步驟與綠燈顯示模塊相同,只是顯示所賦f初始值(f初值為3)不同。

    紅燈顯示模塊:基本步驟與綠燈顯示模塊相同,只是顯示所賦f初始值(f初值為60)不同。

    3.3 相應(yīng)程序代碼

    //控制程序以綠燈為例

    if(g==0)

    {

    for(c=0;c<250;c++);//做一個0-250的循環(huán),不執(zhí)行其他操作,只為延時

    for(c=0;c<250;c++);

    if(++e>250) //做一個延時,時間到將顯示內(nèi)容加1

    {

    e=0; //清零,為下一次延時做準備

    if(f<=0)

    {

    f=81;//循環(huán)結(jié)束后初始化

    g=1;//標(biāo)志位置位

    }

    f--;

    }

    P2=0; //關(guān)一次顯示,以免顯示出鬼影

    if(++d>1) d=0; //先將d加1,然后判斷是否大于1,大于1歸零

    if(d==0) //如果d=0,顯示十位

    {

    P1=0x01;

    P2=LED[(f%100)/10]; //將要顯示的f的十位提取出來查表后送顯示

    }

    else //如果d=1,顯示個位

    {

    P1=0x00;

    P2=LED[f%10]; //將要顯示的f的個位提取出來查表后送顯示

    }

    if(f==0)

    {

    P0_0=0;

    P0_1=1;

    P0_2=0;

    //點亮綠燈

    }

    }

    4 結(jié)論

    所設(shè)計的系統(tǒng)能夠完成十字路口交通信號燈控制。利用AT89C51單片機完成交通信號燈的控制簡單易行,便于修改價格低廉。對于經(jīng)濟城市交通問題日益突出的今天來說具有一定的實用價值。所設(shè)計的交通信號燈控制系統(tǒng)還有很多不足如不能通過按鍵等方式完成對信號設(shè)定時常的控制等,但也實現(xiàn)了利用單片機對一個十字路口交通信號燈的控制。

    作者單位

    合肥工業(yè)大學(xué) 安徽省合肥市 230601

    猜你喜歡
    譯碼器黃燈數(shù)碼管
    Arduino編程
    電腦報(2019年2期)2019-09-10 07:22:44
    MC9S08FL16單片機數(shù)碼管靜態(tài)顯示分析
    單片機控制的四位數(shù)碼管動態(tài)顯示編程
    糾錯模式可配置的NAND Flash BCH譯碼器設(shè)計
    基于Qt的數(shù)碼管數(shù)字編碼系統(tǒng)的設(shè)計與實現(xiàn)
    跟蹤導(dǎo)練(一)5
    無知之幕與博弈:從“黃燈規(guī)則”看博弈論的一種實踐方案
    還有94分
    伴侶(2015年5期)2015-09-10 07:22:44
    考慮黃燈駕駛行為的城市交叉口微觀仿真
    HINOC2.0系統(tǒng)中高速LDPC譯碼器結(jié)構(gòu)設(shè)計
    碌曲县| 永仁县| 麻江县| 大安市| 新营市| 郴州市| 云林县| 宿迁市| 溆浦县| 封丘县| 兴宁市| 英吉沙县| 定兴县| 马边| 栖霞市| 浠水县| 宁南县| 宜春市| 会东县| 日照市| 古丈县| 柞水县| 水富县| 长宁县| 河曲县| 阿克| 麻栗坡县| 秦皇岛市| 灵丘县| 永寿县| 文山县| 华阴市| 开平市| 江城| 丰宁| 上杭县| 祁阳县| 无棣县| 黔东| 临武县| 兰西县|