全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > LED照明 >

使用51单片机实现延时控制LED灯闪烁

时间:2023-07-11 11:39

人气:

作者:admin

标签: led灯  延时控制  51单片机 

导读:使用51单片机实现延时控制LED灯闪烁-这篇文章我们讲解使用51单片机控制LED灯的闪烁。那么为了方便理解,我们要从最基础的讲起。闪烁,就是灯一会儿亮一会儿灭,这个一会儿就是时间...

这篇文章我们讲解使用51单片机控制LED灯的闪烁。那么为了方便理解,我们要从最基础的讲起。闪烁,就是灯一会儿亮一会儿灭,这个一会儿就是时间间隔,也就是今天我们说的延时了。比如灯亮1s,再灭1s,循环往复就是闪烁。

那么首先借助原理图,使用LED1进行演示,也就是P1.0。注意:LED是低电平点亮,不了解原因的去看开头引用的文章。

图片

#include < reg52.h >
sbit LED1=P1^0;//定义LED1为P1.0

延时函数使用for循环或者while循环,其实就是执行一段空代码,因为每执行一次for或者while循环都要耗费一点时间,这个时间就由指令周期决定,指令周期由时钟频率决定,也就是外部晶振的频率决定。

void delay_ms(unsigned int nms)
{
    unsigned char cnt=125;
    unsigned char i,j;
    for (i=0;i< nms;i++)
        for(j=0;j< cnt;j++);
}//这里我们经验值给定是125个for循环为1ms

接下来就是主函数

void main()
{
    while(1)
    {
        LED1=0;
        delay_ms(500);
        LED1=1;
        delay_ms(500);
    }
}

主函数理解就很简单了,在永不休止的循环里面,给LED的引脚P1.0隔段时间赋不同的值,让其一会儿输出高电平,一会儿输出低电平,LED也就随着一会儿灭,一会儿亮了。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信