单片机两个定时器产生PWM波信号的问题
另个定时器是如何产生PWM波的,工作赋值是怎么赋值的。有什么要求吗?我需要PWM周期是1s,然后T0定时4ms,不知道T1怎么设置。不要赋值粘贴,谢谢...
另个定时器是如何产生PWM波的,工作赋值是怎么赋值的。有什么要求吗?我需要PWM周期是1s,然后T0定时4ms,不知道T1怎么设置。不要赋值粘贴,谢谢
展开
展开全部
T0设置4ms的定时周期,中断服务程序如下:
static uint8_t i;
if( ++i > 250 ) i = 0;
PWM_Out_Pin = ( i >= PWM_Set );
4ms精度,1s的周期,250分之一的分辨率,把这个要求稍微调整一下,改成256分之一的分辨率会更简单一点。
static uint8_t i;
++i; // if( ++i > 250 ) i = 0; // 这句可以去掉,i只有8位,增加到255后会自动归零。
PWM_Out_Pin = ( i >= PWM_Set );
这种精度的PWM,不需要用两个定时器。
static uint8_t i;
if( ++i > 250 ) i = 0;
PWM_Out_Pin = ( i >= PWM_Set );
4ms精度,1s的周期,250分之一的分辨率,把这个要求稍微调整一下,改成256分之一的分辨率会更简单一点。
static uint8_t i;
++i; // if( ++i > 250 ) i = 0; // 这句可以去掉,i只有8位,增加到255后会自动归零。
PWM_Out_Pin = ( i >= PWM_Set );
这种精度的PWM,不需要用两个定时器。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询