C51单片机16个LED流水灯(针对51单片机初学者)

您所在的位置:网站首页 51单片机八个灯的流水灯代码 C51单片机16个LED流水灯(针对51单片机初学者)

C51单片机16个LED流水灯(针对51单片机初学者)

2024-07-11 14:32| 来源: 网络整理| 查看: 265

C51单片机16个LED流水灯

由于平时太忙,很久没在CSDN上记录点东西了,写点单片机相关的吧,大神可忽略,内容只针对初学者。

一、功能

从第一个灯到第16个灯依次点亮(速度快),再反过来点亮一遍(速度慢),然后16个灯同时闪烁,最后16个灯全部点亮(保持一段时间常亮)。依次往复循环上述效果。

二、proteus仿真图

16个灯分别用P1口和P2口,LED阳极已接高电平,通过控制阴极的高低电平状态来控制LED灯的亮灭。 在这里插入图片描述

三、代码

方法一:通过给P1、P2口的每一个灯赋初值来实现,方法比较笨,但很直观,浅显易懂。

#include void delay(unsigned int i) { while(i--); } void main() { long int j; while(1) { P1=0XFE; 1111 1110 低电平点亮,从第一个灯开始 delay(10000); P1=0XFD; //1111 1101 delay(10000); P1=0XFB; //1111 1011 以下以此类推 delay(10000); P1=0XF7; delay(10000); P1=0XEF; delay(10000); P1=0XDF; delay(10000); P1=0XBF; delay(10000); P1=0X7F; delay(10000); P1=0XFF; //每结束一轮统一关一次 P2=0XFE; delay(10000); P2=0XFD; delay(10000); P2=0XFB; delay(10000); P2=0XF7; delay(10000); P2=0XEF; delay(10000); P2=0XDF; delay(10000); P2=0XBF; delay(10000); P2=0X7F; delay(10000); P2=0XFF; P2=0X7F; delay(30000); P2=0XBF; delay(30000); P2=0XDF; delay(30000); P2=0XEF; delay(30000); P2=0XF7; delay(30000); P2=0XFB; delay(30000); P2=0XFD; delay(30000); P2=0XFE; delay(30000); P2=0XFF; P1=0X7F; delay(30000); P1=0XBF; delay(30000); P1=0XDF; delay(30000); P1=0XEF; delay(30000); P1=0XF7; delay(30000); P1=0XFB; delay(30000); P1=0XFD; delay(30000); P1=0XFE; delay(30000); P1=0XFF; for(j=0;j


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3