你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32G431RBT6笔记之KEY模块

[复制链接]
STMCU小助手 发布时间:2023-3-2 12:43


f13e61f92cf0415895c1dc61e2390353.png

133af79726be48f689c4661b723b4d04.png

8b86733a75b04498b758149416b20433.png

914d93ef83a7452b8ecd690b9580d98a.png

82877a2750f040c6ab903384358d7bb8.png

9048152dc57c40b088a29c2c8d727602.png

2c1233c9df724b4082b105fc86b5419e.png

abf464737db34431a0345856ecf88ce4.png

982d140726ca491a8a4a0245d26fa563.png

8e5b034d9a954013b843465ded1b6eb8.png

f75be55dd5e448d6b7d1a81c582f3bcb.png

a42356cad43746c39ce61151ef64efc3.png


d90f69853ebb4149b5983b1386623dd2.png

3fc6a9073a8b4f918a45fa964e208f72.png

fee03c0ccd4c4803a0e3f04d2ee5f57d.png

58cf1336fc054016ae91717953edb48c.png


检测滴答定时器的正确之后把变量i和检测部分代码删掉即可。


df9ef97f812f42d7b697adb33bde7b5f.png


c01f03cb30574d74a83fd89e69b2de4a.png


uwTick是不断变化的,当刚上电的时候每1ms就会增加一次,因此会增加到很大


uwTick_Set_Point的值初值是0,所以if条件句不满足就会执行后边的代码。


if条件句就做了减速处理。


比如第一次没有按键Key_Val值就是0000 0000,第二次扫描是0000 0100,这样


情况1:100ms两次扫描,按键得到的结构从0(都没按下)到B4按下,产生了下降沿‘
             Key_Val=4
             ucKey_Down=0000 0100 & (0000 0000^0000 0100)=0000 0100 & 0000 0100=4
             ucKey_Up=1111 1011 & 0000 0100 =0000 0000 = 0
              ucKey_Old=4


情况2:B4产生了下降沿,按键一直按着
             Key_Val=4
             ucKey_Down=0000 0100 & (0000 0100^0000 0100)=0000 0100 & 0000 0000=0
             ucKey_Up=1111 1011 & 0000 0000 =0000 0000 = 0
              ucKey_Old=4


情况3:B4按键一直按着,随后弹起
             Key_Val=0
             ucKey_Down=0000 0000 & (0000 0100^0000 0000)=0000 0000 & 0000 0100=0
             ucKey_Up=1111 1111 & 0000 0100 =0000 0100 = 4//上升沿产生
              ucKey_Old=0
————————————————
版权声明:想要优秀点儿

收藏 评论0 发布时间:2023-3-2 12:43

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版