加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

基于小腳丫FPGA開發(fā)板的交通燈設(shè)計(jì)

2016/08/30
28
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

1、設(shè)計(jì)要求

基于小腳丫FPGA開發(fā)板設(shè)計(jì)帶數(shù)碼管顯示倒計(jì)時(shí)的交通燈系統(tǒng),要求:

  • 1)一個(gè)道路綠燈持續(xù)時(shí)間25S,紅燈持續(xù)時(shí)間10S,黃燈持續(xù)時(shí)間3S;
  • 2)另一道路綠燈持續(xù)時(shí)間10S,紅燈持續(xù)時(shí)間25S,黃燈持續(xù)時(shí)間3S;
  • 3)第一位數(shù)碼管和第二位數(shù)碼管顯示倒計(jì)時(shí);

2、硬件連接

FPGA的系統(tǒng)時(shí)鐘來自于小腳丫FPGA開發(fā)板配置的25MHz時(shí)鐘晶振,連接FPGA的C1引腳

本設(shè)計(jì)除了時(shí)鐘和復(fù)位鍵以外沒有其他的輸入,故只用到一個(gè)按鍵K6硬件設(shè)計(jì)如圖1所示,按鍵連接到FPGA的B1引腳。

圖1、復(fù)位鍵硬件設(shè)計(jì)

設(shè)計(jì)中需要兩個(gè)RGBled進(jìn)行交通燈顯示的呈現(xiàn),每一個(gè)RGB的LED都有三個(gè)引腳需要跟小腳丫連接在一起。兩個(gè)LED跟小腳丫FPGA開發(fā)板之間的連接關(guān)系如圖2所示,對(duì)應(yīng)的管腳如下。

圖2、RGB_LED硬件連接

設(shè)計(jì)中需要使用數(shù)碼管進(jìn)行倒計(jì)時(shí)的顯示,小腳丫通過74HC595來控驅(qū)動(dòng)和控制數(shù)碼管。74HC595跟小腳丫FPGA開發(fā)板之間的連接關(guān)系如圖3所示,對(duì)應(yīng)的管腳如下。

圖3、數(shù)碼管驅(qū)動(dòng)74HC595硬件連接

3、工作原理和狀態(tài)轉(zhuǎn)換

  • 2)使用一個(gè)6bit的BCD碼表示倒計(jì)時(shí)時(shí)間的值,其中高2bit表示值的十位,低4bit表示值的個(gè)位;
  • 3)用以下四個(gè)狀態(tài)分別表示交通燈不同的顯示;
  • S0: 大路綠燈亮,小路紅燈亮,持續(xù)25S;
  • S1: 大路黃燈(藍(lán)燈)亮,小路紅燈持續(xù)3S;
  • S2: 大路紅燈亮,小路綠燈亮,持續(xù)10S;
  • S3: 大路紅燈亮,效率黃燈(藍(lán)燈)亮,持續(xù)3S;
  • 得到狀態(tài)轉(zhuǎn)換圖如下:

圖4、交通燈狀態(tài)轉(zhuǎn)換圖

4、代碼設(shè)計(jì)

為了實(shí)現(xiàn)所需要的功能,我們將整個(gè)設(shè)計(jì)在頂層劃分為五個(gè)不同的模塊,如圖5所示。

圖5、交通燈程序框圖

4.1 clock_division模塊

Clock_division模塊主要實(shí)現(xiàn)數(shù)字時(shí)鐘的模式控制,程序代碼截圖如下:

4.2 Curren_state模塊

這部分代碼的作用是將次態(tài)賦值給當(dāng)前態(tài),這是三段式的標(biāo)志性模塊。該模塊程序代碼截圖如下:

4.3 Output&count模塊

這部分代碼可以說是整個(gè)代碼的核心部分,交通燈的顯示在這部分完成。此外,這一部分還負(fù)責(zé)進(jìn)行倒計(jì)時(shí),這部分的代碼將即使數(shù)字分為個(gè)位和十位進(jìn)行分別倒計(jì)時(shí)。此舉有利用后面對(duì)74HC595驅(qū)動(dòng)數(shù)碼管的代碼進(jìn)行調(diào)用。其序代碼截圖如下:

4.4 CubeDisplay模塊

這部分代碼用于74HC595的控制,以使得數(shù)碼管能夠按照計(jì)劃進(jìn)行倒計(jì)時(shí)顯示。這部分代碼截圖如下:

5、系統(tǒng)運(yùn)行

圖6、系統(tǒng)運(yùn)行

視頻地址:

優(yōu)酷視頻(基于小腳丫FPGA的倒計(jì)時(shí)交通燈):

https://v.youku.com/v_show/id_XMTU0NDI4NjQ1Mg==.html

6、資源報(bào)告

資源 數(shù)量 比例 說明
LUT4s 249 19%
寄存器 115 7%
存儲(chǔ)器 0 0%
IO管腳 11
時(shí)鐘頻率 25MHz

7、知識(shí)點(diǎn)

  • 時(shí)鐘計(jì)數(shù)分頻
  • 三段式程序段的編寫
  • 串行/并行轉(zhuǎn)換
  • 74HC595控制

9、相關(guān)文件

文件名稱 功能
Traffic_Light 交通燈狀態(tài)轉(zhuǎn)換和燈顯示,以及頂層模塊功能
DLED_4Bit 倒計(jì)時(shí)顯示模塊
  • STEP_BaseBoard.pdf
    描述:小腳丫FPGA資源擴(kuò)展板
  • Traffic_Light.zip
    描述:小腳丫FPGA交通燈設(shè)計(jì)邏輯代碼
  • 基于小腳丫FPGA的交通燈設(shè)計(jì).docx
    描述:基于小腳丫FPGA的交通燈設(shè)計(jì)資料

相關(guān)推薦

電子產(chǎn)業(yè)圖譜