如何基于設計Verilog FPGA 流水燈?
1 功能概述
本文引用地址:http://dyxdggzs.com/article/201807/384018.htm流水廣告燈主要應用于LED燈光控制。通過(guò)程序控制LED的亮和滅, 多個(gè)LED燈組成一個(gè)陣列,依次逐個(gè)點(diǎn)亮的時(shí)候像流水一樣,所以叫流水燈。由于其形成美觀(guān)大方的視覺(jué)效果,因此廣泛應用于店鋪招牌、廣告、大型建筑夜間裝飾、景觀(guān)裝飾等。
在FPGA電路設計中,盡管流水燈的設計屬于比較簡(jiǎn)單的入門(mén)級應用,但是其運用到的方法,是FPGA設計中最核心和最常用部分之一,是FPGA設計必須牢固掌握的基礎知識。從這一步開(kāi)始,形成良好的設計習慣,寫(xiě)出整潔簡(jiǎn)潔的代碼,對于FPGA設計師來(lái)說(shuō)至關(guān)重要。
在本案例中,使用常用的verilog語(yǔ)言完成該程序,設計并控制8個(gè)燈的花式或循環(huán)點(diǎn)亮。具體功能要求如下:
上電后,實(shí)現左移和右移交替的流水燈。
右移流水燈:八個(gè)燈最左邊第一個(gè)燈滅,其他燈亮;隔1s后,第二個(gè)燈滅,其他燈亮;隔1s后,第三個(gè)燈滅,其他燈亮;如此類(lèi)推,直到第八個(gè)燈滅1s后進(jìn)行左移流水燈操作。
左移流水燈:八個(gè)燈最右邊第一個(gè)燈滅,其他燈亮;隔1s后第二個(gè)燈滅,其他燈亮;再隔1s后,第三個(gè)燈滅,其他燈亮;如此類(lèi)推,直到第八個(gè)燈滅1s后進(jìn)行右移流水燈操作。
2 設計思路
按照項目的功能要求,我們用8比特的LED信號表示8個(gè)燈,led[0]~led[7]分別代表第1個(gè)至第8個(gè)燈,值為0時(shí)亮,0時(shí)亮。下面我們來(lái)看看硬件電路圖以及制定出項目所需的信號列表。

圖1 流水燈硬件電路
信號列表:




評論