SCL3300三轴倾角计
- 特性
- 3轴测量
- 带加速度输出和角度输出
- -40℃~125℃
- 3.0V~3.6V工作电压
- SPI接口
- 0.001°/√Hz的噪声
1. SCL3300三轴倾角计介绍
这篇文档介绍了SCL3300-D01的最基本的技术参数,包括性能参数、SPI接口参数、寄存器详情、电气特性和应用信息。
2. SCL3300三轴倾角计性能参数
1,通用参数
模拟电压参数参考电压为AVSS,数字电压参考电压为DVSS
2,性能参数
VDD=3.3V, 室温=23℃,g=9.819m/s2
3,温度传感器性能参数
传递函数:
temp [℃] = -273 + (TEMP /18.9)
TEMP是温度寄存器的输出(十进制格式)
4,最大绝对值
5,管脚描述
6,数字接口特性
7,SPI时序
官方文档对SPI时钟有推荐,因为SCK会影响SCL3300的噪声水平,建议时钟频率再2Mhz~4MHz以获得最优性能测量方向
3. SCL3300三轴倾角计产品描述
采用3DMEMS工艺加工,采用变电容原理检测加速度变化
SCL3300再出厂时已经进行过校准,无需再另外校准,校准参数存储在非易失内存里,可以在启动过程中从内存中读出。
因为装配产生的零位误差,可以再回流焊后12h后对系统进行扣零处理(Zeroing).
4. SCL3300三轴倾角计产品操作、复位和上电
4.1. 产品操作
常规模式下传感器的ODR为2000hz。寄存器每0.5ms就会更新,如果不将所有的数据都读出,噪声水平将不能保证。
为获取最有性能,建议读取ACCX,ACCY,ACCZ使用ODR频率,只有RS指示错误才去读STATUS寄存器。
4.2.上电时序
4.3. 工作模式
SCL3300有4中工作模式可选
5. SCL3300三轴倾角计产品接口
5.1.1通用
SPI接口连接关系
5.1.2协议
采用OFF-FRAME的协议格式,即对本次请求的响应要在下次请求时才能发送。
SPI传输实在CSB片选下降沿开始的。数据位采样在SCK的上升沿进行。相当于SPI模式0.
这是OFFFRAME的协议。
5.1.3SPI帧格式
SPI帧格式包含4个部分
1.操作码(OP),包括读写位(RW)和地址位(ADDR)
2.返回状态(RS)
3.数据位
4.CRC校验码
帧格式解析
RS为“11”:当error flag出现,或是上一帧出现错误的CRC校验
5.1.4 操作码
5.1.5返回状态RS
RS位指示了传感器的功能状态
RS的优先级从高至低为:00->11->01,当Status Summary 寄存器中有错误标志,或是上一个命令的CRC校验出错了
5.2CRC校验
SPI的CRC校验
// Calculate CRC for 24 MSB's of the 32 bit dword
// (8 LSB's are the CRC field and are not included in CRC calculation)
uint8_t CalculateCRC(uint32_t Data)
{
uint8_t BitIndex;
uint8_t BitValue;
uint8_t CRC;
CRC = 0xFF;
for (BitIndex = 31; BitIndex > 7; BitIndex‐‐)
{
BitValue = (uint8_t)((Data >> BitIndex) & 0x01);
CRC = CRC8(BitValue, CRC);
}
CRC = (uint8_t)~CRC;
return CRC;
}
static uint8_t CRC8(uint8_t BitValue, uint8_t CRC)
{
uint8_t Temp;
Temp = (uint8_t)(CRC & 0x80);
if (BitValue == 0x01)
{
Temp ^= 0x80;
}
CRC <<= 1;
if (Temp > 0)
{
CRC ^= 0x1D;
}
return CRC;
}
一旦CRC出错,RS会在下一帧SPI响应中为“11”
6. SCL3300三轴倾角计寄存器描述
SCL3300包含两个用户可以切换的寄存器BANK,默认是#0BANK。BANK0应当一直处于激活状态,除非BANK1要使用。当从BANK1读数完成后,应当立即切换为BANK0,以保证不会意外的读写到其他寄存器。
用户不应当访问保留或厂家用的寄存器。上下电,复位都会将所有配置的参数复位
6.3 STATUS寄存器
SW复位是通过SPI总线进行操作,HW复位是通过上下电传感器实现的。如果这都不能复位传感器错误,那说明传感器坏了。
6.4错误标志块
STATUS寄存器是报价按了ERR_FLAG1和ERR_FLAG2的寄存器信息,如果出现错误,会反映在STATUS寄存器内容上,ERR_FLAG寄存器是用来更深入了解错误原因的,读取ERR_FLAG寄存器不会造成STATUS的复位,同样RS也不会复位。
ERR_FLAG1
ERR_FLAG2
6.5CMD寄存器
设置SCL3300的工作模式,在power-off,reset(hw或sw),power down ,意外断电后们都必须按照上电启动顺序进行启动。不能随便配置上述没有的功能,否则器件可能会reset
6.6角度寄存器
使能角度寄存器
6.7who am i测试
返回值 为 C1h
用来测试SPI。