基于LED灯组的呼吸灯的设计

发布者:fengting最新更新时间:2022-04-19 来源: eefocus关键字:LED灯组  呼吸灯 手机看文章 扫描二维码
随时随地手机看文章

#include 

void Delay1(int del)

{

        int i,j;

        for(i=0; i        for(j=0; j<1827; j++)   

        ;

}

void Delay(unsigned int t)

{

while(--t);

}

//函数声明

//P0=0x00;

unsigned int z,y;

void main (void)//主函数

{

        unsigned int CYCLE=400,PWM_LOW=0;//定义周期并赋值

        while (1)         //主循环

        {

 

/*--------整排LED灯呼吸---------*/

                

                Delay1(150);                                                                 //加延时,可以看到熄灭的过程(下面程序同理)

                for(PWM_LOW=1;PWM_LOW                        { 

                                P1=0x00;                                        

                                Delay(PWM_LOW);

                                P1=0xff; 

                                Delay(CYCLE-PWM_LOW);

                        }

                P1=0xff;                                                                                

                for(PWM_LOW=CYCLE-1;PWM_LOW>0;PWM_LOW--)         //与逐渐变亮相反的过程

                        {

                                   P1=0x00;                                                        //点亮LED 

                                   Delay(PWM_LOW);

                                   P1=0xff;                                                        //熄灭LED

                                  Delay(CYCLE-PWM_LOW);                                //主循环中添加其他需要一直工作的程序,延时长度,600次循环中从599减至1

                        }

 

}

}


关键字:LED灯组  呼吸灯 引用地址:基于LED灯组的呼吸灯的设计

上一篇:51单片机易错点
下一篇:基于PWM控制直流电机调速的设计

推荐阅读最新更新时间:2024-11-11 14:07

PWM --呼吸灯
呼吸灯最早见于苹果的电脑,近年来,在各种手机上也频频出现。 呼吸灯是很简单的东西,用一片 555,搭成一个多谐振荡器,再用 RC 电路滤成锯齿波,再驱动 LED 就可以了。 LED 在锯齿波的控制下,逐渐的由亮到暗、再由暗到明的周期性变化,看起来就好像是在呼吸。 555 电路,调整起来比较困难,不如使用单片机来制成呼吸灯,可控性较强。 用单片机来制作呼吸灯,电路很简单,也不过就是在单片机的引脚上,连接一个 LED 和一个电阻而已。 只是呼吸灯需要用 PWM 波形来驱动,编程时,稍稍麻烦一点。 在上一篇博文中,做而论道已经介绍了使用按键来调整占空比的参数,进而控制 LED 亮度的方法。 现在,不再用人工调整了,而是让单
[单片机]
PWM --<font color='red'>呼吸灯</font>
stm32 PWM呼吸灯
使用定时器产生PWM输出,PWM就像是Arduino的~输出引脚,电压是可以控制的, PWM的原理:通过调节脉冲宽度来调节电压,它把时间拆成很多个时间点,通过控制时间点的开关,平均出来想要模拟的电压,官方一点就是:对外输出脉冲可调节的方波信号,信号的频率是由自动重装寄存器ARR的值决定,占空比是由比较寄存器CCR的值决定 stm32 的pwm模式根据计数器CNT的计数方式,可分为边沿对齐模式和中心对齐模式 PWM边沿对齐模式:当TIMx_CR1寄存器中的DIR位为低时执行递增计数,计数器CNT从0计数到自动重载值(TIMx_ARR寄存器的内容),然后重新从0开始计数并生成计数器上溢事件。 PWM中心对齐模式:在中心对齐模式
[单片机]
STM32F407ZET6 关于用PWM(做出呼吸灯)详解
说明:本作者亲测代码在板子上可用。 1、PWM定义 Pulse Width Modulation:脉冲宽度调制(PWM) 脉冲:频率 ,方波 脉冲宽度:占空比,高电平的宽度 :在同一个时间内,高电平所占比例 频率与周期:f = 1/T f:频率(主频) T:周期 2、用途 控制输出的电压和电流 灯光亮度的控制 直流电机速度的控制 3、分析PWM产生与重点 (1)分析PWM产生(看图示PWM) (2)区别PWM1与PWM2模式(STM32F4xx中文参考手册 433页) (3)高低电平极性区别(STM32F4xx中文参考手册 457页) 4、PWM库函数开发流程 (1)使能定时器14和相关IO口时钟。
[单片机]
51单片机呼吸灯
#include #define uint unsigned int sbit led1=P2^0; void delay(uint z) { while(z--); } void main() { int i; while(1) { for(i=0;i 600;i++) { led1=0; delay(i); led1=1; delay(1000-i); } led1=0; for(i=600;i 0;i--) { led1=0; delay(i); led1=1; delay(600-i); } } }
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved