注册 登录
查看: 349|回复: 6

get_key_msg问题

[复制链接]
发表于 2014-11-5 16:23:44 | 显示全部楼层 |阅读模式
野火的库函数中的get_key_msg()函数,在执行   if(get_key_msg(&keymsg) == 1)        {
            printf("\n按下按键KEY%d,类型为%d(0为按下,1为弹起,2为长按)",keymsg.key,keymsg.status);
        }

        DELAY_MS(500);

这段程序时,按一次按键会执行两次printf函数,这是为什么??????????????????
我调看call stack,他也显示执行了两次!!!!!!!!!!!!            


回复

使用道具 举报

发表于 2014-11-5 17:24:40 | 显示全部楼层
一个是按下,另外一次是弹起。

你可看串口打印的数据。
回复 支持 反对

使用道具 举报

发表于 2014-11-5 17:24:44 | 显示全部楼层
一个是按下,另外一次是弹起。

你可看串口打印的数据。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-5 19:21:34 | 显示全部楼层
恩恩。我看过了,试了几次,每次按一次都会发两次我要打印的数据!
回复 支持 反对

使用道具 举报

发表于 2014-11-5 19:22:59 | 显示全部楼层
rurrect 发表于 2014-11-5 19:21
恩恩。我看过了,试了几次,每次按一次都会发两次我要打印的数据!

如果你想仅仅识别按下操作,不出来弹起操作,可以加个if条件来判断。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-7 17:25:38 | 显示全部楼层
楼主
uatrn =UART3;
UART_S1_REG( UARTN [ uatrn ] )这是什么意思??????????????????
回复 支持 反对

使用道具 举报

发表于 2014-11-7 18:04:09 | 显示全部楼层
rurrect 发表于 2014-11-7 17:25
楼主
uatrn =UART3;
UART_S1_REG( UARTN [ uatrn ] )这是什么意思??????????????????

就是寄存器,看视频或者书吧,都有说
来自安卓客户端来自安卓客户端
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部