PIC单片机 c语言编程

PIC单片机 c语言编程,第1张

以DIP-40的PIC16F877A来举例 灯闪动频率为1秒

void Delay_Ms(unsigned char n)

void main(void)

{

while(1)

{

RA0 = 1//2脚输出

//11脚是供电

RD2 = 1//21脚输出

trisA = 0x04//4脚RA2作为输入

if(RA2 == 0) //如果4脚为低电平

{

//执行代码

}

else //如果4脚为高电平

{

//执行代码

}

Delay_Ms(1000)//延时1秒

RA0 = 0//2脚输出

//11脚是供电

RD2 = 0//21脚输出

Delay_Ms(1000)//延时1秒

}

}

void Delay_Ms(unsigned char n) //延时程序

{

unsigned int i

unsigned char j

for(j=0j<nj++)

{

for(i=0i<Fosc/44000i++)

{

}

}

}

你程序里面的“switch(PORTA&0XF7)” ,其中PORTA&0XF7 的结果太多了,而你只列出了case1,case2,case3,3种case,其他的case就直接执行default 。

你要想进入case1,case2,case3,那么这样改:将“switch(PORTA&0XF7)”改为“switch(PORTA&0X03)”。这样就会进入case1,case2,case3了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7695321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存