初学者求教:以下代码什么意思?

2019-07-15 16:12发布

  1. #define HMC5883L_DIR   P2DIR
  2. #define HMC5883L_IN    P2IN
  3. #define HMC5883L_OUT   P2OUT
  4. #define SCL  BIT0     //IIC时钟引脚定义
  5. #define SDA  BIT1     //IIC数据引脚定义   
  6.                       //DRDY 不接
  7. #define SCL_H  (HMC5883L_DIR|=SCL,HMC5883L_OUT|=SCL)
  8. #define SCL_L  (HMC5883L_DIR|=SCL,HMC5883L_OUT&=~SCL)
  9. #define SDA_H  (HMC5883L_DIR|=SDA,HMC5883L_OUT|=SDA)
  10. #define SDA_L  (HMC5883L_DIR|=SDA,HMC5883L_OUT&=~SDA)

  11. #define SlaveAddress  0x3c          //定义器件在IIC总线中的从地址
复制代码那么我的 SCL和SDA引脚该插哪个呢?是20和21吗?




而另一个代码如下:
  1. #define HMC5843_W        0x3C
  2. #define HMC5843_R        0x3D
  3. #define IIC_IOinit  P1DIR &=~BIT6;P1DIR |= BIT4+BIT5;P1OUT |= BIT4+BIT5//端口初始化
  4. #define SDA_1       P1OUT |=  BIT5              //SDA = 1
  5. #define SDA_0       P1OUT &=~ BIT5              //SDA = 0
  6. #define SCL_1       P1OUT |=  BIT4              //SCL = 1
  7. #define SCL_0       P1OUT &=~ BIT4              //SCL = 0
  8. #define DIR_IN      P1DIR &=~ BIT5;  SDA_1      //I/O口为输入
  9. #define DIR_OUT     P1DIR |=  BIT5              //I/0口为输出
  10. #define SDA_IN      ((P1IN >> 5) & 0x01)        //Read SDA
复制代码这里的SCL和SDA引脚又该是哪个呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。