用遥控器控制51单片机led灯的亮灭,这个为什么不能实现led灯灭。

2025-03-27 01:24:47
推荐回答(5个)
回答1:

是你没有让它灭,所以它没有灭。你只开了没有进行关,单片机IO是不会自动给你关的,你可以这样,你按1时它开,按2时它关,那么你要把这句:“case 0x18:DataPort=dofly_DuanMa[2];break;数码管显示2”改为:“ case 0x18:DataPort=dofly_DuanMa[2]; P1 =0xFF; break;(我是假设你的LED是低电平点亮的)。

回答2:

因为你按下2的时候,程序里并没有把1对应的LED关掉case 0x0c:DataPort=dofly_DuanMa[1];//数码管显示1 P1=0x05;break;//数码管控制p1口的led = 00000101 case 0x18:DataPort=dofly_DuanMa[2];P1=0x....;
//P1赋值位对应LED位,以下也是一样;break;数码管显示2

回答3:

LED是不是这样写的 led=~led;

这样写会导致多次执行,有可能和当初一样,所以看不到效果。

回答4:

你的led指的是什么?数码管可以控制,你就在数码管控制的地方加上控制led灯的程序就可以了!

回答5:

你没有清了就会一直亮啊!通信是不是正常看一下!