主题中讨论的其他器件:CC2640R2F
您好!
我们有一个 I2C LIS3DH 加速计自检、使用 CC2640R2 SDK 1.00中基于简单外设的程序通过了10/10测试。 我们将代码移植到 CC2640R2SDK V1.35简单外设、现在它仅通过1/10的测试。 我已经使用了 CC2640R2SDK V 1.35中的 SensorI2C.c 文件、但它仍然仅通过1/10。
行为类似于我使用 CC2640R2 SDK 1.00使 I2C LIS3DH 加速计自检正常工作所遇到的问题、在该问题中、应用程序进入睡眠和待机状态、测试将失败。 解决 方案是布置事件、然后在主任务中调用 I2C LIS3DH 加速计自检。
我已将此解决方案移植到 CC2640R2SDK V1.35简单外设中、但现在 I2C LIS3DH 加速计自检仅通过了1/10。 为了确认应用是否正常运行 、I2C LIS3DH 加速计自检的原因是应用程序进入待机状态、我在 主任务事件处理程序中调用 I2C LIS3DH 加速计自检。
// (;) { uint32_t 事件; //等待与调用线程关联的事件被发布。 //请注意,与线程关联的事件在时发布 //消息在线程的消息接收队列中排队 事件= Event_pend (syncEvent、Event_ID_NONE、SBP_ALL_EVENGS、ICALL_TIMEOUT_FOREVE); IF (事件) { iCall_EntityID dest; iCall_ServiceEnum src; iCall_HciExtEvt *pMsg =空; TestApp__Accelerometer(); if (iCall_fetchServiceMsg (&src、&dest、(void **)&pMsg)=ICALL_errno_Success)
I2C 加速计测试仅通过1/3中的1。
SDK 1.00和 SDK 1.35之间的 I2C、电源管理是否存在任何会导致此问题的差异?
-克尔
