本帖最后由 jinsheng7533967 于 2020-9-5 12:31 编辑
你程序本身就有问题,不要说你按键按下了P2的8个灯全亮,你就是没按也是全亮!因为51单片机你初始化时
P1,P2,P3高电平
另外你的按键是没有起到作用的,也就是说P2更本没有++
下面是正确代码与仿真
#include <REG52.H>
#define uint unsigned int
#define uchar unsigned char
sbit k1=P3^1;
void delay (uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=112;j>0;j--);
}
void main()
{
P2 = 0;;
while(1)
{
if(k1 == 0)
{
delay(10);
if(k1 == 0)
{
while(k1 == 0);
P2++;
}
}
}
}
开关控制流水流.rar
(17.32 KB, 下载次数: 10)
|