⑴ 51单片机一键控制一个LED,每按一下按键LED闪烁一种频率,共闪烁三种频率.有好的答案加
#include<reg51.h>
unsigned char n = 0;
sbit key = P3^4;
sbit led = P1^0;
void delay()
{
unsigned int i, j;
for(i = 0; i < 100; i++) for(j = 0; j < 500; j++);
}
void readkey(void)
{
unsigned char i, j;
if(!key) {
for(i = 0; i < 10; i++)
for(j = 0; j < 120; j++); //延时消抖
if(!key) {
while(!key); //等待按键释放
n++;
n %= 4; //n = 0~3
}
}
}
main()
{
while(1) {
switch(n) {
case 0: led = 1; readkey(); break; //熄灭
case 1: delay(); readkey(); //慢速闪烁
case 2: delay(); readkey(); //中速闪烁
case 3: delay(); readkey(); led = ~led; //快速闪烁
}
}
}
⑵ 单片机c51,9个灯同时闪烁
从第一个灯开始随着时间变化,二进制数的递减,所有的灯都会依次的点亮,当全部的灯都被点亮后再重新开始这个过程,一直循环下去。
红绿蓝四个LED灯循环闪烁,单片机课程试验,连上板子可以直接显示,非常基础。单片机使用codewarrior编。
资源中是采用51单片机的GPIO引脚对多路LED灯进行控制的代码,包含两个工程,分别采用两种不同的方法对多路LED灯进行控制。
⑶ 51单片机怎么只控制一颗LED灯闪烁
1、新建项目,如图所示。
注意事项:
很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是51系列的单片机一般不具备自编程能力。