·上一文章:基于DSP控制技术的逆变器谐波失真消除
·下一文章:嵌入式linux系统GUI设计方案
4.2 基于状态机的打印控制模块设计
微型打印机控制模块主要控制打印机的工作时序,使其能够正常工作。控制模块主要是利用VHDL语言的状态机实现。根据时序图并结合打印机特性,在编写状态机时,分为3个状态,其状态转换图如图5所示。
这个控制模块的主要信号目有:reset,ask,stb和busy。其中前3个信号是微型打印机的并行接口信号。而busy信号为高电平表示打印机正“忙”,不能接收数据;ask信号是应答脉冲,低电平表示数据已接收且打印机已准备好接收下一个数据;sth信号是数据选通触发脉冲,下降沿时读入数据。当reset为‘0’时,对所有输入数据进行预置并初始化状态机;busy为‘0’则进入下一状态,输入数据,延时后,进入下一个状态,判断ask是否为‘0’。若ask为‘0’则转到初始状态,接下来进行下一轮循环。
5 结论
设计的微型打印机的控制器已经系统调试,该控制器具有较强的移植性,打印机的输入数据是系统存储器数据,稍加改动就可实现实时数据的打印功能,能够使用在任意一个由FPGA构成的系统中使用,具有良好的应用前景。