我采取SPI读取两个ADXL345,采用软件片选的方式,用GPIO口控制CS,CPOL=CPHA=1,采样频率3200Hz,量程±16g,这是初始化寄存器的代码:
spiwrite(0x31,0x0B);
spiwrite(0x2D,0x08);
spiwrite(0x2C,0x0F);
spiwrite(0x2E,0x00);
现在出现的问题是SPI读回的数据经常出现0,像这样:
0 |
0 |
0.023 |
-0.067 |
0 |
-0.09 |
0 |
0 |
0 |
0 |
-0.067 |
0 |
0 |
0 |
-0.106 |
0 |
0 |
0 |
-0.067 |
-0.067 |
0 |
-0.067 |
0 |
0 |
-0.067 |
0 |
0 |
-0.075 |
0 |
0 |
0 |
0 |
0 |
0 |
-0.075 |
已经坏了6个传感器了,都是一开始能成功读取,然后突然就全部置零,最后坏掉,请问怎么解决