VHDL設計的微型打印機控制器技術
4.2 基于狀態機的打印控制模塊設計
微型打印機控制模塊主要控制打印機的工作時序,使其能夠正常工作。控制模塊主要是利用VHDL語言的狀態機實現。根據時序圖并結合打印機特性,在編寫狀態機時,分為3個狀態,其狀態轉換圖如圖5所示。
這個控制模塊的主要信號目有:reset,ask,stb和busy。其中前3個信號是微型打印機的并行接口信號。而busy信號為高電平表示打印機正“忙”,不能接收數據;ask信號是應答脈沖,低電平表示數據已接收且打印機已準備好接收下一個數據;sth信號是數據選通觸發脈沖,下降沿時讀入數據。當reset為‘0’時,對所有輸入數據進行預置并初始化狀態機;busy為‘0’則進入下一狀態,輸入數據,延時后,進入下一個狀態,判斷ask是否為‘0’。若ask為‘0’則轉到初始狀態,接下來進行下一輪循環。
5 結論
設計的微型打印機的控制器已經系統調試,該控制器具有較強的移植性,打印機的輸入數據是系統存儲器數據,稍加改動就可實現實時數據的打印功能,能夠使用在任意一個由FPGA構成的系統中使用,具有良好的應用前景。
評論