"); //-->
第一次写学习笔记,虽然刚刚开始,但会持之以恒。这次的实验是呼吸灯,因为刚开始学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 的步进的比值就是灯从暗到亮的时间,所以可以通过控制这两个参数,实现对呼吸灯亮度以及呼吸频率的控制。
继续学习,加油!
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。