51单片机P0口检测按键

2025-02-24 07:25:41
推荐回答(4个)
回答1:

其实这个您可以再中断处理函数里执行判断按键程序啊
if(KEY_P12 ==0) //如果P1.2被按下,则对应程序跳出,或者关闭主函数中正在运行的程序
{
LED12 = 0; //关闭LED12灯
SYS_STATUS = SYS_ONES; //让系统状态进去到另一个系统状态即可啊。
}

回答2:

如果可以,外加一个或电路。接外中断。这样,任何一个按键按下都可以引发中断。在中断中,再进行判断是哪个按键引发的中断。从而调用相应的处理程序。

如果对于实时要求不高,也可以采用轮询方式。
在主循环中轮询按键状况。也可以用时钟中断。时钟中断中轮询按键状况。

回答3:

题目是:51单片机P0口检测按键
而后说:P1.2 P1.3 P1.4接三个按键。

好像是电路接错了。

回答4:

原理图可以改为下图:
并且在程序,单片机p0.0端口

初始化为低电平;
仿真时,r5可以选择1k左右,实际电路中应选择4.7k~10k,不然太让费电了。