[其它应用] SH79F166 ,SH88F54,都实验过了都不支持2进制,为什么啊

[复制链接]
1109|8
 楼主| guoyt 发表于 2016-3-1 20:33 | 显示全部楼层 |阅读模式
SH79F166 ,SH88F54,都实验过了都不支持2进制,为什么啊
hanwe 发表于 2016-3-1 20:36 | 显示全部楼层
何以见得
 楼主| guoyt 发表于 2016-3-1 20:38 | 显示全部楼层
#define Bat_Seg0 (disbuff[3]&=~0b11111000)这个就报错了,
           #define Bat_Seg0 (disbuff[3]&=~0xF8)要这样才行
请问是什么原因,为什么不支持2进制了
 楼主| guoyt 发表于 2016-3-1 20:42 | 显示全部楼层
难到是那里还要什么设置吗
llia 发表于 2016-3-1 20:45 | 显示全部楼层
8051指令集,怎么会不支持二进制。
wangpe 发表于 2016-3-1 20:47 | 显示全部楼层
要将中断使能寄存器设置为 01011010B
      IE = Bin(01011010);
注:头文件中加入下面两段定义
#define LongToBin(n) \
(                    \
((n >> 21) & 0x80) | \
((n >> 18) & 0x40) | \
((n >> 15) & 0x20) | \
((n >> 12) & 0x10) | \
((n >>  9) & 0x08) | \
((n >>  6) & 0x04) | \
((n >>  3) & 0x02) | \
((n      ) & 0x01)   \
)
#define     Bin(n) LongToBin(0x##n##l)  //write binary charactor set            0xexsample : Bin(11111111) = 0xff
langgq 发表于 2016-3-1 20:51 | 显示全部楼层
是KEIL 对0b11111000 不支持,所以LS的方法比较好。
wangzsa 发表于 2016-3-1 20:53 | 显示全部楼层
6楼的宏定义是常用之方法
 楼主| guoyt 发表于 2016-3-1 20:54 | 显示全部楼层
嗯,我了解了,多谢啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1018

主题

9067

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部