精华内容
下载资源
问答
  • 单片机呼吸灯程序

    2011-12-07 22:02:53
    简单的单片机呼吸灯程序,并经过本人亲自测试。
  • 51单片机呼吸灯程序

    2013-04-25 12:30:29
    使用延时控制led的亮暗来达到呼吸灯的效果
  • 这个程序简单,能让你的led呼吸起来!很好用,希望能帮大家啊
  • 蓝桥杯单片机PWM呼吸灯程序,通过调节PWM值,改变灯的亮度,本程序以LED1为例,让其明白原理,应用其它地方就不难了。非常的银杏,非常的好用!
  • PIC单片机呼吸灯

    2015-05-22 12:37:25
    PIC单片机开发呼吸灯的课件资料,包括电路和源程序
  • 51单片机控制PWM的脉宽,实现手机呼吸灯效果,51单片机爱好者可以下载使用
  • 基于51单片机pwm控制的呼吸灯程序

    热门讨论 2011-11-04 21:39:24
    基于51单片机,通过定时器输出pwm波,全局变量控制占空比,达到led呼吸灯的目的。欢迎下载。
  • 1.用C51单片机实现花样流水,代码如下: #include <reg52.h> #define LED_A P1 //led所用的接口,是哪个口就写P几void delayms(){ unsigned char x = 0;  unsigned char i; unsigned char y = 0; while...

    1.用C51单片机实现花样流水灯,代码如下:

    #include <reg52.h>
    #define LED_A P1            //led灯所用的接口,是哪个口就写P几
    void delayms()
    {
    unsigned char x = 0;          
    unsigned char i;
    unsigned char y = 0;
    while(y < 0.001)             //定义led灯的切换的延时时间,越小越快。
    {                     //(y < 0.001);(x<100);(i<100)都可以修改
    x = 0;
    while(x<100)
    {
    i = 0;
    while(i<100)
    {
    i++;
    }
    x++;
    }
    y++;
    }
    }
    #define LED_NUM 8          //定义led灯的数量,可快速实现不同用途的修改;
    void main()
    {
    unsigned char k;
    unsigned char j;
    unsigned char LED_ALL[] = {0XFE,0XFD,0XFB,0XF7,0XEF,0XDF,0XBF,0X7F};      //led灯亮灭的十六进制数组;
    unsigned char LED_ALL_2[] = {0XFC,0XF3,0XCF,0X3F};
      while(1)
      {
        for(k=0;k<3;k++)                    //第一个for实现奇偶灯交叉闪烁三次,想闪烁几次就修改(K<3)中的数值;
        {
          LED_A = 0xAA;                      
          delayms();
          LED_A = 0x55;
          delayms();
        }
        for(k=3;k>0;k--)                //实现一个流水灯左右三次(从左到右再从右到左算一次);
        {
          for(j=0;j<LED_NUM;j++)        
          {
            LED_A = LED_ALL[j];
            delayms();
          }
          for(j=6;j>0;j--)
          {
            LED_A = LED_ALL[j];
            delayms();
          }
        }
        for(k=0;k<3;k++)            //实现前四个灯亮后四个灯灭,交叉闪烁3次,修改次数同上;
        {
          LED_A = 0xf0;
          delayms();
          LED_A = 0xf;
          delayms();
        }
        for(k=3;k>0;k--)              //实现两个灯依次流水3次;
        {
          for(j=0;j<4;j++)
          {
            LED_A = LED_ALL_2[j];
            delayms();
          }
          for(j=2;j>0;j--)
          {    
            LED_A = LED_ALL_2[j];
            delayms();
          }
        }
      }
    }

     

     

     

     

     

     

    2.实现第一个灯呼吸,由暗变亮,再由亮变暗,程序如下;

    #include <reg52.h>
    sbit LED1 = P3^0;
    void delay(unsigned int a)          //定义一个延时函数
    {
      while(--a);
    }
    void main()
    {
      unsigned int t,circle=800;          //定义变量,circle=800为led灯呼吸的间隔长短,数值越小,间隔越短。
      while(1)
      {
        LED1 = 1;
        for(t=1;t<circle;t++)
        {
          LED1 = 0;
          delay(t);          
          LED1 = 1;
          delay(circle-t);
        }
        LED1 = 0;
        for(t=circle-1;t>0;t--)
        {
          LED1 = 0;
          delay(t);
          LED1 = 1;
          delay(circle-t);
        }
      }
    }

    转载于:https://www.cnblogs.com/37cheng/p/11602798.html

    展开全文
  • 今天回答了一个关于用汇编语言控制51单片机产生PWM波实现呼吸灯效果的问题。结果好久不写程序,一时手生,出了不少错误,索性记录一下,也为自己的知乎账号增加的内容。要实现呼吸灯效果本质上是产生占空比可变的PWM...

    今天回答了一个关于用汇编语言控制51单片机产生PWM波实现呼吸灯效果的问题。结果好久不写程序,一时手生,出了不少错误,索性记录一下,也为自己的知乎账号增加的内容。

    要实现呼吸灯效果本质上是产生占空比可变的PWM波,大体思路如下:

    1. 用定时器1控制PWM的频率,我用的开发板板载晶振11.059MHz,近似为12MHz(因为51的定时频率是晶振的1/12,以12MHz计算比较容易),一个定时周期近似为1us,定时器初值设置为64536(16位模式,最大计数值65536),定时1000次,一个周期约为1ms,可生成1kHz频率的PWM。
    2. 用定时器0控制占空比,占空比从0到1再到0,周而复始。假设LED阳极通过限流电阻接VCC,阴极接单片机P2.7引脚,实现过程大致为:定时器1中断程序将P2.7置1,并启动定时器0,定时器0中断程序中将P2.7复位,并停止定时器0。
    3. 通过一个二进制位(20H.0)控制占空比变化方向,0减小,1增大,每次进入定时器0中断,首先判断20H.0,若为0,将定时器0的计数初值加1,若为1,将定时器0计数初值减1。加减操作后判断是否加到最大值(65535)或减到最小值(64536),若到达最大或最小值,20H.0取反。

    (也可以只用一个定时器产生1ms的时间基准,然后设一个变量进行计数,通过软硬结合的定时方法产生PWM)

    以下为用两个定时器纯硬件定时实现程序截图(不支持汇编语言,截图看起来比较好看)

    结尾处有源程序链接,提取码:6msi

    829cc446103dea0f47d09cd8cef6effb.png

    f7a3e8502c22ed4e8c2b2e49a7f1f260.png
    知乎视频www.zhihu.com
    51单片机汇编程序实现PWM呼吸灯pan.baidu.com
    展开全文
  • 用PWM来实现的功率变化,从暗到亮,从亮到暗~
  • 注:该51单片机led引脚为P2^ 0 - P2^7,实际代码按照引脚图实现。 代码如下: #include<reg52.h> typedef unsigned int uint; typedef unsigned char uchar; //--------------Delay-------------------- ...

    实现效果如图:
    在这里插入图片描述
    注:该51单片机led灯引脚为P2^ 0 - P2^7,实际代码按照引脚图实现。
    代码如下:

    #include<reg52.h>
    typedef unsigned int uint;
    typedef unsigned char uchar;
    //--------------Delay--------------------
    
    void Delay(uint t)
    {
    	while(--t);
    }
    
    //---------------main--------------------
    void main(void)
    {
    	 uchar LED;
    	 uint Time=600,i=0;
    	 LED=0xfe;
    
    	 while(1)
    	 {	
    		 
    		for(i=1;i<Time;i++)
    		{
    		//open LED
    			P2=LED;
    			LED=LED<<1;
    			if(LED == 0x00)	
    			{
    				P2=LED;				
    				Delay(i);
    			
    		//close LED
    				P2=~(LED);		
    				Delay(Time-i);
    			}
    		}
    		
    		
    		for(i=Time-1;i>0;i--)
    		{
    		//open LED
    			P2=LED;
    			LED=LED<<1;
    			if(LED == 0x00)	
    			{
    				P2=LED;				
    				Delay(i);
    		//close LED
    				P2=~(LED);		
    				Delay(Time-i);
    			}
    		}
    	}
    }
    			
    
    
    展开全文
  • 所谓的“呼吸灯”,就是通过程序控制led灯的闪烁过程,像呼吸一样有节奏。有亮度渐变的过程。 先来张效果图: 这图片有点大。。。。 这是未加修饰的样子,不过进行了简单的装饰后,就变身超级有爱...

     

    最近某人要过生日,自己也是闲的无聊,便想做个单片机的东西来送人,自己做的,起码也能代表自己的一片心意吧。

    所谓的“呼吸灯”,就是通过程序控制led灯的闪烁过程,像呼吸一样有节奏。有亮度渐变的过程。

     

    先来张效果图:

     

     

    这图片有点大。。。。

     

    这是未加修饰的样子,不过进行了简单的装饰后,就变身超级有爱的东西了

     

     

     

    制作过程:

     

    程序是我之前在9月份就找好的了,符上代码:

     

     1 //******************************
     2 //   51单片机模拟呼吸灯
     3 //     2012.9.23
     4 //      menglei
    5 // p0.0接一个LED灯,状态0为亮 6 //****************************** 7 8 9 #include<reg52.h> 10 #define N 2 //亮暗的速率 11 #define T 800 //PWM的周期 12 #define T1 1400 13 #define T2 900 14 //sbit led0=P0^0; 15 //====================== 16 void pwm(int x) 17 { 18 while(x--); 19 } 20 //====================== 21 22 void flash1(void){ 23 int t = 0; 24 char f = 0; 25 int count = 5;//5次,每个函数执行的次数 26 while(1){ 27 P0 = 0x00; 28 pwm(t); //Toff,亮的时间 29 //led0=1; 30 P0 = 0xff; 31 pwm(T-t+100);//Ton,暗的时间 32 if(!f) t+=N+1;//亮速率较快,模拟呼吸 33 else t-=N;//暗速率较慢 34 if(t>T) {f=1;t=T;}//超过最大值时,返回最大值,标志为暗 35 if(t<0) {f=0;t=0;}//超过最小值时,返回最小值,标志为亮 36 // count--; 37 } 38 } 39 void main() 40 { 41 42 while(1) 43 { 44 flash1(); 45 } 46 }


     

    程序不多,但是电路的制作的确很费时间和脑子,因为要考虑每条线的走线,还不能让线太过于繁琐

    这是中间的一部分,像那个显像管电视的样子  哈哈哈

    正面:

     

    调试时的走线:(不堪入目啊)

     

     

    最后的制作:

     

     

    转载于:https://www.cnblogs.com/menglei/archive/2012/12/02/2798728.html

    展开全文
  • STM32之呼吸灯程序

    2020-08-11 08:31:28
    听说呼吸灯是很久以前的事情了,那时候刚刚学习51单片机,没有单片机的基础。后来在网上看到了一个呼吸灯的电路图,甚是复杂,根本看不懂,无奈之下放弃了呼吸灯的制作。在接触了STM32后,发现呼吸灯还是比较容易...
  • 呼吸灯程序 breath.c

    2020-08-31 08:51:12
    单片机两种实用的呼吸灯程序,结构体和常用的方法,不占作MCU的系统时间,定时扫描就可以了调节LED点亮的时间和熄灭的时间。适合工程上用。
  • 单片机不用定时器做出呼吸灯的效果
  • msp430呼吸灯程序

    2018-09-13 22:04:37
    msp430单片机的一个简单程序
  • 程序为基于加强型51单片机内部的PWM输出功能设计的LED呼吸灯
  • 基于51单片机呼吸灯

    万次阅读 多人点赞 2019-01-20 10:46:27
    我们家里使用的是50Hz,一秒钟会亮灭50次,但是我们觉得是一直亮着的。 但是亮和暗的程度取决于发光和不发光所占时间的长短比例,但是亮和灭的持续时间不能超过1/24秒(视觉残留最长时间) 程序设...
  • 51单片机实现呼吸灯

    千次阅读 2019-11-20 08:28:26
    使用51单片机控制LED,实现其由暗变亮,再由亮变暗的渐变过程。 二、程序 #include <STC15F2K60S2.H> #include "MacroAndConst.h" sbit LED = P1^5; #define LED_ON() LED = 0; //LED亮 #define LED_OFF...
  • 程序是用51单片机通过PWM(脉冲宽度调制)方式控制LED,达到呼吸灯的效果。
  • 可调呼吸灯C程序

    2013-02-27 19:24:12
    51单片机控制LED灯,PWM输出,实现LED明暗调节;关键词:可调 呼吸灯 C程序
  • 51单片机实现流水呼吸灯

    千次阅读 2020-05-09 09:19:54
    这篇博客介绍下用定时器来产生占空比不同的方波,完成了呼吸灯的效果,同时可以实现多个led灯同时呼吸形成类似流水的效果。  主要用到定时器0来形成一个1ms的中断,每次进入中断服务程序会让小灯当前处于的周期加1...
  • 单片机程序设计1)呼吸灯[简易模拟PWM]2)蜂鸣器音乐3)几种简易流水灯方式3.效果展示1).实物电路顶层图2).实物电路底层图3).整体效果图 注:本文仅用于学习分享,分享自己DIY制作的多模式51单片机心形流水灯[纯...
  • ZigBee-CC2530单片机 - LED呼吸灯 程序源码 #include "ioCC2530.h" #define LED1 P1_0 // P1_0定义为P1_0 #define LED2 P1_1 // P1_0定义为P1_1 #define LED3 P1_3 // P1_0定义为P1_3 #define LED4 P1_4 // P1_0...
  • 创新放飞梦想,实践铸就未来 小黑上回说道stm32新建工程的操作(任意门:STM32新建工程(固件库版)【点击查看】(图一) 接下来我们讲stm32的点灯操作,点灯是学习任意一款单片机的入门级操作,就像一门编程语言的...
  • 一、材料准备BLE蓝牙模块/开发板一个;方便上手直接选择开发板,可从淘宝购买!...微信小程序源码链接:GitHub :https://github.com/Ai-Thinker-Open/AiTBxxForWeChatSTM32单片机示例代码:https://pan.baidu.com/s...
  • 程序名: 两键控制亮度 编写人: 编写时间: 2017年12月15日 硬件支持: STC12C2052 内部RC或外部12MHZ晶振 接口说明: 8个LED彩灯接P1口,按键接P3.7和P3.3 修改日志:   NO.1- /**************************...
  • 图片来源:百度图片这次给大家带来的是Proteus仿真之流水,流水作为单片机入门的实验课程,具有代表性意义。Proteus仿真软件是英国一家公司出品的EDA仿真软件,能仿真大多数单片机及外围电路。Proteus8.7版本...

空空如也

空空如也

1 2 3 4
收藏数 76
精华内容 30
关键字:

单片机呼吸灯程序