其他分享
首页 > 其他分享> > RT1052+KPP矩阵键盘接口和systick延时

RT1052+KPP矩阵键盘接口和systick延时

作者:互联网

在1052众多的外设资源里面,我发现了一个比较有意思的外设接口,KPP(矩阵键盘接口),这个在很多MCU里面都没见过,一般都是用过IO输入来读取的,而1052直接集成了!!!最大应该是支持8X8的矩阵键盘输入,而ok10520-c板子也提供了一个4X4的排针接口,可以用来测试。

KPP的配置也是比较简单,IO复用为KPP模式



设置为中断模式触发


中断函数



按键读取







实验结果,发现按键没有消抖机制,按一下会触发好几次中断



需要添加适当的延时来消抖,这里我们用systick来做延时机制
可以直接使用如下函数来设置systick,因为我systick采用时钟摘取的方式,所以不影响中断,时钟摘取的意思就是延时之前取一次systick的计数值做参考,然后一直读取计数值做比较,直到大于延时的时间






打印信息检测延时效果。



重新进行main函数配置




发现按键相对比较稳定,按一次打印一次。当然这是比较粗糙的消抖方式,不能用于实际产品。



KPP接口的测试,还是比较简单就能配置实现,但没有按键的消抖机制,还是需要自己去实现,这样看起来有点小鸡肋吧

标签:KPP,RT1052,按键,消抖,接口,延时,systick
来源: https://www.cnblogs.com/zhugeanran/p/16390719.html