第1个回答 2011-01-27
用LED指示引脚状态。要求:一个51最小系统版,一个LED,一个1K~10K的电阻(4.7K)。
+5V电源接到LED的正极,串联一个4.7K电阻,接到单片机的引脚上(如P0.1口)。该电路功能:当单片机输出低电平时,小灯亮;单片机输出高电平时,小灯不亮。编程序观察现象。
程序:
void main()
{
sbit LED=P0^1;
void delayms(unsigned mx)
{
unsigned int i,j;
for(i=mx;i>0;i--)
for(j=100;j>0;j--);
}
while(1)
{
LED=1; //此时LED不亮,说明这个引脚是高电平。
delayms(1000);
LED=0; //此时LED亮,说明这个引脚是低电平。
delayms(1000);
}
}
你若想单纯的去检测正在运行单片机的IO口的电平状态的话,直接用LED接到该IO口观察LED的状态即可。如果事先知道该IO口的电平时固定的,拿更好办了,直接用万用表测。
第2个回答 2011-01-27
假如你要检测的脚是P2.0, C51如下:
sbit P20 = P2^0;
.....
if(P20==1)
{
......
}
第3个回答 2011-02-03
sibt P1.1=P1^1;
void main()
{
while(1)
if(P1.1=1)
.........
else........
}
第4个回答 2011-01-28
判断端口是1还是0.