OpenEdv-开源电子网

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

红外遥控实验中函数u8 Remote_Scan(void)里的一句不明白

[复制链接]

22

主题

62

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2014-7-20
在线时间
0 小时
发表于 2015-3-11 01:48:27 | 显示全部楼层 |阅读模式
5金钱
[mw_shl_code=c,true]u8 Remote_Scan(void) { u8 sta=0; u8 t1,t2; if(RmtSta&(1<<6))//得到一个按键的所有信息了 { t1=RmtRec>>24; //得到地址码 t2=(RmtRec>>16)&0xff; //得到地址反码 if((t1==(u8)~t2)&&t1==REMOTE_ID)//检验遥控识别码(ID)及地址 { t1=RmtRec>>8; t2=RmtRec; if(t1==(u8)~t2)sta=t1;//键值正确 } if((sta==0)||((RmtSta&0X80)==0))//按键数据错误/遥控已经没有按下了 { RmtSta&=~(1<<6);//清除接收到有效按键标识 RmtCnt=0; //清除按键次数计数器 } } return sta; }[/mw_shl_code]
1.我觉得上面两处(u8)是多余的,就试着去掉然后编译下载,最后实验结果失败了,这是为什么?这里的(u8)一定要加吗?t1和t2不已经是u8数据类型了吗?
2.另外t1怎么会有可能等于REMOTE_ID也就是0呢?这一点我弄不明白,还望指点

最佳答案

查看完整内容[请看2#楼]

1,t1,t2在其他什么地方被定义为u8类型 2,t1=RmtRec>>24;   //遥控器发送的地址正码(0), 反码(255)
软件、硬件我都要
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

21

主题

2205

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5140
金钱
5140
注册时间
2014-8-26
在线时间
1317 小时
发表于 2015-3-11 01:48:28 | 显示全部楼层
1,t1,t2在其他什么地方被定义为u8类型
2,t1=RmtRec>>24;   //遥控器发送的地址正码(0),

反码(255)
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2015-3-11 01:48:28 | 显示全部楼层
1,这里必须加u8限制,否则~t2,会变成32位了!!
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

头像被屏蔽

52

主题

440

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1237
金钱
1237
注册时间
2013-1-9
在线时间
151 小时
发表于 2015-3-11 18:11:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

22

主题

62

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2014-7-20
在线时间
0 小时
 楼主| 发表于 2015-3-12 00:17:21 | 显示全部楼层
回复【2楼】login_FAE:
---------------------------------
代码第4行不就是定义u8类型吗?
软件、硬件我都要
回复

使用道具 举报

22

主题

62

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2014-7-20
在线时间
0 小时
 楼主| 发表于 2015-3-12 00:20:20 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
原子哥我不是很理解哎,第4行不是定义t2为u8类型吗,那~t2不也应该是8位吗?我是不是哪里理解错了。。
软件、硬件我都要
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2015-3-12 23:17:56 | 显示全部楼层
回复【6楼】志聪电子:
---------------------------------
我也不知道为什么.
这是经验得出来的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

8

主题

54

帖子

0

精华

初级会员

Rank: 2

积分
102
金钱
102
注册时间
2019-5-2
在线时间
43 小时
发表于 2020-3-21 13:41:41 | 显示全部楼层
谢谢,正好回答了我的疑问
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-23 06:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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