基于FPGA的數(shù)據(jù)采集控制模塊的研究與設(shè)計(jì)
2.2 A/D轉(zhuǎn)換控制器的設(shè)計(jì)
在此設(shè)計(jì)中,是利用狀態(tài)機(jī)對(duì)A/D轉(zhuǎn)換進(jìn)行控制的??刂艫DC0809采樣狀態(tài)圖,如圖2所示。
在狀態(tài)ST0中,對(duì)0809進(jìn)行初始化,之后進(jìn)入到狀態(tài)ST1;在狀態(tài)ST1中,ALE和START信號(hào)有效,這時(shí)EOC信號(hào)變?yōu)榈碗娖?,進(jìn)入轉(zhuǎn)換狀態(tài)ST2。此時(shí),需要對(duì)0809工作狀態(tài)信號(hào)EOC進(jìn)行測(cè)試,如果為低電平,表示轉(zhuǎn)換沒(méi)結(jié)束,仍需要停留在ST2狀態(tài)中等待,直到變成高電平后才說(shuō)明轉(zhuǎn)換結(jié)束,在下一時(shí)鐘脈沖到來(lái)時(shí)轉(zhuǎn)向狀態(tài)ST3。在狀態(tài)ST3,由狀態(tài)機(jī)向0809發(fā)出轉(zhuǎn)換好的8位數(shù)據(jù)輸出允許命令,這一狀態(tài)周期同時(shí)可作為數(shù)據(jù)輸出穩(wěn)定周期,以便能在下一狀態(tài)中向鎖存器中鎖入可靠的數(shù)據(jù)。在狀態(tài)ST4,由狀態(tài)機(jī)向FPGA中的鎖存器發(fā)出鎖存信號(hào),將0809輸出的數(shù)據(jù)進(jìn)行鎖存。
2.3 RAM讀寫(xiě)控制器的設(shè)計(jì)
在該模塊設(shè)計(jì)中,RAM讀寫(xiě)控制模塊又分為讀控制模塊、寫(xiě)控制模塊和讀寫(xiě)狀態(tài)轉(zhuǎn)換模塊。寫(xiě)控制模塊中兩個(gè)輸入信號(hào)分別與A/D轉(zhuǎn)換控制模塊的數(shù)據(jù)鎖存和轉(zhuǎn)換輸出相連。當(dāng)鎖存信號(hào)使能,即發(fā)出寫(xiě)信號(hào),將數(shù)據(jù)存儲(chǔ)到外部RAM的第600個(gè)地址空間之后,再對(duì)之前的數(shù)據(jù)進(jìn)行前移,以達(dá)到數(shù)據(jù)的及時(shí)更新。讀控制模塊的控制信號(hào)分別與寫(xiě)更新完畢信號(hào)和讀信號(hào)相連,當(dāng)寫(xiě)更新完畢信號(hào)使能時(shí),只要接到讀信號(hào),則依次讀完外部RAM前600個(gè)地址空間(一場(chǎng))的數(shù)據(jù)。
2.4 鍵盤(pán)掃描控制器的設(shè)計(jì)
鍵盤(pán)控制模塊由四個(gè)模塊組成,包括:時(shí)鐘分頻模塊、行鍵值輸出模塊、鍵值鎖存模塊和鍵值合成模塊。鍵值鎖存模塊將按下按鍵的行、列信息鎖存,并交由鍵值合成模塊,該模塊配合行鍵輸出模塊輸出的結(jié)果進(jìn)行查表,最終確定鍵值。
3 仿真結(jié)果
Max+PlusⅡ仿真平臺(tái)的圖形輸入方式直觀,符合傳統(tǒng)數(shù)字系統(tǒng)設(shè)計(jì)人員的習(xí)慣,便于進(jìn)行接口的設(shè)計(jì),容易實(shí)現(xiàn)仿真,便于信號(hào)的觀察?;谝陨峡紤],利用此平臺(tái),用硬件描述語(yǔ)言VHDL來(lái)實(shí)現(xiàn)各個(gè)功能模塊,A/D轉(zhuǎn)換控制器和VGA顯示控制器模塊的時(shí)序仿真結(jié)果如圖3、圖4所示。
4 結(jié) 語(yǔ)
這里的數(shù)據(jù)采集控制模塊主要以FPGA為基礎(chǔ),本著軟件硬件化的思路,著重研究主控制模塊的實(shí)現(xiàn)。由于采用FPGA作為控制處理器,其速度快,效率高,且標(biāo)準(zhǔn)的VGA接口使得系統(tǒng)的使用更加便捷,鍵盤(pán)控制的多通道間切換,也為實(shí)現(xiàn)多路采集奠定了基礎(chǔ)。
評(píng)論