大家好!初学430,目前使用的是F4250型号,想输出100KHz方波,并实现相位平移。有些问题不太明白:
(1)使用例程中SMCLK时钟源,UP计数模式,在中断里面取反的方式输出方波,我用的频率计算公式是:f=fSMLCK/CCR0/2.是否正确?(晶振为32768)。但是在CCR0<16即f=32K以上的高频输出与公式不符。若采用连续计数方式,CCR0 配置在20左右或20以下时,无信号输出,为什么?
(2)是否有方波相位平移的例程提供参考?或提供思路参考。
谢谢
Yuancheng Wei:
回复 Bruce Wei:
谢谢!已经反复查看手册和网友的帮助,利用输出模式4 基本解决问题
kqian0327:
你好,
如果你需要100K HZ的方波,不建议使用23768低频晶振,你可以直接使用外部高频晶振作为定时器时钟源。
数据手册勘误表有说明,CCR0过小会产生问题,所以推荐提高定时器时钟频率,加大CCR0。
如果需要用到相移,我推荐使用软件模拟方式用两个定时器来完成具有相移的PWM输出,一个定时器作为PWM频率信号,一个作为最小时间片控制,软件设置变量控制多少个时间片后实现高电平,多少时间片之后拉低高电平,从而完成相移和占空比可调。