基本概述
STM32F103RCT6使用IIC接口与MLX90640采集数据,采集数据后使用LCD将温度转换为像素点输出到TFT-LCD屏幕,温度达到指定数值自动蜂鸣器报警,使用按键关闭报警声,源码文件文末自取。
默认参数时,MLX90640的工作流程如下:
(1)上电,内部初始化(约40ms)
(2)读取工作参数到控制和状态寄存器
(3)开始以2Hz的速率测量实时数据并更新到RAM,自动更新状态寄存器。
测量帧解释:
MLX90640共有768个测量像素点,每次测量其中的一半,称为1帧,故此完成768像素需要测量2帧,用帧0和帧1来表示。即:所谓的1帧数据其实是完整像素的一半。
温度转颜色的方法为:
(1)首先假设温度范围的上下限并将实际的温度数据转换为0~255之间的数值
(2)使用转换后的数值代入下面的伪彩编码计算函数,生成伪彩色
输出图像未使用阵列插值处理-多项式插值算法处理输出图像,锯齿感强烈,如果需要参考文章
:阵列插值处理链接
成果展示:
红外LCD显示只有红绿黄色,蓝色未添加,显示的温度在最下面
TMIN:温度最小值
TAver温度平均值
TMax:温度最大值
文章来源:https://www.toymoban.com/news/detail-786035.html
资源汇总
源码资源包说明:包含:完整Keil程序和接线图
源码文件:https://pan.baidu.com/s/1-0jweH6a0Nsva3nWYX5YYQ?pwd=2023文章来源地址https://www.toymoban.com/news/detail-786035.html
到了这里,关于基于STM32F1和MLX90640的红外热像仪的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!