我使用16f887 的PORTB中的RB0/ RB1/ RB2 (IC的8/9/10)用作按键检测,端口开启内部上拉,也外挂外部上拉,用示波器看到引脚电压=电源电压,然而,读到的RB0的值是0,不是1.请教高手门,这是为什么?
当初怀疑是ICD的影响,使用软件仿真故障依旧,配置了关于PORTB口的相关寄存器,如下:
寄存器配置为:
RBPU=0;
WPUB=0Xff;
ANSELH=0x00;
TRISB=0X07;
软件仿真后,系统特殊寄存器的值为
我使用的编译器是
PICC std 9.6
IDE 8.15.
读按键语句为:
if (RB0==0)
{
key_c|=0x0001;
}
请教高手:出现这个现象的原因是什么?是与PORTB端口相关的寄存器没有配置好吗?芯片更换过已经排除芯片损坏的问题.
不胜感激!!! |