根据 示例代码、我使用 I2C 将 CC2543与 LIS2DE12TR 连接。
但无法使用寄存器地址读取特定寄存器。 因为我不了解如何发送寄存器地址、以及 在发送寄存器地址后 I2CSTAT 的状态是什么。
我还阅读了用户指南20.1.4.2主机模式、了解 I2CSTAT 寄存器的状态。
所以如果有人知道的话,请帮我…
谢谢
CC2543用作 主器件
#pragma vector = I2C_VECTOR __interrupt void I2C_ISR(void) { // Clear I2C CPU interrupt flag. I2CIF = 0; // If a Start or Restart condition has been transmitted ... if (I2CSTAT == 0x08 || I2CSTAT == 0x10) { // Send Slave address and R/W access. I2CDATA = (SLAVE_ADDRESS << 1) | READ_FROM_SLAVE; // End Start condition. I2CCFG &= ~I2CCFG_STA; } // If a Data byte has been received and acknowledge has been returned... else if (I2CSTAT == 0x50) { // Read Data byte. buffer[bufferIndex++] = I2CDATA; } // If finished receiving... if (bufferIndex >= BUFFER_SIZE ) { // Generate Stop condition. I2CCFG |= I2CCFG_STO; // Disable interrupt from I2C by setting [IEN2.I2CIE = 0]. IEN2 &= ~IEN2_I2CIE; }