请教PIC12F508A 端口做输入问题(线路和C语言如下):
GP0和GP1做输入时,用示波器量测默认5V。
GP0和GP1的侦查电路无法把GP0和GP1拉高或拉低
侦查电路断开12F508A后是可以动作的,接上单片机后就无法动作,零件阻值大小都试过。
直接用GP0或GP1不接侦查电路,直接去点+5V或GND,程序输出是可以满足要求的
我做了一个实验GP0或GP1接一个1K电阻,电阻另一端点+5V或GND,也是不能拉高或拉低,是不是PIC12F508A 端口做输入不是高阻态?
求DX赐教!
PIC12F508A 端口输入问题.pdf
(26.88 KB)
#include <pic.h>
__CONFIG(MCLRDIS&WDTDIS&PROTECT&INTRC);
unsigned int i;
void delay_min (unsigned int min)
{
for (i=0;i<min;i++)
{
delay (5000);
}
}
void main()
{
int count = 0;
TRIS = 011111;
OPTION = 0x00;
GP5 = 1;
while(1)
{
if (GP0==0) // GP0是声控输入脚
{
GP5=0; //GP5推动光耦
delay_min(1); //1是85秒
GP5=1;
}
if (GP1==1) // GP0是声控输入脚
{
GP5=0; //GP5推动光耦
delay_min(1);
GP5=1;
}
}
}
|