多路可编程PWM芯片设计
在复位(Reset_b)结束后,片选(Cs_b)有效的情况下,可以对芯片进行读写操作。对通道的一次完整的读写包括写控制字与读写通道寄存器两个过程,写控制字选中通道内寄存器,读写通道寄存器获取通道寄存器信息。仅当合理的数据写入后,在PWMH_b有效(PWMH_b=1)时,PWM内部通道使能输出信号。各通道的输出使能由各通道的控制字寄存器的PWM_EN位决定。
本文引用地址:http://www.amcfsurvey.com/article/94604.htm由于采用了控制字自动备份的方式,控制字的编程非常灵活。既可以采用同一个类型的寄存器(不同通道),一起写控制字,亦可同一个通道一块操作。(所有控制字命令都可以在PWM的控制字命令列表查询)
PWM的仿真及验证
PWM的仿真是PWM功能验证的必要环节。利用Modelsim[3]结合脚本文件进行了仿真,并采用89c51结合FPGA验证板对整个设计进行了验证。
ModeslSim仿真需要解决PWM的双向IO端口,PWM的Regs的读写控制时序。
对于双向端口的数据交换,采用读写控制结合三态门可以比较完好的解决。对于大量的Regs读写操作,通过模拟单片机对外围器件的操作。利用Task调用的方式实现。
模拟仿真的结果如图4。
图4 读写操作过程
从图4中,可以看到当采用16bits读写时,各寄存器通过内部DataInternal数据总线的传输过程与电路设计要求完全一致。RWLogic与DataInterface模块的功能完全符合设计预想。
pwm相关文章:pwm是什么
pwm相关文章:pwm原理
脉宽调制相关文章:脉宽调制原理
评论