#define MASK1 0XF1
#define MASK2 0X8F
#define a(x) ((P0 & MASK1) | (x << 1))
#define b(x) ((P0 & MASK2) | (x << 4))
说明:
其中x为p0.1 p0.2 p0.3或p0.4 p0.5 p0.6组成
三位二进制数,所以x的范围为0-7。
使用示例:
如果你想为P0.1置1,P0.2置0,P0.3置1,而不影响P0的其他口
则他们组成的二进制数为101,转换为10进制为5,则代码如下
P0 = a(5);
不知道你是不是这个意思,希望有帮到你。