请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:LMP91000EVM 主题中讨论的其他器件:CC2650、 LMP91000、
工具/软件:Code Composer Studio
Helllo 社区、
我一直尝试通过 I2C 将 LMP91000EVM 与 CC2650通信 、但我不熟悉这些概念。 我尝试将 LMP91000配置为3节模式、也称为电流测量模式、因为我将进行化学读数。 我一直在四处看看、但我似乎也不能把我的头缠绕、也不能用我的方式来完成这项工作。 以下代码显示了我尝试读取 STATUS_REGISTER = 0x00的情况、这让我知道 LMP91000是否开启。
空 lmp91000 (UArg0、UArgarg1)
{
I2C_init();
/*局部变量*/
uint8_t txBuffer[3];
uint8_t rxBuffer[3];
I2C_Handle 句柄;
I2C_Params Params;
I2C_Transaction 事务;
/*打开驱动程序*/
I2C_PARAMS_INIT (params);
params.bitrate = I2C_400kHz;
/*初始化主 I2C 事务结构*/
transaction.writeCount = 0;
transaction.writeBuf = txBuffer;
transaction.ReadCount = 1;
transaction.readBuf = rxBuffer;
transaction.slaveAddress = 0x48;
/*打开 I2C */
句柄= I2C_open (Board_I2C0、params);
/*检查 I2C 初始化*/
if (handle == NULL)
{
System_printf ("初始化时出错\n");
}
其他
{
system_printf ("I2C 已初始化\n");
}
/*检查 LMP91000的状态*/
txBuffer[0]= LMP91000_STATUS_REG;
bool trans = I2C_transfer (handle、&transaction);
IF (传输)
{
if (rxBuffer[0]= LMP91000_READY)
{
System_printf ("LMP 就绪。\n");
}
其他
{
System_printf ("未成功\n");
}
}
system_flush();
}
如果有人可以向正确的方向指出我、我没有找到很多指南、数据表也没有太多帮助。
此致、
弗朗西斯科