KEIL调试为啥不创建一个自定义按键?
导读:有些时候我们并不满足监控数据,还想定义一些自己的按键,比如当我按下按钮时,系统电源关闭,再按下按钮时系统电源开启,怎么做?这个功能其实使用前面所说的外设窗口也是完成能完成要求的,麻烦的是,如果使用外设窗口,要控制 IO 口,那你每次都得找到对应的 IO 口才行,很是麻烦,但是使用按键就会简单许多。
这个时候就我们就需要了解 KEIL 中另一个有趣的东西——工具箱(ToolBox)。
以设置 GPIOA.4 为例,定义一个控制这个引脚的按键。
首先,新建一个文件:
然后保存为 OspreyDebug.ini 文件:
输入以下内容:
保存文件后,将其添加到工程中,这里我采用模拟的方式,所以在模拟中添加,如果你是在线调试,那么在另一个位置添加即可:
之后进入 Debug 模式即可,在这里你可以看到你定义的按键:
当你按下按键时,就会出现如下消息:
当你从外设窗口查看时(关于这个可以查看:外设寄存器该这么看才对嘛),也能观察到这个 IO 引脚的变化:
这里需要注意的是:
以上函数采用的是 读-改-写 的方式更改某一个位,很可能在更改中意外的修改其它引脚,所以最好采用别的方式修改某一个引脚(比如使用位带操作、BRR 寄存器操作、互斥访问、关中断之类的)。这个涉及到资源互斥的知识,可以看关于信号量的的内容。
事实上,你不仅仅可以用按键做一个 IO 口的翻转,它还能做更复杂的事情,按键只是作为一个触发入口而已,具体干什么事情就由你们自己发挥想象了。
推荐阅读:
-THE END-
如果觉得文章对你有帮助,欢迎转发、分享给朋友,感谢你的支持!
如果对本文有问题,欢迎留言!即使没有问题也可以留下走心评论。
如需转载请联系我。
微信公众号「鱼鹰谈单片机」
每周一更单片机知识
长按后识别图中二维码关注
这位道友,请留步,点完再走可好