基于FPGA的可編程電阻的設計
1.4 輸出顯示電路
輸出顯示電路主要功能是實(shí)時(shí)顯示對應的鍵盤(pán)輸入電阻值的大小、當前工作的步數和預置時(shí)間。根據要求,本實(shí)驗采用數碼管來(lái)顯示其阻值即可,能夠滿(mǎn)足要求,為了顯示以上數據,每個(gè)阻值的顯示至少需要九個(gè)數碼管,其中五位用來(lái)顯示當前阻值的大小,兩位用來(lái)顯示當前的工作步數,兩位用來(lái)顯示數據的工作時(shí)間,如果采用靜態(tài)顯示控制將會(huì )需要相當多的引腳端資源(9×2×8=144個(gè)),為了減少對FPGA引腳資源的使用,本設計中采用掃描的方式來(lái)實(shí)現LED的動(dòng)態(tài)顯示。
2 軟件設計及部分仿真結果
本設計中,主要控制程序都是通過(guò)FPGA的軟件編程來(lái)實(shí)現。軟件設計大體可以分為三個(gè)大模塊:鍵盤(pán)掃描模塊、LED顯示模塊、繼電器電阻驅動(dòng)電路模塊。
2.1 鍵盤(pán)掃描模塊
鍵盤(pán)掃描模塊主要用來(lái)檢測外界輸入的數據,主要由分頻器電路、鍵盤(pán)掃描計數器電路、鍵盤(pán)行和列按鍵檢測電路、按鍵抖動(dòng)消除電路和鍵盤(pán)編碼電路組成。
因為本設計中外接頻率為一般用6MHz的信號作為時(shí)鐘信號,但是鍵盤(pán)掃描不需要那么高的頻率,所以需要一個(gè)分頻電路將其頻率降低為1kHz。鍵盤(pán)掃描計數器主要為鍵盤(pán)行和列按鍵檢測電路和鍵盤(pán)編碼電路服務(wù),鍵盤(pán)行和列按鍵檢測電路用來(lái)檢測鍵盤(pán)輸入所在行列的位置,按鍵抖動(dòng)消除電路主要目的是為了避免按鍵時(shí)鍵盤(pán)產(chǎn)生的拉動(dòng)效應使按鍵使能位產(chǎn)生不必要的抖動(dòng)變化而造成重復統計按鍵次數的結果。同時(shí),鍵盤(pán)位置的代號,并不是鍵盤(pán)上的按鍵值,所以要用鍵盤(pán)編碼電路來(lái)傳遞真正的按鍵值。
2.2 LED顯示模塊
LED顯示模塊采用動(dòng)態(tài)顯示方式,這種實(shí)現方法是依次點(diǎn)亮各個(gè)LED數碼管,循環(huán)進(jìn)行顯示,這種顯示方式控制好數碼管之間的延時(shí)相當重要,根據人眼視覺(jué)暫留原理,LED數碼管每秒的導通16次以上,人眼就無(wú)法分辯LED數碼管短暫的不亮,認為是一直點(diǎn)亮的,但延時(shí)也不是越小越好,因為L(cháng)ED數碼管達到一定亮需要一定時(shí)間。為了達到較好的效果,本設計中延時(shí)取0.005s。
2.3 繼電器電阻驅動(dòng)電路模塊
繼電器電阻驅動(dòng)電路模塊主要是FPGA根據鍵盤(pán)輸入的電阻值,判斷相應的一些電阻是否要接入,從而使電阻對應的繼電器閉合或斷開(kāi),給予其對應的信號1或O即可。
2.4 仿真結果
由上述理論可知,電阻1的產(chǎn)生原理和電阻2的產(chǎn)生原理完全一樣,為了使仿真結果更加明了,這里的仿真波形只用電阻1來(lái)驗證其正確性,其仿真波形如圖3所示。

此圖是仿真圖中的一部分,只選擇了幾個(gè)有代表性的信號顯示出來(lái)加以說(shuō)明,從圖中可以看出有時(shí)鐘信號clk,復位信號reset,電阻1選擇信號 resistancel,numll至num51顯示的分別是電阻值的小數位、個(gè)位、十位、百位、干位。step11和step21分別顯示的是當前工作的步數
的個(gè)位和十位,其中time11和time21分別顯示的是工作時(shí)間的個(gè)位和十位。Bus9則是動(dòng)態(tài)顯示時(shí)的數據信號,JIDIANQI則代表的是16個(gè)繼電器的開(kāi)關(guān)狀態(tài)。從上圖中可以看出該電阻的小數位的段碼為07H,對應的二進(jìn)制就是00000111,其對應顯示的數字是7即小數位為7,同理可知其個(gè)位數為5,十位數為4,百位數為3,千位數為1,所以其阻值就為1345.7Ω,從圖中可以看出總線(xiàn)上是循環(huán)傳遞著(zhù)時(shí)間、步數和數值信息,根據阻值,其相應的繼電器會(huì )閉合,根據上述電阻網(wǎng)絡(luò )原理,J4、J6、J8、J9、J10、J12、J14閉合,其余的繼電器均斷開(kāi),即對應的二
進(jìn)制代碼為(0010101110101000)B,換算成十六進(jìn)制即為2BA8,從上圖可以看出其驗證結果是正確的。
3 結束語(yǔ)
系統通過(guò)引進(jìn)FPGA來(lái)實(shí)現電阻提供這一模塊,且將周?chē)渌麛底诌壿嬰娐芬布芍猎撔酒?。這樣既解決了系統的特殊性,又增強了系統的抗干擾性,提高了控制精度,也簡(jiǎn)化了調試。此外,本系統還將驅動(dòng)電路、編解碼電路等硬件通過(guò)VHDL語(yǔ)言在FPGA芯片中實(shí)現,相比以前的模擬電路和單片機的實(shí)現方法,使用的元器件更少,體積也更小,針對不同場(chǎng)合,修改起來(lái)也更加方便。具有很好的市場(chǎng)前景。
本文引用地址:http://dyxdggzs.com/article/191402.htm
評論