LSM6DSL运动传感器

从今天开始要调试LSM6DSL的驱动,但是这个东西是什么还不知道是什么鬼呢,果断的百度了一下,通过介绍知道了它是加速度计,陀螺仪传感器,一看解释就明白了,之前做平衡小车用到了这种模块MPU6050,包括手机啊,六轴,包括小米的平衡车等都用到类似的模块,这款模块datasheet上说这款芯片低功耗不错,也正是因为这种特性,项目中也决定使用这款芯片。

不过这款芯片的相关资料并不是很多,先看看数据手册。

描述写的芯片很强大,很棒,是不是吹需要我们实际来用用。

从淘宝上买了一个这样的模块,接口使用的IIC,那么驱动该怎么写呢??

在写之前我们肯定要先接线

淘宝上买的现成的模块,CS SCL SDA这几个管脚肯定不用解释,IIC的引脚。

那其他的几个SA0,INT1,INT2,OCS SCX SDX是做什么用的??数据手册上有各个管脚的详细描述。

SA0管脚可作为spi的SDO或者IIC的器件地址

SDX和SCX也可作为iic的SDA和SCL.

INT1和INT2为可编程的外部中断。是不是数据发生改变就触发中断呢??

主控通过查看这个管脚状态就知道有没有发生变化,不用主控一直查询判断。

通过查看用到的管脚就是这几个呗, SDA SCL INT1,INT2(暂时不加),CS,SA0(这里CS,和SA0直接拉高,单片机不控制)。注意:CS拉高为IIC,拉低为SPI,这里我们使用IIC通讯。

 

当测试的加速度大于设置的阈值时,就会产生唤醒中断信号,这里我们配置IN1,所以主控芯片通过判断这个引脚的电平,来进行一些处理。

 

网上有位博主写的挺好,可以参考

https://blog.csdn.net/Strange_Gu/article/details/82963936

 

我使用的stm32F103Cbt6的主控芯片,使用IIC与传感器通讯,串口为串口1,使用的是485(就多了个片选)。详细代码可从以下链接下载。

https://download.csdn.net/download/lzs940320/11547743

 

  • 6
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值