推广 热搜: 广场  Java  app  Word  营业  微信公众号  北京代理记账  商城  代理记账  商标交易 

嵌入式系统按键控制led实验心得 怎样用STM32点亮LED灯?怎样用STM32让LED闪烁?

   2023-04-26 企业服务招财猫170
核心提示:怎样用STM32点亮LED灯?怎样用STM32让LED闪烁?对于单片机编程而言,点亮LED是单片机编程的入门操作。对于STM32,本人习惯使用寄存器操作,所以本文将以KEIL4.12作为开发环境,以寄

怎样用STM32点亮LED灯?怎样用STM32让LED闪烁?

对于单片机编程而言,点亮LED是单片机编程的入门操作。

对于STM32,本人习惯使用寄存器操作,所以本文将以KEIL4.12作为开发环境,以寄存器操作试验为编程思路讲解。

先创建一个工程名为LED_Project,在keil的右侧的工程窗口,选中项目,鼠标右手单击,出现如下图所示

选择Device项,选择对应型号,

在工程中添加对应的寄存器版本的支持文件,因只需要LED相关的寄存器操作,则只需要RCC,GPIO的固件库文件,

创建main.c文件,并包含#includeltstm32f10x_lib.hgt头文件

首先我们假设当PA4引脚为高电平时,LED灯亮,为低电平时,LED等灭,

设置LED的宏定义,如下:

#defineLED_ONGPIOA-gtODR|(1ltlt4)

#defineLED_OFFGPIOA-gtODRamp~(1ltlt4)

定义一个LED的GPIO初始化函数,

如上图所示,

RCC-gtAPB2ENR|1ltlt2是PA端口的时钟使能

我们使用PA4作为LED输出控制端口,配置PA4作为推挽输

设置led灯1秒钟亮灭一次,俗称呼吸灯函数如下:

设置LED灯亮灭时间渐变,函数如下图所示

如上图所示,函数中使用for循环,完成一个led闪烁频率从最快10ms间隔闪烁一次,渐渐增大时间,最后到1S闪烁一次,再逐渐减小间隔时间,闪烁频率加快。

LED闪烁的实现效果还可以进行设计,大家可以自由的进行发挥代码的魅力和能力

以上是问题的粗略解答,难免会有遗漏

希望大家留言,点赞,转发,关注

海迪拉特led灯怎么样?

海迪拉特led灯质量好

海迪拉特led灯还是很不错的不仅专业做灯,产品质量也有保证,创建于2015年,自创建以来,海迪拉特品牌以全新的管理模式,完善的技术,周到的服务,卓越的品质为生存根本,坚持用自己的服务去打动客户,深受广大客户和消费者的青睐。

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
推荐图文
推荐资讯
点击排行
合作伙伴
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  冀ICP备2023006999号-8