新闻  |   论坛  |   博客  |   在线研讨会
STM32学习笔记(1)呼吸灯
51门生 | 2016-01-24 01:02:45    阅读:918   发布文章

第一次写学习笔记,虽然刚刚开始,但会持之以恒。这次的实验是呼吸灯,因为刚开始学STM32,从GPIO开始入手,所以比较简单。

呼吸灯的主要程序:

int main(void)
{
  /*时间控制变量
  __IO u32 i;
 
  /*LED端口初始化*/
  LED_GPIO_Config();
 
  while(1)
   {
    for(i=0;i<0x00FFFF;i+=0x0000ff)
    {
      LED1(ON);
      Delay(i);
      LED1(OFF);
      Delay(0x00FFFF-i);
    }
    for(i=0;i<0x00FFFF;i+=0x0000ff)
    {
      LED1(ON);
      Delay(0x00FFFF-i);
      LED1(OFF);
      Delay(i);
    }
  }
}

上面两个循环分别控制呼吸灯的亮和灭,也就是产生了占空比连续改变的PWM波形。其中,i 的最大值用于控制灯亮到最大时的亮度,和完全黑暗时的时间;i 的最大值与i 的步进的比值就是灯从暗到亮的时间,所以可以通过控制这两个参数,实现对呼吸灯亮度以及呼吸频率的控制。

继续学习,加油!

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客