摘 要: 在此設計的低成本手持式示波器是以ADC128S022模/數轉換芯片為數據采集前端;使用FPGA片內雙口內建RAM進行數據存儲、有限狀態機實現示波器的觸發控制和顯示驅動;最后再用LCD12864液晶模塊完成終端的低成本圖形顯示。在DE0?Nano FPGA (Altera Cyclone IV)開發板上的測試結果表明,所設計的手持式示波器可以實現模擬信號任意電平上升沿或下降沿的觸發測量;垂直靈敏度和掃描速度調節、波形參數的直接讀出等功能。
關鍵詞: FPGA; 示波器; 液晶顯示屏; 有限狀態機
中圖分類號: TN919?34; TP334 文獻標識碼: A 文章編號: 1004?373X(2013)10?0106?03
0 引 言
目前,數字存儲示波器以其體積小、攜帶方便、準確率高的獨特優勢逐步取代了傳統的模擬示波器,并向著更為小巧的低成本、便攜式應用方向發展。近幾年來,許多研究者充分利用FPGA片上的資源豐富、使用靈活、開發成本低的優點提出了一些數字示波器的虛擬儀器解決方案[1?2]和嵌入式解決方案[3?8],這些設計采用FPGA片內資源來實現數字示波器的數據存儲(RAM)、觸發控制、數字信號運算與處理、顯示終端驅動等功能,這在很大程度上能夠降低示波器成本和復雜度,但是這些設計方案往往會使用到微處理器[3?7](8051/ARM/Nois Ⅱ)作為系統調度和數據處理的核心或采用VGA顯示器作為圖形輸出終端[1,2,8],還不能達到低成本的手持便攜使用要求。
LCD12864液晶顯示模塊具有低壓、微功耗、壽命長、超薄等顯著優點,比較適合低成本、便攜式電子信息產品來實現字符和圖形的顯示[4]。因此,文中就以LCD12864液晶模塊作為數字示波器的低成本圖形顯示終端;基于FPGA應用技術,設計出了具有模擬信號任意電平、上升沿或下降沿觸發;垂直靈敏度和掃描速度調節、波形參數的直接讀出特點的低成本手持式數字示波器。
1 手持式示波器的系統設計
2 A/D轉換模塊
3 雙口RAM的讀寫控制
為此,首先需要把64 b的圖形數據按位分成8段分別存儲在8個128×8 b的RAM單元中,這樣才能保證每個RAM存儲單元的讀/寫數據位寬一致。其次,采集的波形數據需要經過行列數據轉置模塊,才能做到RAM數據的按行寫入。行列數據轉置模塊采用了流水線結構,在觸發啟動信號和時鐘的共同作用下把采集到的列點陣數據轉置成適合LCD屏顯示的行數據格式。
4 LCD顯示驅動模塊
要驅動LCD模塊顯示正確圖形,就需要根據液晶屏的控制時序和用戶指令集,設計出正確的有限狀態機(FSM)來完成LCD模塊的初始化、控制命令和寫入數據操作過程;并產生RAM讀數據的地址,圖4所示就是LCD顯示驅動模塊的狀態遷移。
在LCD模塊的狀態轉換圖中,系統上電后,首先進行持續大約0.05 s的自動復位(需要根據時鐘頻率調整),然后進入LCD模塊的初始化過程,因此在狀態機中設置有3條條件轉換路徑來實現LCD屏的工作模式切換:初始化、顯示數據和起始行地址寫入。同時也在關鍵路徑上設置有可以配置參數的延時——在方便LCD模塊的工作調試的同時,使LCD模塊一直工作在寫屏模式,驅動LCD模塊動態實時顯示、產生雙口RAM的讀數據地址。
5 設計驗證
實驗結果表明,采用LCD12864液晶模塊作為手持式示波器的顯示終端,雖然顯示分辨率較低,可以清楚看到圖形的像素點;同時,這也是采用LCD12864屏的獨特優點所在——能夠根據一個周期波形的像素點數和采樣信號頻率直接讀出被測信號周期,假如采用100 kHz(周期10 μs)的采樣率;測得顯示屏上的一個完整周期的波形點數是50,那么該被測信號的周期就是500 μs。
6 結 論
文中所設計的以LCD12864模塊為圖形顯示的低成本手持式示波器,最終在DE0_Nano FPGA開發板上的驗證結果表明,完全實現了模擬信號的測量;垂直靈敏度和掃描速度調節、波形參數直接讀出功能;這不但實現了示波器的廉價和便攜,而且還具有被測信號周期直接讀出的優點。
參考文獻
[1] 馮林,李莉,吳振宇,等.基于FPGA的USB虛擬示波器[J].儀表技術與傳感器,2011(3):59?62.
[2] 陳昌鑫,靳鴻,馮彥君,等.數據采集卡和虛擬示波器系統[J].儀表技術與傳感器,2012(3):67?69,72.
[3] 石明江,張禾,河道清.基于FPGA的手持式數字存儲示波器顯示驅動設計[J].液晶與顯示,2010,25(5):738?742.
[4] 王慶春,何曉燕.基于FPGA的便攜式邏輯分析儀設計[J].電子測量技術,2012,35(10):80?83.
[5] 孫盛坤,丁昊,宋杰.基于FPGA和TFT彩屏液晶的便攜示波器設計[J].現代電子技術,2011,34(4):158?162.
[6] 趙貽玖,王厚軍,戴志堅.基于NIOS處理器的數字示波表設計[J].儀器儀表學報,2006,27(6):1484?1485.
[7] 趙新穎,羅坤.基于FPGA數字可存儲示波器的設計與實現[J].鄭州鐵路職業技術學院學報,2011,23(3):17?19,28.
[8] 王至秋.基于FPGA控制VGA顯示的多通道數字示波器的設計[J].現代電子技術,2011,34(14): 55?57.
[9] 葉芃,王厚軍,田書林.手持數字示波表技術研究[J].儀器儀表學報,2002,23(5):144?147.
[10] 石明江,張禾,徐治銀.手持式數字存儲示波表數據采集系統設計[J].電子技術應用,2011,37(2):88?90.
[11] 趙云,郭慶,羅蘇笙,等.基于FPGA的多儀表合一的設計與實現[J].電子科技,2012(8):10?12.
[12] 邢開宇,曹曉曼,方火能.基于FPGA和NAND Flash的存儲器ECC設計與實現[J].電子科技,2012(8):70?73.