OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7738|回复: 13

红外遥控器那个程序,为什么按一次遥控器执行两次程序

[复制链接]

15

主题

24

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2017-7-16
在线时间
15 小时
发表于 2017-7-26 19:22:56 | 显示全部楼层 |阅读模式
红外遥控器那个程序,为什么按一次遥控器执行两次程序?
key=Remote_Scan();
  if(key)
  {  
   switch(key)
   {
    case 0:str="ERROR";break;      
    case 162:str="POWER";break;     
    case 98:str="UP";break;     
    case 2:str="PLAY";break;   
    case 226:str="ALIENTEK";break;   
    case 194:str="RIGHT";break;   
    case 34:str="LEFT";break;   
    case 224:str="VOL-";break;   
    case 168:str="DOWN";break;  
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

7

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2018-12-10
在线时间
12 小时
发表于 2019-4-29 09:28:09 | 显示全部楼层
如果是只要单点功能的话,在更新中断里加入加入绿色行就行了。
OC`F9$XOUI[QW5}02@2R{O4.png
回复 支持 2 反对 0

使用道具 举报

3

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
75
金钱
75
注册时间
2018-12-22
在线时间
18 小时
发表于 2019-1-5 16:30:53 | 显示全部楼层
去掉开头的赋值语句,将if(key)这一句改为if的判断句,即if(key != Remote_Scan()),并且switch(key)要改成switch(Remote_Scan())。然后在每一个对应的case中加入key=162或者key=98,etc.最后可以去掉case 0,免得老是给str赋值“ERROR”
回复 支持 0 反对 1

使用道具 举报

1

主题

2

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2018-3-23
在线时间
7 小时
发表于 2018-3-23 23:52:23 | 显示全部楼层
我也是。。。不知道楼主解决了吗 怎么解决啊啊!!!!
回复 支持 反对

使用道具 举报

5

主题

28

帖子

0

精华

初级会员

Rank: 2

积分
95
金钱
95
注册时间
2018-9-19
在线时间
13 小时
发表于 2018-12-31 13:31:22 | 显示全部楼层
我现在也遇到这个问题。加了延时加了清零也不行。也没有找到又对连发码进行二次处理的地方
回复 支持 反对

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2018-12-31 16:48:38 | 显示全部楼层
用的例程?
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-1-18
在线时间
14 小时
发表于 2019-2-12 09:17:22 | 显示全部楼层
ToARuGO 发表于 2019-1-5 16:30
去掉开头的赋值语句,将if(key)这一句改为if的判断句,即if(key != Remote_Scan()),并且switch(key)要改成 ...

我也遇到了这个问题,感谢!!
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-1-18
在线时间
14 小时
发表于 2019-2-12 09:18:15 | 显示全部楼层

历程确实有这个问题,改了好久
回复 支持 反对

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2019-2-12 11:12:31 | 显示全部楼层
lee409984507 发表于 2019-2-12 09:18
历程确实有这个问题,改了好久

用的是基于哪个板子的例程?
回复 支持 反对

使用道具 举报

2

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
99
金钱
99
注册时间
2019-1-18
在线时间
14 小时
发表于 2019-2-13 09:09:08 | 显示全部楼层
peng1554 发表于 2019-2-12 11:12
用的是基于哪个板子的例程?

探索版,然后昨天按照楼上那位大哥那么处理之后就OK了。我这边之前是用于开启步进电机计时器计数的,每次按了之后总是马上开启然后又关了,加断点发现的。
回复 支持 反对

使用道具 举报

0

主题

14

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2018-11-15
在线时间
14 小时
发表于 2019-6-12 11:36:46 | 显示全部楼层
ToARuGO 发表于 2019-1-5 16:30
去掉开头的赋值语句,将if(key)这一句改为if的判断句,即if(key != Remote_Scan()),并且switch(key)要改成 ...

你好,我用原子的遥控程序,想要实现按一次,数码管加一,可是现在按一次变化好几个数,这是怎么回事呢?调试没搞明白
回复 支持 反对

使用道具 举报

0

主题

143

帖子

0

精华

初级会员

Rank: 2

积分
173
金钱
173
注册时间
2019-5-30
在线时间
4 小时
发表于 2019-6-12 16:01:15 | 显示全部楼层
学习学习
回复 支持 反对

使用道具 举报

6

主题

10

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2020-4-8
在线时间
19 小时
发表于 2020-5-19 13:42:31 | 显示全部楼层
谢谢大神
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2020-5-8
在线时间
4 小时
发表于 2020-6-13 17:37:24 | 显示全部楼层
请问我改成按一次遥控器触发一次程序后,有时按遥控器没反应,有时是执行一次,这是怎么回事
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-12 11:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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