① 如何用51單片機檢測5個IO口的信號變化
如果用P2口,可以用P1口的6個IO口,外接開關集成電路,用P2口的輸出控制模擬開關,用P1的6口檢測。給一個高電平,檢測一個,依次循環。
② 51單片機檢測IO口高低變化,3秒內有變化無動作。3秒無變化立即啟動繼電器
sbit IN=P2^0;
sbit OUT=P2^1;
uint time ;
void main()
{
OUT=0;//繼電器不動作
time=0;
while(1)
{
while(IN==1)//高電平
{
delayms(10);
time++;
if(time>300) OUT=1;//超過3S,動作
}
time=0;
while(IN==0)//低電平
{ delayms(10);
time++;
if(time>300) OUT=1;//超過3S,動作
}
time=0;
}
}
③ 關於51單片機IO口驅動能力的問題
51單片機IO口為集電極上拉輸出方式,高電平輸出電流等於上拉電阻的電流,這個電流比較小,低電平輸出是內部晶體管吸收的電流,最大可以達到10mA,但是整個埠的總電流不能超過24mA。
電平低於0.7V就是低電平,高於1.8V就是高電平。在這個之間不確定。