應(yīng)用VHDL語(yǔ)言設(shè)計(jì)數(shù)字系統(tǒng),,大部分設(shè)計(jì)工作可在計(jì)算機(jī)上完成,,從而縮短系統(tǒng)開(kāi)發(fā)時(shí)間,提高工作效率,。下面介紹基于VHDL設(shè)計(jì)交通燈控制器的一種方案,,并給出源程序和仿真結(jié)果。
1 系統(tǒng)功能與要求
交通燈控制器控制兩個(gè)主干道交叉路口的交通,,路口車(chē)輛多,,直行信號(hào)、左轉(zhuǎn)彎信號(hào)分開(kāi)顯示,,a,,b兩個(gè)主干道的通行時(shí)間相等,其中指示直行的綠燈亮30 s,,指示左轉(zhuǎn)彎的綠燈亮12 s,,綠燈變至紅燈時(shí),黃燈亮3 s,以便于車(chē)輛能停在停車(chē)線內(nèi),,紅燈信號(hào)的最后3 s相應(yīng)的黃燈也同時(shí)亮,,以便提示駕駛?cè)藛T準(zhǔn)備起步。在兩個(gè)主干道路口都配備傳感器用來(lái)檢測(cè)有無(wú)車(chē)輛通行,。當(dāng)兩個(gè)主干道都有車(chē)輛時(shí),,自動(dòng)處于主干道a綠燈,主干道b紅燈的狀態(tài),,然后輪流切換通行,。當(dāng)主干道a無(wú)車(chē)輛時(shí),自動(dòng)處于主干道b綠燈,,主干道a紅燈的狀態(tài),;反之亦然,以提高通行效率,。
2 設(shè)計(jì)與仿真
根據(jù)交通燈控制器的功能與要求,,將其總體電路分為分頻器、信號(hào)控制器兩個(gè)模塊,。外部脈沖振蕩器的頻率選為32 768 kHz,,經(jīng)分頻器分頻得1 Hz的信號(hào),1 Hz信號(hào)用做信號(hào)控制器的計(jì)數(shù)脈沖,,用VHDL設(shè)計(jì)組成交通燈控制器的分頻器,、信號(hào)控制器兩個(gè)模塊,在QuartusⅡ開(kāi)發(fā)平臺(tái)上,,分別編譯兩個(gè)模塊的VHDL程序,,然后用原理圖輸入法形成圖1所示的總體框圖。
其中信號(hào)控制器的VHDL程序如下:
其中,,Sa,,Sb分別是a,b路口傳感器的信號(hào),,aR,,aY,aG,,aLR,,aLY,aLG分別代表控制主干道a的直行紅燈,、黃燈,、綠燈,左轉(zhuǎn)彎紅燈,、黃燈,、綠燈的信號(hào),;bR,bY,,bG,,bLR,bLY,,bLG分別代表控制主干道b的直行紅燈,、黃燈、綠燈,,左轉(zhuǎn)彎紅燈,、黃燈、綠燈的信號(hào),;aPR,,aPG,bPR,,bPG是人行道信號(hào),,enl是使能信號(hào)。enl=0時(shí)a,,b兩路口紅燈同時(shí)亮,便于處理特殊情況,。用QuartusⅡ?qū)Τ绦蚓幾g,、仿真,得到的仿真波形如圖2所示,,經(jīng)程序下載,、實(shí)驗(yàn)驗(yàn)證,系統(tǒng)功能符合要求,。
基于VHDL設(shè)計(jì)交通燈控制器,,外圍電路少、功耗低,、可靠性高,,便于系統(tǒng)功能的修改,設(shè)計(jì)效率高,。