793a95f4e4f10d4e
获得 0 次赞
帮助过0人
PIC16系列单片机,RA1-3引脚接按钮,三个按钮控制RC1-3引脚的高低电平变化.RA1按钮按下,RC1为高电平,RC2为高电平,RC3为低电平。RA2按钮按下,RC1为低电平,RC2为高电平,RC3为低电平。RA3按钮按下,RC1为高电平,RC2为高电平,RC3为高电平下面是自己写的,但是实现不了,不知道哪里错了?求教#include <pic.h> #define uint unsigned int#define uchar unsigned charvoid delay(uint x) //延时函数{uint ab;for(a=x;a>0;a--) for(b=110;b>0;b--);}void main() //主函数{TRISA=1;PORTA=0xff;TRISC=0;PORTC=0x00;while(1){if((PORTA & 0x02) != 0x02) //判断按键是否有被按下,有则为0 { delay(10); //去抖 if((PORTA & 0x02) != 0x02) //去抖完得再判断一次 { RC1=1; RC2=1; RC3=0; } }if((PORTA & 0x04) != 0x04) //判断按键是否有被按下,有则为0 { delay(10); //去抖 if((PORTA & 0x04) != 0x04) //去抖完得再判断一次 { RC1=0; RC2=1; RC3=0;} }if((PORTA & 0x08) != 0x08) //判断按键是否有被按下,有则为0 { delay(10); //去抖 if((PORTA & 0x08) != 0x08) //去抖完得再判断一次 { RC1=1; RC2=1; RC3=1; } }}}