【呼吸灯程序---小记】

2020-01-20 19:09发布

本帖最后由 leiyin 于 2014-10-31 13:37 编辑

看到论坛里边有个短小的呼吸灯程序,就尝试了尝试,我这边延时配置的不好,呼吸效果不是很好,就打算用定时器写个程序测试一下,学习单片机这么久了,一直也没写个呼吸灯程序。

呼吸灯,由暗渐变亮,再由亮渐变暗,类似呼吸。

查了一下,正常吸气1.5s 呼气 1.5s;正常人每分呼吸16-18次,儿童20次。

看代码吧,代码比较烂,发上来目的两个一是给自己来个小记,二是交流学习!

代码如下:

粘贴的是部分代码,其中LED是一个灯端口,变量有cnt,TG1,flag,led_t这些均为静态变量或者全局变量,这部分代码放在定时器里边,定时器中断设置成200us中断一次!

     1. 控制改变占空比的节奏,修改cnt可以调节快慢,调节TG1的上下范围即调节占空比
   

  1.        cnt++;
  2.         if(cnt>50)
  3.        {   
  4.             cnt=0;
  5.             if(flag)
  6.            {
  7.                 TG1++;
  8.                  if(TG1>=100)
  9.                  {
  10.                       flag = 0;
  11.                 }
  12.            }
  13.            else
  14.            {
  15.                  TG1--;
  16.                  if(TG1<=1)
  17.                 {
  18.                       flag = 1;
  19.                 }                       
  20.            }
  21.         }
复制代码

        2.控制的是占空比PWM   
      

  1.         led_t++;
  2.         if(led_t<TG1)
  3.         {
  4.                 LED = 1;                    
  5.         }
  6.         else if((led_t>=TG1)&&(led_t<100))
  7.         {
  8.                 LED = 0;
  9.         }
  10.         else
  11.         {
  12.             led_t = 0;
  13.         }
  14.         
复制代码
     
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
23条回答
suda2008wuli
1楼-- · 2020-01-23 12:52
楼主加油!
hemingjing
2楼-- · 2020-01-23 14:00
这个调节是线性的PWM波形,用起来感觉不是很平滑,正在像办法改善。。。不过谢谢楼主这么好的资源
leiyin
3楼-- · 2020-01-23 14:03
hemingjing 发表于 2014-12-11 16:54
这个调节是线性的PWM波形,用起来感觉不是很平滑,正在像办法改善。。。不过谢谢楼主这么好的资源 ...

期待你的改进!
lxa0
4楼-- · 2020-01-23 18:28
 精彩回答 2  元偷偷看……
sidu320
5楼-- · 2020-01-23 22:14
dz20062008 发表于 2014-11-2 01:38
我用6T的单片机24MHZ的晶体做实验还是一眨一眨的,太慢了吗???谁有1T的单片机试试?楼主晶振是多少?于 ...

F0标志位,你不是大牛也绝非小菜啊。能加个好友吗?我是小菜。

一周热门 更多>