nP11 = (P1IN & BIT1) >> 1是什么意思

2019-08-05 15:56发布

在矩阵键盘显示程序中,
//读取各个管脚的状态
nP10 = P1IN & BIT0;
nP11 = (P1IN & BIT1) >> 1;
nP12 = (P1IN & BIT2) >> 2;
nP13 = (P1IN & BIT3) >> 3;
求指教 这句指令为什么这么写 我大概明白什么意思 BIT1什么意思 为什么还要 >> 1
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
gxdu2002
2019-08-06 05:49
main主程序程序开头都有一句“#include  <msp430x14x.h>”,在这个MSP149F149头文件中对编程中可能会用到的SFR特殊功能寄存器、特征字等都有宏定义,方便大家使用,对于BIT X定义如下:#define BIT0 0x0001
#define BIT1 0x0002
#define BIT2 0x0004
#define BIT3 0x0008
#define BIT4 0x0010
#define BIT5 0x0020
#define BIT6 0x0040
#define BIT7 0x0080
#define BIT8 0x0100
#define BIT9 0x0200
#define BITA 0x0400
#define BITB 0x0800
#define BITC 0x1000
#define BITD 0x2000
#define BITE 0x4000
#define BITF 0x8000
“&”字符为按位与操作符,“&&”则为逻辑与操作符,两个意义不一样;
“>>”为右移操作符,>> n表示右移n位;“<<”为左移操作符;移出的为丢弃,这两个操作符均不是循环移位操作符!

一周热门 更多>