精华内容
下载资源
问答
  • 呼吸灯原理图

    2015-10-10 16:47:21
    呼吸灯原理仿真图,基于proteus的仿真原理图
  • 本文主要讲了呼吸灯电路设计原理,希望对你的学习有所帮助。
  • 本文主要为lm358呼吸灯简单电路,希望对你的学习有所帮组。
  • ne555呼吸灯电路(一) 这是一个用NE555制作的呼吸/脉冲LED灯电路。这种LED呼吸灯变得非常的流行。这个电路工作在12V的电路中。我们的电脑上的电源为5V,通过普通的升压电路将5V升压到12V也可以让电路工作。 该...
  • 呼吸灯原理

    千次阅读 2020-10-15 11:38:48
    1.呼吸灯原理分析:模拟人体呼吸,吸气和呼气各占1.5S,人眼的图像滞留时间0.04s(1/24帧画面),按最快0.04s算,就是40ms。亮0.02S,灭0.02s,人眼看到的应该是一直亮(可以实验)。 2.呼吸灯程序设计:就是改变这40...

    1.呼吸灯原理分析:模拟人体呼吸,吸气和呼气各占1.5S,人眼的图像滞留时间0.04s(1/24帧画面),按最快0.04s算,就是40ms。亮0.02S,灭0.02s,人眼看到的应该是一直亮(可以实验)。

    2.呼吸灯程序设计:就是改变这40ms中,亮和灭所占的百分比(40ms相对不柔和,20ms效果柔和)。

    亮的百分比多,人眼看到的就亮,反之就是暗(实验,为了提高呼吸灯的柔和效果,采用设置20ms一个周期,20ms内调整亮和灭的比例)

    因此程序设计:1.5S需要1500/20=75个周期,75个周期中,亮度百分比有0%增长到100%,因此每个周期增长时间为20ms/75=266us(点亮)。熄灭的原理,正好相反,熄灭时间增长。程序中需要两个循环,一个用来点亮一个用来熄灭。 程序要灵活设计,能够调整呼吸时间的长短,1.5s这个参数。可以调整柔和度,可以调整40ms这个周期参数,这样就实现了呼吸灯的灵活调整。

    展开全文
  • STM32呼吸灯原理

    千次阅读 2020-09-16 21:48:49
    呼吸灯原理其实是利用pwm(脉冲宽度调节)技术,通过改变占空比来实现呼吸灯,占空比是指高电平除以总的周期, 下面直接上代码 int xxx=20000; while(1) { for(i=0;i<xxx;i++) { GPIO_ResetBits(GPIOF,GPIO_Pin_...

    前段时间学习stm32的时候就做过呼吸灯实验,浏览了一些博客后,做下总结
    呼吸灯原理其实是利用pwm(脉冲宽度调节)技术,通过改变占空比来实现呼吸灯,占空比是指高电平除以总的周期,
    下面直接上代码
    int xxx=20000;
    while(1)
    {
    for(i=0;i<xxx;i++)
    {
    GPIO_ResetBits(GPIOF,GPIO_Pin_10);
    delay(xxx-i);
    GPIO_SetBits(GPIOF,GPIO_Pin_10);
    delay(i);
    }
    for(i=0;i<xxx;i++)
    {
    GPIO_ResetBits(GPIOF,GPIO_Pin_10);
    delay(i);
    GPIO_SetBits(GPIOF,GPIO_Pin_10);
    delay(xxx-i);
    }
    delay(100);
    }

    还有一种方法是使用灯引脚用作为定时器复用功能,然后初始化定时器输出功能为pwm,再通过修改CCR1改变占空比。
    下面上程序,
    定时器程序
    GPIO_InitTypeDef aaa;//GPIO初始化结构体
    TIM_TimeBaseInitTypeDef bbb;
    TIM_OCInitTypeDef ccc;

    //0、时钟使能
    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);//PF9对应的时钟
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM14,ENABLE);
    
    //1、初始化需要用到的模块
    aaa.GPIO_Pin = GPIO_Pin_9;//PF9
    aaa.GPIO_Mode = GPIO_Mode_AF;//复用功能  因为pF9等会要被用作定时器输出功能
    aaa.GPIO_Speed = GPIO_Fast_Speed;//引脚速度选择
    aaa.GPIO_OType =  GPIO_OType_PP;//推挽输出 GPIO_OType_OD 开漏
    aaa.GPIO_PuPd  = GPIO_PuPd_NOPULL;//选择浮空 无上下拉
    GPIO_Init(GPIOF,&aaa);//LED1初始化
    
    	
    //2、初始化定时器模块---设置PWM周期 计数器+预分频器+设定值
    bbb.TIM_Prescaler = 84-1;//1us/脉冲
    bbb.TIM_Period = 1000-1;
    bbb.TIM_CounterMode = TIM_CounterMode_Up;
    bbb.TIM_ClockDivision = TIM_CKD_DIV1;
    TIM_TimeBaseInit(TIM14,&bbb);
    
    //3、将指定的引脚用作为某个复用功能
    GPIO_PinAFConfig(GPIOF, GPIO_PinSource9, GPIO_AF_TIM14);//
    
    //4、初始化定时器14的输出功能模块--根据通道 OC1--CH1  OC2--CH2
    ccc.TIM_OCMode = TIM_OCMode_PWM1;//PWM模式1  PWM模式2
    ccc.TIM_OCPolarity = TIM_OCPolarity_High;//TIM_OCPolarity_Low	
    ccc.TIM_Pulse = 500;//一开始是1000的一半----调节占空比的CCR1
    ccc.TIM_OutputState = TIM_OutputState_Enable;//输出使能
    TIM_OC1Init(TIM14,&ccc);
    
    //开启自动重载载寄存器的使能--TIM  开启定时器ARR寄存器缓冲
    TIM_ARRPreloadConfig(TIM14,ENABLE);
    
    
    //6、开启CCRx的缓冲 
    TIM_OC1PreloadConfig(TIM14, TIM_OCPreload_Enable);
    
    
    //7、开启定时器13
    TIM_Cmd(TIM14,ENABLE);
    GPIO_ResetBits(GPIOF,GPIO_Pin_9);//复位PF9  点灯
    

    主程序

    while(1)
    {
    //呼吸灯
    for(i=0;i<1000;i++)
    {
    TIM14->CCR1=i;

    		delay(1);
    	}
    	for(;i>=0;i--)
    	{
    		TIM14->CCR1=i;
    		
    		delay(1);	
    	}
    

    }

    以上就是我个人对呼吸灯实验的总结。

    展开全文
  • 呼吸灯原理简介 + FPGA实现呼吸灯

    千次阅读 2020-02-11 23:15:21
    呼吸灯原理简介 + FPGA实现呼吸灯 所谓呼吸灯,就是是指灯光在微电脑的控制之下完成由亮到暗再由暗到亮的逐渐变化,感觉好像是人在呼吸,主要用于起通知提醒的作用。 本文简要介绍一下呼吸灯的原理,最后并附上FPGA...

    呼吸灯原理简介 + FPGA实现呼吸灯

    所谓呼吸灯,就是是指灯光在微电脑的控制之下完成由亮到暗再由暗到亮的逐渐变化,感觉好像是人在呼吸,主要用于起通知提醒的作用。
    本文简要介绍一下呼吸灯的原理,最后附上FPGA的呼吸灯Verilog HDL代码。希望能给各位读者些许帮助。

    呼吸灯的效果是灯逐渐由暗变亮再逐渐由亮变暗周而复始像人在呼吸一样。大家可能会想到如果能实现逐渐增加电压再逐渐减小电压就能轻松实现。但是FPGA的引脚电压只有“0”和“1”两个等级。因此通过FPGA引脚实现“正弦波式”信号输出是不现实的。所以事实上都是通过改变引脚单位时间内高电平的输出时间来实现呼吸灯,也就是让FPGA引脚输出一系列PWM波信号并不断改变PWM波的占空比。

    呼吸灯分为两个阶段:
    第一阶段:由暗到亮。就是输出的一系列PWM波占空比由0%到100%以1%为间隔递增,共100个周期PWM波。
    第二阶段:由亮到暗。就是输出的一系列PWM波占空比由100%到0%以1%为间隔递减,共100个周期PWM波。
    注意:
    有两个100:一个100为占空比100%;另一个100为由0%到100%或100%到0%需要100个周期PWM波。

    FPGA呼吸灯代码Breath_LED.v:

    /*************************************************
    // 文件说明:      led呼吸灯代码
    // 创 建 人:     mnWu522
    // 日期:         2020-2-11
    // 修 改 人:                     
    // 修改日期:     20xx-xx-xx
    *************************************************/
    module Breath_LED(
    	input clk,
    	output reg led
    );
    
    reg [12:0]cnt1;
    reg [8:0]cnt2;
    reg [8:0]cnt3;
    reg flag;
    initial flag <= 0;
    initial cnt1 <= 0;
    initial cnt2 <= 0;
    initial cnt3 <= 0;
    
    always @(posedge clk)
    begin
    	if(cnt1 == 5000)begin
    		cnt2 <= cnt2 + 1;
    		cnt1 <= 0;
    	end else begin
    		cnt1 <= cnt1 +1;
    	end
    
    	if(cnt2 == 99)begin
    		cnt3 <= cnt3 + 1;
    		cnt2 <= 0;
    	end
    
    	if(cnt3 == 99)begin
    		flag <= ~flag;
    		cnt3 <= 0;
    	end
    
    	if(cnt2 >= cnt3 && flag == 0)begin
    		led <= 1;
    	end else if(cnt2 <= cnt3 && flag == 0)begin
    		led <= 0;
    	end else if(cnt2 >= cnt3 && flag == 1)begin
    		led <= 0;
    	end else if(cnt2 <= cnt3 && flag == 1)begin
    		led <= 1;
    	end
    end
    
    endmodule
    

    代码讲解:
    该代码实现一个2s的呼吸灯,1s由暗到亮,1s由亮到暗。
    由第二个100得一个PWM波周期为1s/100=10ms;
    由第一个100得1%占空比为10ms/100=100us;
    cnt1加到5000是因为本代码默认时钟为50MHz,5000/50000000Hz=100us,可根据FPGA实际情况自行修改。

    展开全文
  • LED灯带控制器原理图

    2021-01-19 19:32:32
    led灯带控制器是一种发光二极管,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光...  led控制器线路图原理  led控制器线路由电源电路、脉冲发生器、控制电路和LED显示电路组成
  • 最终所要实现的效果:当按下A键对应A亮,按下B键对应B亮,按下C键对应C亮,按下D键对应D亮。 就选四个键,多了自己写,原理都一样。 原理支撑:对于嵌入的LED,低电平亮,高电平灭(这个大部分这样,实际...

    51之旅的第一步,亮灯。但我们不仅仅只是亮一个灯就够了,我们亮就要亮出花样出来,接下来我来说几种常见的形式。

    (一)按键亮灯

    最终所要实现的效果:当按下A键对应A灯亮,按下B键对应B灯亮,按下C键对应C灯亮,按下D键对应D灯亮。

    就选四个键,多了自己写,原理都一样。

    原理支撑:对于嵌入的LED,低电平亮,高电平灭(这个大部分这样,实际情况不放心可以自己测一下,分别给个高低的电平看看那个亮)。对于独立按键来说,当按键按下,按键所接对应引脚变为低电平。

    接线:LED:L1接P1.0,L2接P1.1,L3接P1.2,L4接P1.3。按键:K1接P0.0,K2接P0.1,K3接P0.2,K4接P0.3。

    好了,原理跟接线都完成了,接下来思路就是:当K1按下时,P0.0变成低电平,此时P1.0应变位低电平,L1亮。即实现了按下K1时L1亮。此时问题就转化成了判断P0.0是否为低电平,实现很简单,没错,用个if语句足以。

    sbit p00 = P0^0;
    if(p00 == 0){
    }

    这里需注意一点,为了减少误触的风险,应当设置防抖动。所以最后一个完整过程的代码实现应为:

    sbit p00 = P0^0;
    sbit p10 = P1^0;
    if(p00 == 0){
        delay_ms(10);
        if(p00 == 0){
            p10 = 0;
        }
    }

    注意,上面的delay代表延时,这个函数得自己写。
    带上头文件,最后得完完整整得程序应为:

    #include <reg51.h>
    
    sbit p00 = P0^0;
    sbit p10 = P1^0;
    
    void delay_ms(unsigned int n)
    {
     int i,y;
     for(i=n;i>0;i--)
      for(y=114;y>0;y--);
    }
    
    void main()
    {
    	while(1)
    	{
    	if(p00 == 0){
    	    delay_ms(10);
    	    if(p00 == 0){
    	        p10 = 0;
    	    }
    	}
    	}
    }

    四个的话,改变引脚重复四次就可以了。我就不多说了。

    接下来,进行下一个,跑马灯。

    (二)跑马灯

    最终效果:当第一个灯亮,其余灯灭,接着第二个灯亮,同时第一个灯灭,接下来是第三个····当最后一个灯亮完,重复整个过程,再来一遍。

    原理支撑:灯亮的原理同上,emmm,好像只要说这个就行。

    接线:讲L1-L8对应接在P1.0-P1.7上。

    实现上述过程,主要是通过位运算来完成。通过左移右移来实现灯灭灯亮。
    在这之前介绍一种用法:

    P1 = 0xfe

    上面代表着,将P1的第一位置为0,也就是P1.0为0,其余位置为1。

    有了上面的基础,这我也不多说,大概差不多,我直接给出完整的程序:

    #include <reg51.h>
    
    void delay_ms(unsigned int n)
    {
     int i,y;
     for(i=n;i>0;i--)
      for(y=114;y>0;y--);
    }
    
    void main(void)
    {
     while(1)
     {
      P1 = 0xfe;
      delay_ms(1000);
      while(P1 != 0xf7)
      {
       P1 <<= 1;
       P1 |= 0x01;
       delay_ms(1000);
      }
      P1 = 0x7f;
      delay_ms(1000);
      while(P1 != 0xef)
      {
       P1 >>= 1;
       P1 |= 0x80;
       delay_ms(1000);
      }
     }
    }

    ok,跑马灯咋也完成了,接下来进行最后一项,呼吸灯。

    (三)呼吸灯

    最终效果:实现灯的由暗到亮并且由亮到暗的逐渐变化。

    原理:emmm,我们采用for循环的方式来进行呼吸灯的实现。两个for循环,总的循环次数不变。假设,总的循环次数为500,当亮为500时,暗为0;当亮为200时,暗为300;当亮为0时,暗为500。如果开始是从亮为0开始循环,即实现的是由暗到亮,如果从亮为500开始,即实现的是由亮到暗。然后你想象一下,两者一结合,是不是就是一个从暗到亮然后亮到暗的完整过程,然后不断重复此过程,好了,恭喜你,呼吸灯你完成了。

    接线:我们只实现一个灯的呼吸灯,所以我们只接一个脚就可以了。将L1接在P1.0上。

    感觉差不多,原理中应该说的很详细了,接下来接触程序:

    #include <reg51.h>
    
    sbit p10 = P1^0;
    
    void main(void)
    {
     int time = 200;
     int i,j=0;
     while(1)
     {
      p10 = 0;
      for(i=0;i<time-j;i++);
      p10 = 1;
      for(i=0;i<j;i++);
      j++;
      if(j == time)
      {
       while(j>0)
       {
        p10 = 0;
        for(i=0;i<time-j;i++);
        p10 = 1;
        for(i=0;i<j;i++);
        j--;
       }
      }
     }
    }

    上面的time是做一次呼吸灯要的时间,不可过长,也不可过短,这个自己改几个值试一下,找到最佳的值。导致这个原因是,晶振的不同。

    好了,呼吸灯现在你也完成了。到这基本也结束了。
    怎么样,是不是很开森。到这,这个LED基本你也完溜了。
    接下来,自己去找一些更好玩的玩法。

    展开全文
  • 心形灯原理图

    2013-04-23 09:48:47
    单片计算机即单片微型计算机。由RAM ,ROM,CPU构成,定时,计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。而51系列单片机是各单片机中最为典型和最有代表性的一种。...
  • 基于STM32的PWM呼吸灯系统设计(程序+原理分析)

    千次阅读 多人点赞 2019-06-18 16:10:14
    使用定时器4输出PWM来实现呼吸灯效果。 在人眼辨识能力范围内,调节LED亮的时间,达到LED灯的亮度不同。例:给低电平LED就亮,如果一个脉冲中全是低电平那么LED最亮,如果一个脉冲一半是高电平,一半是低电平,那么...
  • 按键控制呼吸灯

    2018-12-18 21:58:11
    用按键对呼吸灯进行控制,刚入手32单片机的小伙伴可以看看
  • 一、DAC 转换原理和技术指标 (一)分辨率 分辨率是指输入数字量的最低有效位(LSB)发生变化时,所对应的输出模拟量 (电 压或电流)的变化量。它反映了输出模拟量的最小变化值。 (二)线性度 线性度(也称非...
  • STM32F103 呼吸灯的实现

    千次阅读 2020-03-12 13:09:26
    呼吸灯,也就是让灯的亮度随着时间的变化而变化,而要实现这个变化,我们需要通过占空比来完成,也就是是通过PWM来实现这个操作,只要我们发送的频率足够的快,因为人眼的视觉暂留的原因,人是不能看到灯灭掉的,...
  • 使用环境(蓝色粗体字为特别注意内容) 1、硬件环境:LM358P ...网上资料说LM358做的呼吸灯效果不错,遂尝试了一下,发现的确很棒,应该是我做过的效果最好的呼吸灯了吧~~~,其实,LM358呼吸灯的原...
  • STM32F103入门 | 12.PWM实现呼吸灯

    万次阅读 多人点赞 2019-05-01 08:45:52
    在主函数中改变占空比完成呼吸灯 12.5 定时器引脚复用功能映射 根据以上重映像表,我们使用定时器3的通道2作为PWM的输出引脚,所以需要对PB5引脚进行配置。注意:如果使用PB4当做TIM3部分重映射的CH1输出,除了要...
  • 飞思卡尔MC9S12XEP100P,PWM呼吸灯,呼吸灯原理图,呼吸灯源程序,流水灯。使用飞思卡尔CodeWarrior编写软件。
  • STM32 pwm控制呼吸灯代码,编写呼吸灯闪烁的主程序代码
  • 这一篇使用通用定时器来输出不同占空比的PWM波控制LED,达到呼吸灯的效果。 原理设计 在系统板上,PB8用于控制LED,查阅STM32F103C8T6手册,可知PB8为定时器4的第3通道输出引脚: 因此需要对定时器4进行分析...
  • 单片机实训课程之:呼吸灯一.... 相关原理呼吸灯原理呼吸灯,是用LED 模拟呼吸的过程,即渐亮再渐暗再渐亮再渐暗„„如此往复,再利用LED 的余辉和人眼的暂留效应,看上去就和人的呼吸一样了。...
  • 运放电路呼吸灯电路

    千次阅读 2020-07-22 13:27:43
    本例是一款呼吸灯电路,工作时LED呈现出:暗---渐亮---亮---渐暗---暗---渐亮---亮---周期性变化效果。 电路: 该电路主要使用Lm358运放电路元器件和电容(电容实现电压信号的缓慢变化,从而实现,三极管相...
  • LM358呼吸灯小设计

    千次阅读 2021-01-26 23:13:54
    如果手机里面有未处理的通知,比如说未接来电,未查收的短信等等,呼吸灯就会由暗到亮的变化,像呼吸一样那么有节奏,起到一个通知提醒的作用。     功能介绍:呼吸灯,顾名思义,功能就是8个LED在电路的控制之...
  • 1、基于单片机和PWM的呼吸灯设计培训讲师:类级别:设置米名称:设定计划期间:设置米点:在时间之间:摘要信息该设计基于单片机的原理和接口,通过单片机I/O端口、c语言编程实现了LED变亮、类似人的呼吸变淡等效果...
  • 呼吸灯的实现

    千次阅读 多人点赞 2019-04-02 17:36:54
    之前有了解过呼吸灯的概念,也知道通过PWM来控制,但也只是停留在概念上面,以前也没有真正去做过这方面的,所以就在网上再搜罗了一番,感觉还是有些云里雾里的,最后只好自己静下心来,从原理上弄懂先。 了解到要想...
  • 本发明涉及一种控制呼吸灯呼吸效果的方法,尤其涉及一种利用函数曲线控制呼吸灯呼吸效果的方法。...用单片机控制呼吸灯的呼吸效果,其原理是通过控制PWM的占空比来完成对LED亮度的控制,PWM的占空比按照一定的规...
  • //晶振11.0592//灯光在单片机控制之下完成由亮到暗的逐渐变化,感觉像是在呼吸//本例在51hei-5型开发板上实现了一个数码管和一个led一起实现呼吸效果//文件下载:http://www.51hei.com/f/fxd.rar#includereg52.h>...
  • 一、实验原理我们在做呼吸灯的时候,我们首先得了解呼吸灯原理,我们得知道我们电压做的功,我们首先看张图51hei图片20201102205137.jpg (3.27 MB, 下载次数: 5)2020-11-2 21:07 上传这张图是自己手工画的,有点...
  • FPGA verilog HDL 呼吸灯及呼吸流水灯实现

    万次阅读 多人点赞 2018-08-02 16:51:16
    项目一:FPGA的呼吸灯实现 项目介绍:呼吸灯,就是想人们呼吸频率的一种led灯亮灭的一种表现形式。过程是慢慢变亮,然后变亮以后又慢慢变灭的一种过程。很多初学者会认为硬件逻辑语言怎么能控制电流的高低呢,让灯...
  • STM32之呼吸灯

    2021-05-19 13:48:42
    后来在网上看到了一个呼吸灯的电路,甚是复杂,根本看不懂,无奈之下放弃了呼吸灯的制作。在接触了STM32后,发现呼吸灯还是比较容易实现的,而且不需要什么硬件知识就可以完成。于是开始尝试做呼吸灯了。其实做...
  • 由运放组成的呼吸灯电路

    千次阅读 2018-01-18 22:41:07
    本例是一款呼吸灯电路,工作时,LED呈现出:暗---渐亮---亮---渐暗---暗---渐亮---亮---周期性变化效果来。 电路分解: 整个电路可分为两个部分: 一是由U1B以及外围元件组成的方波信号发生电路; 二是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,765
精华内容 706
关键字:

呼吸灯原理图