51单片机实现流水灯

我们想实现流水灯,即D1亮D2~D8灭,延时一会,再让D2亮,D1,D3~D8灭延时一会,一次循环,但不推荐这样操作,我们可以利用左移来实现流水灯。

软件设计

cs 复制代码
#include <REGX52.H>

typedef unsigned int u16;
typedef unsigned char u8;
#define LED_PORT	P2//一般宏定义都用大写,使用宏定义将P2端口定义
void delay_10us(u16 ten_us)
{
	while(ten_us--);
}
void main()
{
	while(1)
	{
		u8 i=0;
		for(i=0;i<8;i++)
		{
			LED_PORT=~(0x01<<i);//i=0,D0亮,i=1,D1亮
			delay_10us(50000);
		}
	}
}

0x01表示P2.7~P2.0是0000 0001,当i=0时,移0位,就是没移,然后取反就是1111 1110,D1点亮;当i=1时,左移一位就是0000 0010,取反就是1111 1101,D2点亮,以此循环点亮。

相关推荐
辛集电子18 小时前
【STM32】位带操作
stm32·单片机·嵌入式硬件
wei-dong-1837975400818 小时前
嵌入式硬件工程师每日提问
嵌入式硬件·电源拓扑结构
MOS管-冠华伟业19 小时前
微硕WSF4012 N+P双沟MOS管,驱动汽车智能座椅“无感”升降气泵
单片机·嵌入式硬件
沐欣工作室_lvyiyi19 小时前
基于单片机的汽车防碰撞刹车系统(论文+源码)
单片机·嵌入式硬件·stm32单片机·汽车·毕业设计
点灯小铭19 小时前
基于51单片机宠物喂食系统设计
单片机·mongodb·毕业设计·51单片机·课程设计·宠物
机器视觉知识推荐、就业指导19 小时前
STM32 外设驱动模块:声音传感器模块
stm32·单片机·嵌入式硬件
亿道电子Emdoor20 小时前
【ARM】MDK-Functions界面设置
stm32·单片机·嵌入式硬件
学不动CV了20 小时前
ARM单片机中断及中断优先级管理详解
c语言·arm开发·stm32·单片机·嵌入式硬件·51单片机
Topplyz21 小时前
最近两个电路调试的经历与总结(二)
嵌入式硬件·硬件设计·运放
qq_5260991321 小时前
是什么让边缘电脑真正工业化?
嵌入式硬件·自动化