MLX90632传感器调试

您所在的位置:网站首页 mlx90615和mlx90614的区别 MLX90632传感器调试

MLX90632传感器调试

2024-01-18 06:17| 来源: 网络整理| 查看: 265

        由于疫情的原因,红外测温枪大火,与之相应的传感器我目前了解的有MLX90632和MLX90614以及BM43THD80A,因为90632封装体积小,方便嵌入,所以采用这款传感器来采集温度。一下是调试过程。

        废话不多说,官方的Demo源码直接去github就可以搜找到。拿到Demo例程过后,mlx90632_depends.h 文件中主要有3个函数需要我们完善。

       附上我的代码

int32_t mlx90632_i2c_write(int16_t register_address, uint16_t value) { IIC_Start(); Write_IIC_Byte(MLX90632_DEVICE_ADDR_W); IIC_Wait_Ack(); Write_IIC_Byte(register_address >> 8); IIC_Wait_Ack(); Write_IIC_Byte(register_address & 0xff); IIC_Wait_Ack(); Write_IIC_Byte(value >> 8); IIC_Wait_Ack(); Write_IIC_Byte(value & 0xff); IIC_Wait_Ack(); IIC_Stop(); return 0; } int32_t mlx90632_i2c_read(int16_t register_address, uint16_t *value) { uint8 Val[2]; IIC_Start(); Write_IIC_Byte(MLX90632_DEVICE_ADDR_W); IIC_Wait_Ack(); Write_IIC_Byte(register_address >> 8); IIC_Wait_Ack(); Write_IIC_Byte(register_address & 0xff); IIC_Wait_Ack(); IIC_Start(); Write_IIC_Byte(MLX90632_DEVICE_ADDR_R); IIC_Wait_Ack(); Val[0] = Read_IIC_Byte(1); Val[1] = Read_IIC_Byte(0); IIC_Stop(); *value = (Val[0]


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3