这个程序中b为什么能调节方波的相位
时间:10-02
整理:3721RD
点击:
//方波发生函数
void square()
{
uchar a,b;
for(a=0;a<255;a++)
{
P0=0xff;
P2=0xff;
b=P2;
b=~b;
while(b--); //调节相位,b的变化越大,相位变化越小
}
for(a=255;a>0;a--)
{
P0=0x00;
P2=0xff;
b=P2;
b=~b;
while(b--);
}
}
void square()
{
uchar a,b;
for(a=0;a<255;a++)
{
P0=0xff;
P2=0xff;
b=P2;
b=~b;
while(b--); //调节相位,b的变化越大,相位变化越小
}
for(a=255;a>0;a--)
{
P0=0x00;
P2=0xff;
b=P2;
b=~b;
while(b--);
}
}
P2=0xff;
b=P2;
b=~b;
这个B就是P2口的电平关系
a0是什么啊?
你说b是P2口的电平关系,我能理解。但我想问,程序中a是输出方波的波形和控制方波周期的大小,那为什么能通过b的大小来改变方波的相位大小,甚至改变了方波的周期大小?为什么P2口赋值给b后,b还要取反?然后while(b--);这个语句在程序中起到了什么作用?