战舰板按键实验,按KEY_UP会执行KEY_RIGHT的程序

2019-08-17 02:33发布

实验平台:STM32F103ZET6战舰开发板
试验程序:库函数版本,第八章:按键输入实验(原子官方程序)
实验现象:基本上都符合实验讲解,唯一不符合的就是KEY_UP按键。
出现问题:当按下KEY_UP的时候,蜂鸣器的状态会翻转,但是LED0和LED1的状态也翻转了


我尝试着找了一下原因,主要是因为KEY_RIGHT在key.h文件中被宏定义成了1。
如果将KEY_RIGHT重新定义成另外的数字(不是0,1,2,3,4),程序就可以正常的运行,按下KEY_UP的时候LED的状态也不会跟着翻转。
另外如果改变其他的按键的值,例如KEY_LEFT = 1,KEY_RIGHT = 3的时候,再按下KEY_UP的时候,LED0的状态也会翻转。


所以,我得到一个结论,按键的值不能定义为1。
那么问题来了,为什么不能将按键的值定义为1呢?为什么定义成1的时候,会跟KEY_UP按键有联系?

有没有哪位大神能帮我解答一下,谢谢啦

                              
     KEY_UP只会使蜂鸣器翻转                                                        将KEY_RIGHT的值改为5



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
809659312
1楼-- · 2019-08-17 05:00
不好意思,图片没有发上去,不过也并不影响,直接看原子哥给的按键程序就行
809659312
2楼-- · 2019-08-17 09:23
有没有哪位大神来帮帮忙的啊
809659312
3楼-- · 2019-08-17 11:24
会不会是我的开发板有问题,有没有谁遇到过跟我一样的情况啊
openedvadmin
4楼-- · 2019-08-17 15:08
 精彩回答 2  元偷偷看……
809659312
5楼-- · 2019-08-17 19:11
openedvadmin 发表于 2017-7-4 18:36
你没有修改过代码吧?

什么都没动过,现在把那个KEY_RIGHT的值该为5之后,就正常了
809659312
6楼-- · 2019-08-18 00:40
openedvadmin 发表于 2017-7-4 18:36
你没有修改过代码吧?

谢谢原子哥,问题已经解决了。另外再请问一个问题,用TIM3输出4路PWM的时候,为什么通道一(PB4)总是高电平呢,其他路正常

一周热门 更多>