0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

第七章独立按键控制LED

撞上电子 ? 2023-06-21 17:41 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第一节按键的基本知识

按键的最基本的知识就是消抖,它分为软件消抖和硬件消抖。其中,软件消抖流程为:当检测到按键按下时,启动一个延时,持续一段时间(通常几毫秒);在延时结束后,再次读取按键状态;如果按键仍然处于按下状态,那么可以确定按键的状态为按下;否则,可以确定按键的状态为释放;软件消抖通过延时等待按键电平的稳定来避免误触发。如下图:

dc32ce60-1017-11ee-a579-dac502259ad0.png


硬件的消抖方案有很多种:在按键引脚与微控制器之间添加外部电路元件,如电容电阻或Schmitt触发器等,这些电路元件可以滤除按键的电气噪音,提供更稳定的电平信号

蓝桥杯物联网开发板并没有在硬件上处理,所以只能通过软件的方式来消抖。

第二节硬件解读

dc45437e-1017-11ee-a579-dac502259ad0.png

从图中我们可以看出,按键的引脚连接到PC14,所以我们只需要读取PC14的电平就可以了。当按键被按下,按键的1,4和2,3导通,按键的1,4接地,导致R12也接地,所以PC14也就是低电平。由此我们知道,当按键按下时,PC14为低电平;反之为高电平。

第三节 CubeMX配置

第一步:配置PC14为输入,并配置上拉(下图4处)和标签(下图5处)。

dc50a3c2-1017-11ee-a579-dac502259ad0.png

第二步:配置LD5,如下图:记得将初始化电平设置为高电平(下图5处),这样最开始LD5是熄灭状态。

dc6aa682-1017-11ee-a579-dac502259ad0.png

第四节 MDK代码

dc865e72-1017-11ee-a579-dac502259ad0.png

结合上图,可以看出需要20ms的消抖时间。所以MDK代码如下:

dc9528b2-1017-11ee-a579-dac502259ad0.png

第五章 实验现象

注意:

1,下载程序的时候,请选择A开发板。

现象:按下USER,LD5翻转一次。

来源:撞上电子微信公众号

版权:东莞市东城墨竹公子电子工作室

日期:2023.06.06

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    242

    文章

    23913

    浏览量

    676903
  • 控制
    +关注

    关注

    5

    文章

    1023

    浏览量

    124055
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【「DeepSeek 核心技术揭秘」阅读体验】--全书概览

    DeepSeek对人工智能技术格局的一个影响 第六 DeepSeek开源技术剖析 第七章 大模型发展未来展望 全书图文并茂,对专业技术属于进行了讲解,也有对流程、框架、参数的展示,结合案例与应用方面的代入,是非常好的对DeepSeek较深入了解的书籍,后面与大家多多分享
    发表于 07-21 00:04

    ZX8002D LED触摸调光集成芯片数据手册

    ZX8002D台灯按键三档调光IC芯片,单键调光IC输入电压2.5-5V,三档亮度调节,一路灯串输出,一个按键控制按键三档亮度调节。多用于LED台灯,
    发表于 07-07 10:16 ?3次下载

    第七章 串口通信

    本章介绍了W55MH32的串口通信,讲述了数据通信基础概念、串口通信协议和特性与功能,以及DMA在串口中用于高速数据传输场景,并进行了多种模式的程序设计与下载验证。
    的头像 发表于 05-26 17:00 ?470次阅读
    <b class='flag-5'>第七章</b> 串口通信

    第六 GPIO输入——按键检测

    本篇文章讲述了如何在W55MH32上实现按键输入检测,以及按键输入检测的注意事项、实现方式和代码讲解等。掌握了按键检测方式之后,我们就可以用按键控制我们想要实现的其他功能啦。
    的头像 发表于 05-22 16:41 ?423次阅读
    第六<b class='flag-5'>章</b> GPIO输入——<b class='flag-5'>按键</b>检测

    如何把 电位器旋钮控制改为面板或按键控制

    ),所以希望能找到人帮忙把电位器调速旋钮改为面板或按键控制控制器或调速器,如下图。 。这款控制器可以在面板上设置/控制电机转速,但是这款控制
    发表于 05-18 07:40

    OpenHarmony应用开发精品课程第七期来啦

    OpenHarmony应用开发精品课程第七期来啦
    的头像 发表于 04-15 14:15 ?289次阅读
    OpenHarmony应用开发精品课程<b class='flag-5'>第七</b>期来啦

    基于51/32单片机按键控制步进电机正反转,A4988驱动

    基于51/32单片机按键控制步进电机正反转,A4988驱动
    发表于 04-14 15:05 ?5次下载

    【紫光同创盘古PGX-Lite 7K教程】——(盘古PGX-Lite 7K开发板/PGC7KD-6IMBG256第七章)数字钟实验例程

    :1S 计时控制,与前面的实验中需要 计时功能模块实现方式一致,注意此处计时的周期为 1S 即可;计时过程中进 位控制;进位控制有四处需要进位: 2、计时校准功能:通过对应按键控制
    发表于 02-12 11:04

    洲明科技荣获第七届天鸽奖“年度影响力企业奖”

    近日,第七届“天鸽奖”颁奖典礼在洲明福永总部XR虚拟棚圆满落幕。
    的头像 发表于 12-17 11:05 ?678次阅读

    告别繁琐按键,双触摸LED让你轻松调光调色!

    方案开发双触摸按键LED单/双色温驱动控制方案-ZHUOLIANWEIKEJI-定制服务品质保障技术领先在现代家居与照明设计中,便捷性、智能化以及个性化需求日益增长。传统的按键控制方式
    的头像 发表于 12-07 01:08 ?754次阅读
    告别繁琐<b class='flag-5'>按键</b>,双触摸<b class='flag-5'>LED</b>让你轻松调光调色!

    《DNESP32S3使用指南-IDF版_V1.6》第七章 分区表

    第七章 分区表 分区表,主要是用来对ESP32外挂的SPI FLASH进行区域划分的一个表格,通过一个表格,可以根据多个不同的功能,将SPI Flash划分为不同的区域,方便开发者存储数据。本章
    发表于 12-03 15:15

    博世第七季“数据时代”活动圆满结束

    博世汽车电子事业部中国区第七季“数据时代”活动于2024年10月30日成功举办!
    的头像 发表于 10-31 14:07 ?674次阅读

    《DNK210使用指南 -CanMV版 V1.0》第七章 基于CanMV的MicroPython语法开发环境搭建

    第七章 基于CanMV的MicroPython语法开发环境搭建 前面章节中已经介绍了如何编译CanMV固件,并将编译好的CanMV固件烧录至Kendryte K210,本章将介绍如何在Windows
    发表于 09-13 09:30

    【xG24 Matter开发套件试用体验】通过按键控制LED

    点完灯了,来玩点花样,通过按键来点灯。 硬件 还是看这个图 按键有 BUTTON0(PB02)和BUTTON1(PB03) 软件 这里基于blink_baremetal 工程进行修改适配。 这里进行GPIO的配置,配置好两个led
    发表于 09-01 17:21

    【「ARM MCU嵌入式开发 | 基于国产GD32F10x芯片」阅读体验】+书籍整体概况

    案例为按键控制LED亮灭;第四介绍了中断和事件,中断包含嵌套向量中断控制器NVIC,EXTI外部中断/事件控制器以及EXTI外部中断处理的
    发表于 08-25 22:48