我在用MSP430F149的定时器产生100KHZ的信号输出时,想控制PWM信号输出的个数。比如在输出10个周期的100KHZ的信号后,就停止输出,请问这个怎么解决?
谢谢!
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我在用MSP430F149的定时器产生100KHZ的信号输出时,想控制PWM信号输出的个数。比如在输出10个周期的100KHZ的信号后,就停止输出,请问这个怎么解决?
谢谢!
如果我需要10个周期的PWM驱动信号。这个时候,外部端口检测到第九个PWM信号后,开始处理关断PWM模块,请问何时关呢,?
如果检测到第10个周期信号的到来,这是中断处理关断PWM,这期间是需要时间的,可能等到关断时,已经有了10.2个周期的PWM信号了。
你好!
给你一个建议,在数到第九个时,修改定时器中断的比较寄存器值,进中断5个clk,你再看一下你的中断处理函数的反汇编里面花了几个clk,可以倒推出第十次PWM到来时需要提前控制的周期数,这样能够尽量做到误差在2个cpu clk内。
使用定时器中断产生PWM,不用外部检测。中断一次改变一次端口输出电平,中断两次为一个周期,若两次之间没有改变定时器初值,则为50%占空比的PWM,若产生其它占空比PWM改变定时器初值即可(但要保证输出为你要求的100KHZ)。使用全局变量控制中断次数为20次,即完成一次10个周期的PWM输出;计数器归零,关定时器,等待下一次需要输出时直接启动定时器即可