|
通常开发板上都只有一个用户按键,有时需要使用按键来执行多种操作,这就需要通过识别按键按下的时间长短来执行对应的操作,思路之一就是当按键按下时对一个变量执行++操作,然后通过这个变量的值来区分按键按下时间的长短。2 _- b) X7 B% ]3 m1 }7 _& j / l* m+ N* M. i$ L4 f; \ 以前我都是在中断函数中来实现这个过程,但在STM32C542RC的项目中,我竟然没有找到中断函数所处的位置,在中断回调函数中又无法判断按下时间的长短,所以这次只要在主循环中通过轮询来实现,下面是代码的截图:
: B: B) T6 D1 a 本次实验是通过按键来调整PWM呼吸灯的明暗周期,短促按键LED的明暗周期加快,正常按键则明暗周期减慢。
使用者操作时,稍加练习就可以轻易实现至少三种按键状态,我曾经测试过可以识别五种按键状态。 |
【NUCLEO-C562RE】MNIST 数字识别
【STM32C5教程】(9)DAC 模拟量信号输出实验
STM32C543RC开发板Stop、Sleep和standby模式测试
【STM32C5教程】(10)LPUART DMA 通信实验
【STM32C5教程】(8)ADC 模拟量数据采集实验
【STM32C5教程】(7)TIM1 互补 PWM 输出实验
【STM32C5教程】(6)定时器 PWM 输出实验
【STM32C5教程】(5)定时器周期中断实验
【STM32C5教程】(4)GPIO 外部中断实验
【STM32C5教程】(3)GPIO 按键输入实验
微信公众号
手机版