Image
Image

yellow555

+ 关注

粉丝 3     |     主题 40     |     回帖 469

stm32以中断方式扫描矩阵键盘
2024-4-8 14:10
  • ST MCU
  • 19
  • 1593
  最后在主程序中检查keyboard.active,若不为0,则表示有按键按下,此时需要做相应处理,并且将keyboard中的 ...  
  本函数用来确认X轴的键值。  
  引脚功能模式切换  
  增加了几次延时,作为键盘消抖的判断 确认不是误触发后,active置1,并相应的y值。 最后调用键盘扫描函数, ...  
  以Y4为例,列出一路中断如下:  
  代码编写 定义一个结构体,有按键触发时,active置1,x,y分别记录行列值,num是最后的键值。 ...  
  编程思路 1 X0~3配置为输出低电平 2 Y0~4配置为下降沿中断,但是芯片内部配置了上拉,所以无按键触发时不会 ...  
  cubemx配置 X0到X3这4个IO口配置为低电平输出,无上拉,无下拉,即推挽方式,速度为中 Y0到Y4这5个IO口配置 ...  
STM32F401的外部中断EXTI
2024-4-8 14:22
  • ST MCU
  • 18
  • 1124
  In this example, 2 EXTI lines (EXTI Line0 and Line15) are configured to generate an interrupt on eac ...  
  官方的代码例子 This example shows how to configure external interrupt lines.  
  编写中断服务函数 对应各个中断线分别有EXTI0_IRQHandler(), EXTI1_IRQHandler(), ... EXTI9_5_IRQHandler( ...  
  配置嵌套中断向量控制器NVIC  
  初始化中断线(EXTI线编号, 中断模式是中断还是事件, 触发方式是下降沿触发、上升沿触发还是任意电平触发, ...  
  使能SYSCFG时钟, 设置I/O口与中断线的映射关系  
  使能I/O口时钟, 初始化I/O口为输入  
  初始化的步骤  
  可以看到, 对于EXTI0到EXTI4(Line0到Line4), 都是单独的常量, 而Line5到Line9, Line10到Line15都是合用的. ...  
  ......  
  在stm32f4xx.h中, 有这些中断的常量, 注意: Line虽然是各自独立的, 但是IRQn不是, Handler也不是 ...  
  在stm32f4xx_exti.h中定义了0 - 23的中断线  
2
3
近期访客