PIC10F200输出PWM波占空比问题。
想用PIC10f200单片机输出一周期10ms的pwm信号驱动电机,但是调试过程中发现占空比在3%——97%区间是正常的,但是占空比到了3%后就无法再降低了,除非直接变为0;通用占空比到97%后也无法再提升了,除非直接变为100%,无法达到98%、99%的效果;不知问题在哪里?谁了解的给个建议,谢谢。PWM波是通过定时器的方式控制普通IO口实现的!附上代码:
void main(void)
{
intAD_data = 0;
TRIS = 0X01; //设置所有IO口为输出
FOSC4 = 0;
OPTION = 0X06; //64分频
while(1)
{
ADCON0 = 0x43;
AD_data =ADRES & 0xFF;
if(AD_data >1)
{
if( TMR0 <= AD_data) )
GP2 = 1;
else if( TMR0 < 255 )
GP2 = 0;
else
{TMR0=0;GP2 =1;}
}
else
GP2 = 0;
}
} 这个版都没人关注的? ADCON0 是楼主在手册中看到有这个寄存器吗?!PIC10F200中有吗{:titter:} tt98 发表于 2015-12-8 16:35
ADCON0 是楼主在手册中看到有这个寄存器吗?!PIC10F200中有吗
搞错了。使用PIC10F220新品{:lol:} 你的程序多次读定时器,注意每次读出来的值可能不一样。建议先读定时器到一个变量。再判断这个变量。 请问楼主是采用什么编程器对PIC10F200进行烧写调试的呢,我手里只有KIT3,能进行编程调试吗? jyrpxj 发表于 2016-1-2 23:08
你的程序多次读定时器,注意每次读出来的值可能不一样。建议先读定时器到一个变量。再判断这个变量。 ...
楼主可以按这样试试
页:
[1]