亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的交通燈控制系統(tǒng)設(shè)計(jì)

        2013-12-31 00:00:00宋武宋艷麗
        電子世界 2013年20期

        【摘要】以可編程邏輯器件(FPGA)為載體,采用狀態(tài)機(jī)的設(shè)計(jì)思想對(duì)十字路口交通燈的狀態(tài)及其相互轉(zhuǎn)移關(guān)系的描述,運(yùn)用時(shí)序和組合邏輯等進(jìn)程描述硬件模塊間的邏輯關(guān)系,用Very-High-Speed Integrated Circuit HardwareDescription Language(簡稱VHDL)編程實(shí)現(xiàn)了十字路口交通的控制。經(jīng)波形仿真,并下載到EPIC3T144C8芯片進(jìn)行了硬件調(diào)試,達(dá)到了設(shè)定的功能仿真,整個(gè)程序設(shè)計(jì)思路清晰,硬件電路簡單,實(shí)現(xiàn)過程靈活。

        【關(guān)鍵詞】FPGA;狀態(tài)機(jī);交通燈;VHDL

        1.引言

        目前在教學(xué)中運(yùn)用軟件實(shí)現(xiàn)交通燈的控制可以用標(biāo)準(zhǔn)邏輯器件、可編程序控制器PLC、單片機(jī)等方案來實(shí)現(xiàn)。但是這些方法在進(jìn)行功能修改及調(diào)試時(shí),都涉及硬件電路的調(diào)整,在一定程度上增加了工作的難度,另外對(duì)初學(xué)者而言,設(shè)計(jì)程序也有一定困難,采用可編程邏輯器件FPGA,應(yīng)用狀態(tài)機(jī)來設(shè)計(jì)控制系統(tǒng)的控制功能,可根據(jù)實(shí)際情況對(duì)燈亮?xí)r間進(jìn)行自由調(diào)整,整個(gè)系統(tǒng)通過QuartusⅡ9.0軟件平臺(tái)進(jìn)行了仿真,同時(shí)下載到EP1C3T144C8中進(jìn)行調(diào)試,驗(yàn)證了交通信號(hào)燈控制電路預(yù)定的功能。采取狀態(tài)機(jī)進(jìn)行控制,學(xué)生容易接受。對(duì)初學(xué)者而言,有一定的指導(dǎo)意義。利用狀態(tài)機(jī)設(shè)計(jì)一般步驟:首先將行為狀態(tài)轉(zhuǎn)換成符號(hào)狀態(tài),接著將符號(hào)狀態(tài)轉(zhuǎn)換成真值表,利用真值表列出狀態(tài)轉(zhuǎn)換的組合邏輯、時(shí)序邏輯關(guān)系,編寫程序、芯片選擇、引腳鎖定和下載調(diào)試。

        2.交通燈行為分析

        任何模型和控制對(duì)象建立,均要找出運(yùn)行規(guī)律,將行為語言轉(zhuǎn)換為數(shù)字符號(hào),以便于控制。下面以十字路口雙向六車道為例介紹交通燈的控制情況,東西方向交通流直行即東西方向交通流左轉(zhuǎn),南北方向交通流直行,南北方向交通流左轉(zhuǎn),所有右轉(zhuǎn)方向交通流不予控制。交通燈控制示意圖如圖1所示。

        圖1 雙向六車道的示意圖

        根據(jù)交通運(yùn)行規(guī)則,在十字路口雙向六車道中有下列6種循環(huán)的工作狀態(tài),順序?yàn)?,順序?yàn)椋篠0→S1→S2→S3→S4→S5。在各方向的交通燈運(yùn)行狀態(tài)有綠燈亮、黃燈亮、左轉(zhuǎn)彎亮、紅燈亮,詳細(xì)情況如表1所示。

        表1 交通燈的狀態(tài)轉(zhuǎn)換規(guī)律表

        工作狀態(tài)東西方向符號(hào)時(shí)間(秒)南北方向符號(hào)時(shí)間(秒)

        S0綠燈亮GA40紅燈亮GB60

        S1黃燈亮YA5紅燈亮YB

        S2左轉(zhuǎn)彎亮LTA15紅燈亮LTB

        S3紅燈亮RA60綠燈亮RB40

        S4紅燈亮 黃燈亮 5

        S5紅燈亮 左轉(zhuǎn)彎亮 15

        為了便于利用狀態(tài)機(jī)進(jìn)行程序設(shè)計(jì),用1表示指示燈亮,0指示燈滅,根據(jù)狀態(tài)轉(zhuǎn)換規(guī)律轉(zhuǎn)化成真值表如2所示。

        3.程序設(shè)計(jì)

        本設(shè)計(jì)選用有限狀態(tài)機(jī)FSM(finite state machine)來進(jìn)行設(shè)計(jì),狀態(tài)機(jī),與可完成相同功能的CPU相比,有限狀態(tài)機(jī)有其獨(dú)特的、難以超越的優(yōu)越性,利用VHDL的有限狀態(tài)機(jī)設(shè)計(jì)不同實(shí)用邏輯控制系統(tǒng)時(shí),通常采用枚舉類型來定義狀態(tài)機(jī)的狀態(tài),這樣可以獲得可綜合的、高效的VHDL描述,并且使用多進(jìn)程方式來描述狀態(tài)機(jī)的內(nèi)部邏輯。在程序設(shè)計(jì)中一般由說明部分、組合部分、時(shí)序部分組成,用TYPE定義新的數(shù)據(jù)類型和狀態(tài)名,以及在此新數(shù)據(jù)下定義的狀態(tài)變量。本設(shè)計(jì)采用狀態(tài)機(jī)來進(jìn)行頂層文件的設(shè)計(jì),狀態(tài)機(jī)的說明語句如下:

        type state is(S0,S1,S2,S3,S4,S5);

        signal presentstate,nextstate:state;

        該程序結(jié)構(gòu)體分成以下四個(gè)部分:

        3.1 分頻器秒脈沖的產(chǎn)生程序

        由于選擇芯片的某引腳輸出信號(hào)為4HZ,則進(jìn)行四分頻就可以得到1HZ的信號(hào),clk定義為輸入信號(hào),sec為結(jié)構(gòu)體時(shí)序轉(zhuǎn)換的邏輯信號(hào),則程序如下:

        ——get 1 hz clock pulse

        process(clk)

        begin

        if clk'event and clk='1'then q<=q+1;end if;

        sec<=q(2);——get 1 hz clock pulse

        end process;

        3.2 交通燈時(shí)序控制程序

        根據(jù)交通燈的狀態(tài)轉(zhuǎn)換規(guī)律表中需要有40秒、5秒、15秒三個(gè)轉(zhuǎn)換時(shí)間,為了方便狀態(tài)轉(zhuǎn)換描述,定義了timeout1、timeout2、timeout3三個(gè)時(shí)間標(biāo)致信號(hào),為1時(shí)表示時(shí)間結(jié)束,而且三個(gè)時(shí)間有先后順序,Presentstate <=nextstate達(dá)到了狀態(tài)在時(shí)序條件下轉(zhuǎn)換。則得到了流程圖如圖2所示。

        圖2 交通燈時(shí)序控制流程圖

        如下的時(shí)序控制程序:

        timing:process(sec)

        begin

        if sec'event and sec='1'then

        if tmp1=39 then timeout1<='1';timeout2<='0';timeout3<='0';tmp1<=0;

        else if timeout1='1'then

        if tmp2=4 then timeout2<='1';timeout1<='0';timeout3<='0';tmp2<=0;

        else if timeout2='1'then

        if tmp3=14 then timeout3<='1';timeout1<='0';timeout2<='0';tmp3<=0;

        else tmp3<=tmp3+1;end if;

        tmp2<=tmp2+1;end if;

        tmp1<=tmp1+1;end if;

        end if;

        Presentstate<=nextstate;

        end if;

        end process;

        3.3 交通燈的狀態(tài)轉(zhuǎn)換組合程序

        下面以狀態(tài)為S0來進(jìn)行說明,timeout1 =‘0’表示40秒的時(shí)間未到,則仍然在此狀態(tài)循環(huán),否則轉(zhuǎn)到下一狀態(tài)S1,其組合邏輯控制程序如下:

        changestate:process(presentstate)

        Begin

        case presentstate is

        when S0 => if timeout1='0'then

        nextstate<=s0;

        ra<='0';ya<='0';ga<='1';lta<='0';

        rb<='1';yb<='0';gb<='0';ltb<='0';

        else nextstate<=s1;end if;

        ……

        end case;

        end process;

        4.仿真下載調(diào)試

        將編寫好的程序首先利用波形編輯器進(jìn)行功能仿真,在分析波形仿真正常的情況,將輸入、輸出引腳進(jìn)行鎖定。比如采用EPIC3T144C8,時(shí)鐘端連接17引腳,輸出端分別接100、99、98和83、82、79。編譯下載后可以觀察到交通燈的模擬狀態(tài)圖。

        參考文獻(xiàn)

        [1]彭汪昆等.FPGA的模糊控制交通燈控制方案設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2011(11):49-51.

        [2]王維松等.十字路口智能交通燈控制系統(tǒng)的FPGA實(shí)現(xiàn)[J].電子科技,2012(25):37-44.

        [3]馮競楠等.利用有限狀態(tài)機(jī)的交通燈控制系統(tǒng)設(shè)計(jì)與仿真[J].電子設(shè)計(jì)工程,2011(06):156-159.

        [4]楚巖等.基于FPGA的交通信號(hào)燈控制系統(tǒng)[J].現(xiàn)代電子技術(shù),2012(05):184-186.

        [5]袁海林等.基于FPGA的交通燈的設(shè)計(jì)與實(shí)現(xiàn)[J].電子質(zhì)量,2013(03):15-18.

        99国产综合精品-久久久久| 岛国AV一区二区三区在线观看| 国产性猛交╳xxx乱大交| 日本三级欧美三级人妇视频黑白配| 亚洲伊人成综合网| 少妇spa推油被扣高潮| 最新精品亚洲成a人在线观看| 2020亚洲国产| 久久精品国产亚洲av调教| 白色白色白色在线观看视频| 日韩精品视频免费在线观看网站| 国产精品国产三级国产专播下| 国产精品高清一区二区三区不卡 | 免费人成无码大片在线观看| 国内精品无码一区二区三区| 精品人妻伦九区久久AAA片69| 亚洲成在人网av天堂| 久久午夜无码鲁丝片直播午夜精品 | 中文字幕在线乱码亚洲| 先锋五月婷婷丁香草草| 久久99精品久久久久久秒播| 孩交精品xxxx视频视频| 色妞色综合久久夜夜| 91网站在线看| 在线看亚洲十八禁网站| 日本一区二区免费看片| 一区二区三区人妻av| wwww亚洲熟妇久久久久| 国产精品久久久久久52avav| 久久久国产精品麻豆| av资源在线看免费观看| 中文字幕日本在线乱码 | 高潮抽搐潮喷毛片在线播放| 久久综合国产乱子伦精品免费| 风流少妇又紧又爽又丰满| 精品国产一区二区三区亚洲人 | 久久精品国产精品| 无码人妻品一区二区三区精99 | 亚洲一区有码在线观看| 91久久偷偷做嫩模影院| 国产毛多水多高潮高清|