是这样的,我想用按键控制灯,按一下,LED亮,按一下灭,PORTC_0脚接按键,PORTD_0接LED.程序如下:
LED#include <pic.h>
#include <pic1687x.h>
#include"delay.h"
void main(void)
{
unsigned char ID=0;
TRISD&=~0X01;//所有D0端口输出
PORTD&=~0X01;//所有D0端口输出低电平
TRISC=0X00;//
PORTC|=0X01;//所有C0端口输出高电平
while(1){
if(RC0==0)
{
delay_nms(10);
if(RC0==0)
{
ID++;
}
}
switch(ID)
{
case 1: PORTD=0x01;
break;
case 2: PORTD=0X00;
ID=0;
break;
default:
break;
}
}
}
按道理是要先把PORTC_0这个脚方向置为输入 TRISC=0X01;但结果是按键控制不了,灯一闪一闪的,把它改成TRISC=0X00,就可以了,不知怎么回事,望熟手指点下,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
你令TRISC=0x00那是输出啊
一周热门 更多>