我不理解的是assign key_low=key_rst_r & (~key_rst)这条语句。key_rst_r和key_rst我个人理解是在电平稳定后。两个状态是一样的所以key_low是低。
现在就是满足了两个条件 1,检测到按键下降沿 2,延时过后电平保持低。那结果应该是这个时候key_low为低应该触发led翻转啊,不理解程序中key_low为高时候的翻转

昨天晚上回去琢磨了下!终于想通了!
我的盲点就在assign key_low=key_rst_r & (~key_rst)这条语句上!
在没有按键时key_rst和key_rst_r 都是高电平,主要是key_rst和key_rst_r 状态是要经过20ms才变化!所以当20ms后key_rst接收到key_in为低时,此时key_rst_r还为高,所以 key_rst_r 和key_rst 又恰好形成了下降沿!所以key_low这个时候为高电平。理所应当led翻转。
理解一个问题后很开心啊,虽然是很简单的问题。谢谢51大师的耐心指点。
回复
打赏帖 | |
---|---|
【瑞萨RA2E1开发板】:使用ADC功能实现位移传感器采集方案被打赏20分 | |
【nRF7002DK】基于sht30的温湿度计被打赏20分 | |
【nRF7002DK】日志打印被打赏20分 | |
rtthread硬件加密-5hash加密分析被打赏10分 | |
【STM32F769】SD卡驱动及其调试经验分享被打赏32分 | |
【分享开发笔记,赚取电动螺丝刀】使用看门狗降低系统隐藏bug触发概率被打赏18分 | |
【STM32F769】调试SD驱动,由于其时钟配置不对引起的错误以及排查记录被打赏35分 | |
【分享开发笔记,赚取电动螺丝刀】MCUXpressoConfigTools配置外设时的异常解决被打赏24分 | |
C语言函数宏的三种封装方式被打赏50分 | |
【换取手持示波器】NUCLEO-F429ZI Mongoose移植被打赏30分 |