只控制PC1口,程序如下:
#define DIN_1() PORTC |= (1<<PC1)
#define DIN_0() PORTC &= ~(1<<PC1)
void Delay(uchar c) //Ms级延时函数,参数i:延时时间
{
unsigned char a,b;
for (a = 0; a < c; a++)
for (b = 0; b < c; b++);
}
void main(void)
{
while(1)
{
DIN_0();
Delay(5);
DIN_1();
Delay(5);
}
}不管延时多长时间,DIN都输出低电平,将DIN_1();和DIN_0();掉换位置,又始终输出高电平,实在不知道问题出在哪?求高手帮忙,谢谢 |