打印
[信息]

使用STM32L452通过C-Driver-MEMS驱动STTS751

[复制链接]
861|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

IKS01A3提供了全套的传感器驱动和例程,也许是为了兼容性吧代码设计的非常复杂

不管是新手还是老手想要把代码搞明白都要花上一些时间

除了en.x-cube-mems1 ST还为每个传感器提供了C-Driver-MEMS驱动和例程

如果是做一些简单的测试使用C-Driver-MEMS会非常方便

这次测试STTS751传感器使用的是NUCLEO-L452RE

目的是为了将STTS751采集到的温度通过串口发送给电脑

对于STM32L452需要用到I2C接口和UART接口,I2C与STTS751通信,UART与PC通信

针对STM32单片机,ST提供了一款叫STM32CubeMX的软件,可以图形化配置,然后生成代码

用过的小伙伴都知道,这款软件非常好用

我之前做一些东西时使用STM32CubeMX开发节省了很多的时间

甚至用过STM32CubeMX开发STM32以后都懒的再用其它单片机,除了PSoC

先打开NUCLEO-L452RE的原理图确定I2C和UART对应的引脚

UART2通过通过PA2,PA3连接到ST-LINK的虚拟串口

I2C1通过PB8,PB9连接到arduino的I2C接口



打开STM32CubeMX软件,选择NUCLEO-L452R开发板,再使能I2C1和UART2模块

其它全部默认设置不需要修改


将这两个模块对应的引脚修改成原理图内对应的引脚,给工程起个名字就可以生成相应的代码了

      

代码生成后打开工程,将STTS751的C-Driver-MEMS驱动引出到工程

打开read_data_simple.c文件,example_main_stts751函数里的STTS751_ID_0xxxx改成STTS751_ID_1xxxx


再将platform_write和platform_read里的STTS751_0xxxx_ADD_7K5改成STTS751_1xxxx_ADD_7K5


修改tx_com函数将原来的CDC_Transmit_FS改成使用uart2通信


烧好代码,支行串口助手就可以看到输出的温度数据


使用特权

评论回复
沙发
自己造声卡| | 2021-3-10 10:05 | 只看该作者
感谢楼主的分享,太棒了,这个资料还是很实用的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

968

主题

2962

帖子

7

粉丝