This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

请问CC2530能不能模拟I2C通信

Other Parts Discussed in Thread: Z-STACK, CC2530

1. 芯片本身没有I2C,我现在要求要做I2C通信功能,问下有没有示例代码?

2. 没有的话应该去从哪着手去做?

3. 关于灯设备入网的KEY秘钥问题,是不是要zigbee联盟认证的KEY?这里不太懂,应该看哪里的文档或代码?

非常感谢!

  • 关于模拟I2C您可以参考  RemoTi Stack 内的i2c hal drivers (hal_i2c.c, hal_i2c.h)

    以及E2E上给出的代码 http://e2e.ti.com/support/wireless_connectivity/zigbee_6lowpan_802-15-4_mac/f/158/p/140917/511388

    希望对您有所帮助

  • 关于密钥问题,您是指DEFAULT_KEY?

    #if defined ( DEFAULT_KEY )
    CONST uint8 defaultKey[SEC_KEY_LEN] = DEFAULT_KEY;
    #else
    CONST uint8 defaultKey[SEC_KEY_LEN] =
    {
    #if defined ( APP_TP ) || defined ( APP_TP2 )
    // Key for ZigBee Conformance Testing
    0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb,
    0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa
    #else
    // Key for In-House Testing
    0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
    0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
    #endif
    };
    #endif

    代码里面有个宏定义DEFAULT_KEY,如果已经定义了这个的话,那么就不在使用下面的数组了。

    DEFAULT_KEY定义在f8wconfig.cfg文档里面

    /* Default security key. */
    -DDEFAULT_KEY="{0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, 0x00, 0x02, 0x04, 0x06, 0x08, 0x0A, 0x0C, 0x0D}"

    所有的API的文档,宏定义的解释都在协议栈安装目录下Documents里面。

    如果没有使能uint8 zgPreConfigKeys = FALSE;的话,那么节点在入网的时候,Key是有父设备发送给子设备的。

    加密和解密是有硬件完成的。


  • 很高兴能帮到您!

  • 现在的I2C驱动在CC2530裸机实现正常,但是加到Z-stack里就没反应了,I2C读写失败。I2C模拟的本身应该没什么问题

    CC2530上的的I/O口试了好几个都不行。

    请问是什么原因?需要从哪里着手查找原因?

  • 我从remote TI里面移植了I2C过来,但是也读写失败了,不知道楼主是否解决了该问题?求分享