![](http://uphotos.eepw.com.cn/mtk2010/pics/65a75ae87ccdbc1b37082e096ee48c8e.jpg)
![](http://uphotos.eepw.com.cn/mtk2010/pics/bce57c0a4a3181aa37a59ce7be4a57ec.jpg)
![](http://uphotos.eepw.com.cn/mtk2010/pics/6ee1d6acf95123b2be4c38de27738f1f.jpg)
流水灯代码。
我用的是89C54芯片。代码如下:
/***************************************************************
功能:实现多只LED依次点亮实现跑马灯效果
***************************************************************/
#include <intrins.h>
#include <reg51.h>
sbit led_c= P1^7;
sbit _Led1 = P0^0; //对应CPU管脚P0.0
sbit _Led2 = P0^1; //对应CPU管脚P0.1
sbit _Led3 = P0^2; //对应CPU管脚P0.2
sbit _Led4 = P0^3; //对应CPU管脚P0.3
sbit _Led5 = P0^4; //对应CPU管脚P0.4
sbit _Led6 = P0^5; //对应CPU管脚P0.5
sbit _Led7 = P0^6; //对应CPU管脚P0.6
sbit _Led8 = P0^7; //对应CPU管脚P0.7
/*-------------------------------------------------
功能:1MS延时子程序
-------------------------------------------------*/
void Delay_xMs(unsigned int x)
{
unsigned int i,j;
for( i =0;i < x;i++ )
{
for( j =0;j<500;j++ );
}
}
/*-------------------------------------------
主程序
功能:LED1--LED8发光二极管依次点亮实现跑马灯效果
--------------------------------------------*/
void main()
{
while(1)
{ led_c= 0;
Delay_xMs(100);
_Led1 = 0; //点亮LED1,熄灭LED2,LED3,LED4
_Led2 = 1;
_Led3 = 1;
_Led4 = 1;
_Led5 = 1;
_Led6 = 1;
_Led7 = 1;
_Led8 = 1;
Delay_xMs(100);
_Led1 = 1; //点亮LED2,熄灭LED1,LED3,LED4
_Led2 = 0;
_Led3 = 1;
_Led4 = 1;
_Led5 = 1;
_Led6 = 1;
_Led7 = 1;
_Led8 = 1;
Delay_xMs(100);
_Led1 = 1; //点亮LED3,熄灭LED2,LED1,LED4
_Led2 = 1;
_Led3 = 0;
_Led4 = 1;
_Led5 = 1;
_Led6 = 1;
_Led7 = 1;
_Led8 = 1;
Delay_xMs(100);
_Led1 = 1; //点亮LED4,熄灭LED2,LED3,LED1
_Led2 = 1;
_Led3 = 1;
_Led4 = 0;
_Led5 = 1;
_Led6 = 1;
_Led7 = 1;
_Led8 = 1;
Delay_xMs(100);
_Led1 = 1; //,熄灭LED2,LED3,LED4,Led1
_Led2 = 1;
_Led3 = 1;
_Led4 = 1;
_Led5 = 0;
_Led6 = 1;
_Led7 = 1;
_Led8 = 1;
Delay_xMs(100); //延时一段时间
_Led1 = 1; //,熄灭LED2,LED3,LED4,Led1
_Led2 = 1;
_Led3 = 1;
_Led4 = 1;
_Led5 = 1;
_Led6 = 0;
_Led7 = 1;
_Led8 = 1;
Delay_xMs(100); //延时一段时间
_Led1 = 1; //,熄灭LED2,LED3,LED4,Led1
_Led2 = 1;
_Led3 = 1;
_Led4 = 1;
_Led5 = 1;
_Led6 = 1;
_Led7 = 0;
_Led8 = 1;
Delay_xMs(100); //延时一段时间
_Led1 = 1; //,熄灭LED2,LED3,LED4,Led1
_Led2 = 1;
_Led3 = 1;
_Led4 = 1;
_Led5 = 1;
_Led6 = 1;
_Led7 = 1;
_Led8 = 0;
Delay_xMs(100); //延时一段时间
}
}
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 | |
【换取手持示波器】树莓派PICO逻辑分析仪被打赏16分 | |
【分享评测,赢取加热台】教你五分钟本地部署蒸馏版本的DeepSeekR1-7B被打赏12分 | |
【换取手持示波器】蓝牙音箱更换电池被打赏8分 | |
【换取手持示波器】鼠标更换微动开关被打赏10分 | |
【我要开发板】4.传感器移植被打赏50分 | |
【换取手持数字示波器】RISC-VGCC使用-fno-omit-frame-pointer编译选项实现栈回溯被打赏29分 | |
【分享评测,赢取加热台】+开关电源简述被打赏7分 | |
STM32WBA55ADC采集电池电压任务2被打赏1分 |