永发信息网

关于stc12 系列单片机 pwm 怎么设置频率?

答案:2  悬赏:50  手机版
解决时间 2021-01-04 10:46
  • 提问者网友:雨不眠的下
  • 2021-01-04 04:01
比如下面代码那里是设置频率?
比如我要设置频率为8000HZ代码怎么写?
void PWM_init (void){//PWM初始化函数
CMOD=0x02; //设置PCA定时器
CL=0x00;
CH=0x00;
CCAPM1=0x42; //PWM1设置PCA工作方式为PWM方式(0100 0010)
CCAP1L=0x00; //设置PWM1初始值与CCAP0H相同
CCAP1H=0x00; // PWM1初始时为0
CR=1; //启动PCA定时器
}
void PWM1_set (uchar a){//PWM1占空比设置函数
CCAP1L=a; //设置值直接写入CCAP1L
CCAP1H=a; //设置值直接写入CCAP1H

}
最佳答案
  • 五星知识达人网友:胯下狙击手
  • 2021-01-04 05:12
sysclk/256
全部回答
  • 1楼网友:持酒劝斜阳
  • 2021-01-04 06:06
pca——可编程计数器阵列 stc手册中把概念模块化了,他的pca包含两个 捕获/比较匹配 模块,可以实现上升沿/下降沿捕获,及捕获中断,或者比较匹配中断,或者pwm,或者最普通的定时/计数器。 其实就是个功能稍微强大点的定时器 - -! 比如stc12c2052ad,它的pca是16位的计数器,计数脉冲可选(时钟分频后做为计数信号,或者外部信号),包含两个比较单元,这两个比较单元可以用来产生比较匹配或者pwm,也就是上面所说的 两个模块。 当pca本身的计数数值与比较匹配相等时,可以触发中断,或者pwm波形翻转。 当pca工作于捕获时,首先设定一个捕获条件 上升沿或下降沿 。当这个条件发生时,pca本身的计数值就被自动的复制到一个固定的寄存器上,等待读取,并可以触发中断。 实际上pca就是一个平平常常的计数器,比at89s52的强点,现在的定时器基本上都有这些功能。 实在不明白就看看手册吧。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯