大佬们好,我目前正在做LIS2DW12TR的通信,主控使用的是CH571F,使用4线模拟SPI通信,代码只有SPI引脚初始化,然后就是读取ID,但是返回的数据都是0xff,一直通信不成功。 这是逻辑分析仪读到的,第一行是CLK,第二行是CS,第三行是MOSI,第四行是MISO 这是接线图,VDDIO实际是与VDD相连接,VCC是用3.3V,芯片是手焊的,读到的电流有20mA左右,这是芯片正常工作了吗? 尝试过将该电路改为I2C模式 SDA脚也是一直被拉高,导致I2C初始化也没成功 希望各位大佬可以解答一下,谢谢 |
从图上不能很明确的确认实际的SPI和传感器的连接,是用模拟SPI还是模块SPI进行通讯的?注意看一下SDI和SDO应该连接SPI的接口。
什么SPI指令也没有操作,就有20mA电流?这颗芯片功耗非常低,20mA肯定电路或是芯片有问题了 I2C通讯时,因为内部有上拉,所以SA0管脚建议拉高 确定芯片型号没有弄错吧? 读WHO_AM_I寄存器之前不需要做什么操作,但上电后最好等待50ms以后再去操作SPI或是I2C.
"SDA脚也是一直被拉高,导致I2C初始化也没成功", 这是LIS2DW12端拉住了吗?一般拉住是导致SDA为低电平,I2C初始化为什么没有成功?