各位大神,我最近想做一个基于
单片机PWM功能的流星灯(水滴效果),可是看了一些资料,按着书上的程序做了一边还是不行。那灯亮度压根儿就没变,,,求正解啊。。。。
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
sbit PWM=P0^1;
void delay(uchar i)
{
uchar j;
for(;i>0;i--)
{
for(j=29;j>0;j--)
_nop_();
_nop_();
}
}
void PWMout(uchar q)
{
PWM=1;
delay(q);
PWM=0;
delay(10-q);
}
void main()
{
while(1)
{
PWMout(0);
PWMout(1);
PWMout(2);
PWMout(3);
PWMout(4);
PWMout(5);
PWMout(6);
PWMout(7);
PWMout(8);
PWMout(9);
PWMout(10);
}
}
PWMout(1);
PWMout(2);
PWMout(3);
PWMout(4);
你在每个之间PWMout
加个大概1S的延时程序,看看有没有变化。
一周热门 更多>