单片机控制LED灯闪烁
控制原理:
单片机有32位输入输出口,能够实现高电平/低电平的输入输出。
高电平—>电源—>5V左右电压—>逻辑电平1
低电平—>接地—>0V左右的电压—>逻辑电平0
从图中可以看出,只要让单片机P0^0位输出低电平,LED发光二极管就点亮,只要让单片机P0^0位输出高电平,LED发光二极管就灭。如果要让发光二极管亮,休息一会儿,发光二极管灭,休息一会儿,不断循环上述过程。就出现发光二极管闪烁。
C语言程序如下:
/*******************************************
函数功能:LED灯闪烁
作者:烽火相约
时间:2018年11月13号
*******************************************/
#include<reg51.h> //头文件
sbit led=P0^0; //端口定义
void delay(); //子函数声明
/******************************************
函数名称:main()
函数功能:实现LED灯闪烁
子函数:delay()
*******************************************/
void main()
{
while(1) //一直循环
{
led=~led;//取反
delay();//延时
}
}
/********************************************
函数名称:delay()
函数功能:实现延时的功能
********************************************/
void delay()
{
unsigned int i=20000;//变量的定义
while(i--);//循环 直到i=0
}
单片机开发——LED 闪烁程序
点亮 LED 小灯的程序我们第二课完成了,就是让 LED = 0。熄灭小灯的程序也很简单,就是 LED = 1。点亮和熄灭都会了,那么如果我们在亮和灭中间加个延时,反复不停的点亮和熄灭小灯,就成了闪烁了。(不喜欢阅读文字的同学,请登录“乐搏学院”官网,免费学习在线视频教程。还有更多IT职业技能公开课等你来哟~)我们首先复习一下 Keil 写程序的过程,建立工程-->保存工程-->建立文件-->添加文件到工程-->编写程序-->编译-->下载程序。LED 闪烁程序对于有 C 基础的同学来说很简单,那我先写出来,大家可以先看下。没有C 语言基础的同学也可以跟着抄一遍,下节课我会补充部分 C 语言基础知识,这样你先抄一遍后,再跟着看 C 语言基础知识的时候也比较容易理解透彻。
大家把这个程序编译一下,下载到单片机里,就会发现 LED2 这个小灯会闪烁了。
相关问答
单片机 流水 灯闪烁 几次停止?单片机8个流水灯闪10次后停止。单片机流水灯是指一串LED灯,通过单片机控制,按照一定的顺序,不断循环地轮流点亮,闪烁10次后停止。单片机8个流水灯闪10次后停...
51 单片机灯闪烁 3次后熄灭?对于问题中所说的这个这个功能现象可以通过编程来实现,首先在硬件上,要通过51单片机的一个引脚来控制灯的亮和灭,然后编写程序,通过编程使这个引脚的电平进行...
单片机 流水灯C语言 程序 (8个灯,依次点亮每个灯,延时500MS)?单片机流水灯C语言程序(8个灯,依次点亮每个灯,延时500MS)源代码如下:#include单片机流水灯C语言程序(8个灯,依次点亮每个灯,延时500MS)源代码如下:#include
51 单片机 控制led交替 闪烁 原理?LED灯交替闪烁的原理就是用51单片机的一个引脚同时驱动两只LED,并在这个引脚上输出0.5赫兹以上的方波,就可以让发光管产生交替闪烁效果。具体电路如下:两只...
P1口8位LED以1S的周期 闪烁 (即亮0.5S,灭0.5S)要求用 单片机 的定时器计数器来工作? 程序 ?可以利用单片机定时器中断来实现这个闪烁电路周期为2s的设计。在单片机设计中经常需要设计一个1s闪烁的LED来判断单片机是否在工作。我们只要设置好定时器计...
用C语言编程实现使八个灯被循环点亮,并且亮的时间为500ms?1、用精确定时的方法,设置流水灯运行时的时间间隔,延时时间为500MS。2、#include"reg51.h"首先写出单片机的头函数。3、#include"int...
51 单片机 数码管时钟 程序 用定时器动态扫描怎么加入 闪烁 标志位的问题?不是取反,是关闭对应数码管。思路:判断按键->调整时间->显示时间;你要实现闪烁,需要在显示数字部分下功夫不是取反,是关闭对应数码管。思路:判断按键->调整时...
用 单片机 焊接好lcd屏幕一直 闪烁 怎么办?首先确定你焊接没虚焊假焊,其次检查供电,在检查是否单片机程序作怪,最后就能判断出是不是LCD的问题了首先确定你焊接没虚焊假焊,其次检查供电,在检查是否单片...
单片机程序 8个发光二极管间隔500ms由上至下,再由下至上,再重复一次,然后全部熄灭再以800ms间隔全部闪?循环7次,使P1口分别为0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe也就是LED循环由高到低流水灯显示。循环7次,使P1口分别为0x7f,0xbf,0xdf,0xe...
51 单片机 一键控制一个LED,每按一下按钮LED 闪烁 一种频率,共闪...case1:delay();readkey();//慢速闪烁case2:delay();readkey();//中速闪烁case3:delay();readkey();le...