stm32呼吸灯

#include "led_key.h"

int main(void)
{
	led_configuration();
	int i;
	int cycle = 2000;
	
	while(1)
	{
		for( i=0;i<cycle;i++)//一个周期内,亮灯占比逐渐变大,灯渐亮
		{
			GPIO_SetBits(GPIOA,GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4);
			delay(i);//随 i 变大,灯亮的时间加长
			GPIO_ResetBits(GPIOA,GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4);
			delay(cycle-i);//随 i 变大,灯灭的时间变短
		}
		for( i=0;i<cycle;i++)//一个周期内,灭灯占比逐渐变大,灯渐暗
		{
			GPIO_ResetBits(GPIOA,GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4);
			delay(i);//随 i 变大,灯灭的时间加长
			GPIO_SetBits(GPIOA,GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4);
			delay(cycle-i);//随 i 变大,灯亮的时间变短
		}
	}
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Keil是一种广泛使用的集成开发环境(IDE),常用于嵌入式系统开发,而STM32则是一款由STMicroelectronics(意法半导体)推出的32位ARM Cortex-M系列微控制器。 要控制STM32呼吸灯,我们可以通过Keil来编写程序。首先,我们需要在Keil中创建一个新的项目,并选择适用于STM32的设备。然后,我们需要引入相应的外设库和头文件,例如GPIO(通用输入输出)库和延时(Delay)库。 接下来,我们可以使用GPIO库配置一个引脚作为输出,并设置为PWM(脉冲宽度调制)模式。PWM是一种通过控制信号的脉冲宽度来模拟模拟信号的技术,可以用来实现呼吸灯效果。 在程序中,我们可以使用一个循环来逐渐增加和减少PWM的占空比,从而实现呼吸灯效果。占空比是指PWM信号中高电平占总周期的比例,决定了亮度的变化。 为了呼吸灯效果更加平滑,我们可以在每次占空比变化之间插入一定的延时。延时库可以帮助我们实现这个功能。 最后,我们可以将程序烧录到STM32微控制器中,然后观察呼吸灯效果。程序会循环执行,使呼吸灯的亮度逐渐增加和减少。 总结起来,通过Keil编写程序来控制STM32呼吸灯需要以下几个步骤:创建项目、配置引脚和外设库、编写程序来实现呼吸灯效果、烧录程序到STM32微控制器中,并观察呼吸灯效果。这样就能够使用Keil控制STM32呼吸灯了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值