我正在使用皮质m3为基础的mc。我用逻辑分析器限定了我的通信范围,但我不太明白我看到了什么。你能帮帮我吗?
在下面的图片中,你可以看到地址,但我认为这是不正确的,或者我弄错了。还没有连接到mc的传感器,我更改了地址以进行分析。
地址0x00,数据0x55:http://imgur.com/OJfe8Dj,7REdHS7,PLz1qTZ
地址0x55,数据0x55:http://imgur.com/OJfe8Dj,7REdHS7,PLz1qTZ#1
地址0xff,数据0x55:http://imgur.com/OJfe8Dj,7REdHS7,PLz1qTZ#2
我的代码:
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C7);
GPIOPinConfigure(0x00001002);
GPIOPinConfigure(0x00001402);
GPIOPinTypeI2C(GPIO_PORTA_BASE, GPIO_PIN_5);
GPIOPinTypeI2CSCL(GPIO_PORTA_BASE, GPIO_PIN_4);
I2CMasterInitExpClk( I2C7Master_Base, SysCtlClockGet(), false);
I2CMasterSlaveAddrSet(I2C7Master_Base, 0xff, false);
I2CMasterDataPut(I2C7Master_Base, 0x55);
I2CMasterControl(I2C7Master_Base, I2C_MASTER_CMD_SINGLE_SEND);
while(I2CMasterBusy(I2C7Master_Base));有人能解释一下吗?
发布于 2015-02-22 20:32:20
实际上,您最好在主传感器和光传感器之间建立一个有线连接。然后,您需要发送传感器的适当地址,应该由从机确认。当从服务器在其地址上确认时,您将在作用域中看到ACK位。接下来,您将根据传感器上的数据报对数据进行操作--任何数据字节也应该被确认(很可能,或某种程度上是由于数据表的缘故)。从有线连接开始,因为在没有负载的情况下尝试I2C总线没有多大意义,我们甚至无法在您发布的图表上看到8-9个时钟周期,因为我认为它没有加载连接。希望能帮上忙。
https://stackoverflow.com/questions/28659818
复制相似问题