使用89C52单片机通过I2C通信管理ADXL345传感器,芯片是某宝买的,单片机是正规的开发板,最初一切都好好的,加速度数据显示也正常,但是在添加一个EEPROM代码时候突然数据显示就不正常了,回到最初的代码重新烧写也没用。于是写了一个读取各个寄存器的程序,发现器件ID不是0x5E了,变成0x61了,而且XYZ轴的低八位寄存器数值一直是0没有变化,高八位的XYZ寄存器分别只会显示(AF,0,1),(82,83,0),(AE,AF,0),也就是说传感器被我搞成了个智障,只能分清正加速度,0,负加速度了。我以为传感器坏了,还专门买了个新的,结果烧初始的测试程序也是这样。感觉进度一夜回到xx前,大佬来救救我啊。我对传感器的初始化设置只有这么几项,最令我困惑的是同样的代码,第一次烧正常,出问题以后再烧就不正常了???硬件设备我感觉都没坏啊
Single_Write_ADXL345(0x31,0x0B); //测量范围,正负16g,13位模式
Single_Write_ADXL345(0x2C,0x08); //速率设定为12.5 参考pdf13页
Single_Write_ADXL345(0x2D,0x08); //选择电源模式 参考pdf24页
Single_Write_ADXL345(0x2E,0x80); //使能 DATA_READY 中
|