当前位置: 首页 > news >正文

毕设系列 -- 基于STM32的人体红外测温枪温度采集系统

文章目录

  • 1 简介
  • 2 主要器件
  • 3 实现效果
  • 4 设计原理
    • MLX90614 红外温度传感器
  • 5 部分实现代码
  • 6 最后


1 简介

Hi,大家好,这里是丹成学长,今天向大家介绍一个学长做的单片机项目

基于STM32的人体红外测温枪温度采集系统

大家可用于 课程设计 或 毕业设计

技术解答
毕设帮助:<Q>746876041

2 主要器件

  • STM32

  • GY-906 温度传感器

  • OLED 显示器

  • 红外热释电传感器

  • TP4056 充电器模块

  • 18650 电池

  • 18650 电池座

  • 5 V DC-DC 升压转换器

  • 翘板开关 -15 × 21 毫米

  • 5 毫米绿色 LED

  • 5 毫米红色 LED

工具清单:

  • 烙铁

  • 线切割机

  • 剥线钳

3 实现效果

在这里插入图片描述

4 设计原理

在这里插入图片描述
工作原理很简单,红外测温传感器MLX90614在额头与传感器之间的距离(由红外传感器测量)匹配设定值时读取人体温度。传感器读数发送到 Arduino 进行处理,处理后的值显示在 0.96" OLED 显示屏上。

除了 OLED 显示屏外,还使用了两个 LED 和一个蜂鸣器来指示输出。

  1. 当体温正常时,绿色LED(LED1)亮,蜂鸣器鸣叫。

  2. 当体温高于 104 华氏度时,红色 LED ( LED2 ) 会亮起,蜂鸣器会发出较长时间的哔哔声。

MLX90614 红外温度传感器

MLX90614 是一款用于非接触式温度测量的红外测温仪,能够测量 -70 至 380°C 之间的温度。该传感器采用红外敏感热电堆探测器芯片和信号调节ASIC集成在一个芯片中。它基于 Stefan-Boltzmann 定律工作,该定律指出所有物体都会发射 IR 能量,并且该能量的强度将与该物体的温度成正比。传感器中的传感单元测量目标物体发射了多少红外能量,计算单元使用 17 位内置 ADC 将其转换为温度值,并通过 I2C 通信协议输出数据。

传感器测量物体温度和环境温度以校准物体温度值。MLX 90614 传感器可以读取 -40 到 125 ˚C(-40 到 257 °F)范围内的环境温度和 -70 到 380 ˚C(-94 到 716 °F)范围内的物体温度。

红外测温仪与 Arduino 的连接非常简单,因为它像许多其他组件一样使用 I2C 通信接口。
MLX90614 温度计有 4 个引脚:VIN、GND、SCL 和 SDA。

连接应如下所示:

stm32–> MLX 90614

5V —> VIN
地 --> 地
gpio2 ----> SCL
gpio3 ----> SDA

其他器件就不展示了

最后接线如下:
在这里插入图片描述

5 部分实现代码

读取温度代码

u16 SMBus_ReadMemory(u8 slaveAddress, u8 command)
{u16 data;u8 Pec;	u8 DataL=0;u8 DataH=0;	u8 arr[6];u8 PecReg;u8 ErrorCounter;ErrorCounter=0x00;// Initialising of ErrorCounterslaveAddress <<= 1;	//2-7位表示从机地址 从机地址左移一位,把读写位空出来	do{
repeat:SMBus_StopBit();--ErrorCounter;	if(!ErrorCounter) //ErrorCounter=0?{break;	//如果为0就跳出do-while{}循环}SMBus_StartBit();if(SMBus_SendByte(slaveAddress))//发送从机地址最低位Wr=0表示接下来写命令{goto	repeat; }if(SMBus_SendByte(command))//发送命令{goto	repeat;}SMBus_StartBit();if(SMBus_SendByte(slaveAddress+1))	//发送从机地址+1最低位Rd=1表示接下来读数据{goto	repeat; }DataL = SMBus_ReceiveByte(ACK);	//读低位数据保存到DataL DataH = SMBus_ReceiveByte(ACK); //读高位数据保存到DataHPec = SMBus_ReceiveByte(NACK);	//读校验数据保存到Pec  SMBus_StopBit();arr[5] = slaveAddress;	arr[4] = command;arr[3] = slaveAddress+1;arr[2] = DataL;	arr[1] = DataH;	arr[0] = 0;	PecReg=PEC_Calculation(arr);//Calculate CRC 数据校验}while(PecReg != Pec);data = (DataH<<8) | DataL;return data;
}

6 最后

技术解答
毕设帮助:<Q>746876041

单片机毕设项目大全:
https://blog.csdn.net/huawei123444/article/details/119822845

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-35161.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

laravel 8 实现excel 导出

composer 下载 composer require maatwebsite/excel 引入 use Elasticsearch\ClientBuilder; 创建excel文件 php artisan make:Exports FangExports FangExports 里面 return Fang::all(); php后台 //导出房东excelpublic function exports(){return Excel::download(…...

Vue相关:

目录 1,说一下vue最大特点是什么或者说vue核心是什么 2,说一下vue常用基本指令有哪些 3,Vue常用的修饰符...

【Unity】如何将资源包里的Prefabs资源为己所用

步骤一、将所需要的prefab从外部导入的资源拖入Scene中。二、右键该预制体&#xff0c;选择Unpack Prefab Completely取消该预制体及其子物体与资源包中预制体的关联。三、将该预制体拖动到自己的prefabs文件夹目录下&#xff0c;制作成自己项目的预制体。四、在Project面板下&…...

防火墙高可靠性

双机热备、BFD双向转发检测、IP-LINK链路检测、Link-Group逻辑组、ETH-Trunk链路捆绑、Bypass&#xff0c;跨数据中心集群&#xff0c;双主控、业务板备份、数据中心会话同步 双机热备 目的&#xff1a;为了防止单点故障 实现&#xff1a;两台硬件软件相同的FW之间通过一条独…...

手写Promise.all()方法

有1个promise报错了&#xff0c;其他的promis会执行吗&#xff1f; 会的&#xff0c;因为Promsie在实例化时候就已经执行完了。手写Promise.all()方法 function PromiseAll(promiseArray){//返回的一定是个proimsereturn new Promise((resolve,reject)>{//首先判断传入的是…...

Centos8.0系统升级到最新版本

一 &#xff0c;Centos8.0更换国内源&#xff08;阿里源&#xff09; 1&#xff0c; 备份旧的配置文件 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup2&#xff0c;进入cd /etc/yum.repos.d cd /etc/yum.repos.d3&#xff0c;下载新的 Ce…...

高端音响的死亡被大大夸大了

几年前&#xff0c;在 MP3 盗版时代的鼎盛时期——当高端音频世界哀叹 MP3 文件的糟糕音质&#xff0c;而 MP3 用户乐于用音质换取免费音乐时——一位业内同事问我我以为高端音频已经死了。我向她保证不&#xff0c;一部分音乐迷&#xff0c;虽然可能不是主流&#xff0c;但总是…...

Java学习笔记--13.网络编程

Java学习笔记–13 第十章 网络编程 目录Java学习笔记--13前言网络编程1.定义2.TCP通信(1).ServerSocket(2).Socket3.UDP通信(1).发送方(2).接收方前言 21世纪&#xff0c;走进了信息时代&#xff0c;各种各样的软件层出不穷&#xff0c;但是总离不开程序开发&#xff0c;离不…...

python100例045求1-100之和用sum(range(1,101))

""" 题目045&#xff1a;统计 1 到 100 之和 """ def test045():count 0for i in range(1, 101):count iprint(count)# 二print(sum(range(1, 101))) test045()...

wimform 继承窗体卡顿解决

get { const int CS_NOCLOSE 0x200; CreateParams cp base.CreateParams; cp.ClassStyle cp.ClassStyle | CS_NOCLOSE; if (!DesignMode) { cp.ExStyle...

git 替换commit的账户与邮箱信息 GitLab: Committer‘s email does not follow the pattern

最终解决方法来源&#xff1a; https://segmentfault.com/q/1010000006999861 https://www.cnblogs.com/zh7791/p/12986083.html ① git rebase -i HEAD~N N代表前N次的提交记录 ② 出现记录后键入i进入INSERT模式&#xff0c;在需要修改的条目上&#xff0c;将pick改为edit…...

后端返回状态码401, 获取不到怎么办?

传送门...

解决for循环中异步请求顺序不一致的问题

解决for循环中异步请求顺序不一致的问题参考文章&#xff1a; &#xff08;1&#xff09;解决for循环中异步请求顺序不一致的问题 &#xff08;2&#xff09;https://www.cnblogs.com/mo3408/p/12163012.html 备忘一下。...

可以ping通网关,dns。但是死活不能上网????怎么回事?

苹果电脑重装了一把win7系统。连接手机热点没问题&#xff0c;连接店里wifi也没问题。但是呢连接家里wifi死活不能上网&#xff01;&#xff01;&#xff01; 各种网上搜索啊&#xff0c;花了三四个小时&#xff0c;找到了各种解决方法&#xff0c;比如什么winsock reset还有什…...

python3中 下载wechatpy后 没有 work模块

1、 环境 win10 2、python3.6 3、wechatpy 最新版本 4、python3 中安装 wechatpy 模块后找不到 work模块 5、错误如下&#xff1a; ModuleNotFoundError: No module named wechatpy.work 这个错误明显是找不到wechatpy.work这个模块 6、查看wechatpy 使用文档 &#x…...

机器学习----支撑向量机(SVM)

SVM 支持向量机&#xff08;Support Vector Machine, SVM&#xff09; 图中是一个样本空间&#xff0c;里面有一些样本点&#xff0c;分成红色和蓝色两类。 逻辑回归是要找到一根决策边界&#xff0c;由决策边界把数据分成两类。但可能存在这样一些数据&#xff08;下图&…...

Spring都没弄明白凭什么拿高薪?真香系列

正文 二叉树 由 n&#xff08; n > 0&#xff09;个有限节点组成一个具有层次关系的集合&#xff0c;看起来就像一个倒挂的树&#xff0c;因此称这样的数据结构为树。 一个节点的子节点个数叫做度&#xff0c;通俗的讲就是树叉的个数。树中最大的度叫做树的度&#xff0c…...

一天一道ctf 第36天

[NPUCTF2020]ReadlezPHP 点进源码发现/time.php?source&#xff0c;访问一下得到 <?php #error_reporting(0); class HelloPhp {public $a;public $b;public function __construct(){$this->a "Y-m-d h:i:s";$this->b "date";}public functi…...

从空间角度研究类,类与类之间的关系

class A:address 西安def __init__(self,name):self.name namedef func(self):if self.name dsb:self.skins jlfdef func1(self):print(self.__dict__)A.aaa ysh# obj A(dsb) # 类外面可以给对象封装属性 # respons input(sbs) # if respons s: # obj.wepon AWM #…...

dockerfile的详细介绍

Dockerfile 关键字作用备注FROM指定父镜像指定dockerfile基于那个image构建MAINTAINER作者信息用来标明这个dockerfile谁写的LABEL标签用来标明dockerfile的标签 可以使用Label代替Maintainer 最终都是在docker image基本信息中可以查看RUN执行命令执行一段命令 默认是/bin/sh…...

DEDE织梦如何做中英文多语言站

说道中英文站&#xff0c;是很多用户想用dedecms织梦程序做多语言站&#xff0c;下面网分享下做中英文多语言版本的站点如何操作&#xff0c;希望能帮助到大家。 一、首先在后台建栏目&#xff0c;有三点需要注意 1.需要做几种语言就加几个大的栏目。 2.栏目“常规选项”的文…...

C/C++问题处理:(Leetcode) Line 16: Char 21: error: redefinition of ‘j‘ for(int j=0,j<n;j++)

今天刷leetcode 遇到了个小问题&#xff1a; redefinition of j 意思是 j 这个变量重复定义&#xff0c;可往前检查了一遍&#xff0c;并没有定义这个变量。 网上的解释都是说&#xff1a;目标头文件.h没有加条件编译语句 其实还有一种情况&#xff0c;就是像上面代码里 f…...

P2058 [NOIP2016 普及组] 海港 题解

P2058 [NOIP2016 普及组] 海港 题解 题目描述 小K是一个海港的海关工作人员&#xff0c;每天都有许多船只到达海港&#xff0c;船上通常有很多来自不同国家的乘客。 小K对这些到达海港的船只非常感兴趣&#xff0c;他按照时间记录下了到达海港的每一艘船只情况&#xff1b;对…...

python100例045求1-100之和用sum(range(1,101))

""" 题目045&#xff1a;统计 1 到 100 之和 """ def test045():count 0for i in range(1, 101):count iprint(count)# 二print(sum(range(1, 101))) test045()...

Laravel ORM 订单 分表

Laravel ORM 订单 分表创建数据 简介数据库表用户表订单表订单商品表示例ORM新建 `_Model.php`文件。作为基类`Order.php` 订单模型继承_Model`OrderGoods.php` 订单商品继承_Model控制器订单入库访问简介 开发项目,经常碰到订单量暴增的问题,简单点处理,需要给订单表做分表…...

限定网页在固定IP范围内访问

<?php // 限制IP测试 /** * HOST访问限制 支持 IP(单IP,多IP,*通配符,IP段) 域名(单域名,多域名,*通配符) * 根据判断实现IP地址 白名单黑名单 * Author:70(qq781787584) * @param unknown $host 当前host 127.0.0.2 * @param unknown $list 允许的host列表 127.0.0.*,192…...

AI悦创·私教答疑|Python 字符串数字顺序分割

你好&#xff0c;我是悦创。 这里我就直接上我学员的提问&#xff1a; def strSplit(strSplit):if not strSplit.isdigit():return Nonestart_index 0end_index 2for _ in range(len(strSplit)):r strSplit[start_index:end_index]if len(r) > 1:print(r)start_index 1…...

LeetCode练习——其他(有效的括号)

给定一个只包括 ‘(’&#xff0c;’)’&#xff0c;’{’&#xff0c;’}’&#xff0c;’[’&#xff0c;’]’ 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 解法一&#…...

Javascript ES6中export与import指令使用说明

javascript ES6 支持模块化编程&#xff0c;模块是独立的文件js文件&#xff0c;该文件内部的所有的变量与函数都是局限在该模块内部&#xff0c;外部模块无法访问&#xff0c;如果需要在调用的模块之内使用这些符号&#xff0c;模块内部的变量与函数必须设置为输出。符号的输出…...

超11万字整理完k8s的核心组件pod全部功能详解,理论代码超详细,建议跟着做一遍实验【含 label 标签使用】【1】

文章目录说明【必看】第二篇文章标题和链接第二篇文章标题和链接第三篇文章标题和链接创建及删除pod创建一个pod-1的文件夹和命名空间镜像准备【node节点执行】创建pod【虚拟机】方式1&#xff1a;命令行的方式【不建议】默认创建加imagePullPolicy参数创建说明方式2&#xff1…...

dbc2000 注册机|dbc2000 注册码注册机下载

点击下载来源&#xff1a;dbc2000 注册机 dbc2000 注册机是同名源程序软件的注册机软件&#xff0c;该源程序软件是一款应用于数据库搭建以及数据写入的数据库架设工具&#xff0c;它拥有强大的数据写入功能&#xff0c;在作为应用程序使用时&#xff0c;它不仅可以充当数据属性…...

秋招面经第八弹:网易二面-数据开发工程师

秋招第八弹&#xff1a;网易二面-数据开发工程师 写在最前&#xff1a;秋招以来一直在冲&#xff0c;因为事情比较多&#xff0c;对于笔试面试一直没有复盘&#xff0c;现在靠仅存的记忆把面试的一些问题记录下来&#xff0c;尽可能记录出能回忆到的问题&#xff0c;但可能记的…...

安卓课程格子APP

https://download.csdn.net/download/weixin_57836618/73810452 功能演示&#xff1a; 查看所有课程 点击主页面空白处即可添加课程 添加课程之后查看课程 查看双周课程 查看单周课程 6.查看课程详情...

强化学习——格子世界

强化学习——格子世界 项目源码地址&#xff1a;https://gitee.com/infiniteStars/machine-learning-experiment 1. 实验内容 2. 实验代码 import numpy as np import matplotlib.pyplot as plt from matplotlib.table import Table from xml.dom.minidom import Document #手…...

华为机试 - 跳格子游戏

目录 题目描述 输入描述 输出描述 用例 题目解析 算法源码 题目描述 地上共有N个格子&#xff0c;你需要跳完地上所有的格子&#xff0c;但是格子间是有强依赖关系的&#xff0c;跳完前一个格子后&#xff0c;后续的格子才会被开启&#xff0c;格子间的依赖关系由多组st…...

php 爬课程表信息,Ruby爬取教务系统生成课程表

我为什么要虐自己最近觉得课程格子广告越来越多&#xff0c;乱七八糟的东西越来越多&#xff0c;完全失去了一开始的存在价值&#xff0c;并且没有电脑端app&#xff0c;想查看课程必须拿出手机&#xff0c;而我使用电脑频率要比手机高&#xff0c;所以才有了折腾的动力。于是我…...

android 课程表 ui,UICollectionViewLayout实现课程表布局

因为项目中有课程表的相关模块&#xff0c;第一时间想到用UICollectionView。然而后期的需求越来越复杂&#xff0c;每个格子需要展示的内容越来越多&#xff0c;所以不得不寻找合适的解决方案。最后发现自定义UICollectionViewLayout可以实现我的需求。先放效果图&#xff1a;…...

Android自定义View课程表,Android 自定义View课程表表格

自己闲下来时间写的一个课表控件使用的自定义LinearLayout 里面View都是用代码实现的 最终效果如下图 写的可能有问题希望多多指点创建一个自定义LinearLayout 控件用来装载课程的信息和课程的周数 和节数大概的布局三这样的根据上面的看来觉得总体布局我分了两个 上面的星期是…...

java课程设计设计_java课程设计

1. 团队课程设计博客链接https://www.cnblogs.com/choco1ate/p/12172223.html2.本组课题及本人任务本组课题&#xff1a;泡泡堂(炸弹人)游戏本人任务&#xff1a;Box类(游戏地图中的每个方格)Bomb类(游戏过程中的)游戏玩家输赢信息的文件储存3.需求分析Box类&#xff1a;该类为…...

《课程格子》的一个笔试题目

题目如下&#xff0c;感觉很适合喜欢琢磨的程序员&#xff0c;也是考验你编码风格的时候。 Lets make a tower defense game&#xff08;塔防游戏):1. You have 1 tower, with H health and D dps(damage per second).2. There are n attackers, each with h_i health and d_i …...

Android仿照超级课程表 or 课程格子 一键提取课表功能(方正系统)

参考文章http://blog.csdn.net/sbsujjbcy ,本文仿照‘ 安卓弟 提供的android 项目实战——打造超级课程表一键提取课表功能文章&#xff0c;对他的代码进行了修改和补充&#xff0c;为什么要修改呢&#xff1f;原因是安卓弟的那个源码版本过于老旧&#xff0c;很多方法已经过…...

中职计算机专业优质课公开课,【初中信息技术优质课】1-特等奖展示课-陈旭龙《二进制与计算机》-优质课视频『提高网』...

本视频的标题是&#xff1a;【初中信息技术优质课】1-特等奖展示课-陈旭龙《二进制与计算机》-优质课视频『提高网』出自听课提高网(tigaowang.com)&#xff0c;本站致力收集全国各地的优质课教学视频、公开课视频、说课面试试讲视频等&#xff0c;是您提升教学水平、参加赛课最…...

网络公开课推荐

VeryCD 曾经是一个非常好的平台, 可以下载许多好东西. 但是前段时间打击盗版很多东西都不能下了. 当然, 我对于VeryCD的感情不是那些盗版的东西, 而是曾经让我受益匪浅的网络公开课. 当然了, 以前的网速太慢, 通常需要下载下来看, 电脑放着一个晚上就下载了, 现在在线视频看也不…...

北大AI公开课

转自 微信公众号 新智元新智元推荐 整理&#xff1a;张易 胡祥杰【新智元导读】本文盘点了刚刚结束的北大 AI 公开课的精彩干货&#xff0c;附全部的文字实录链接和视频链接&#xff0c;是全景式地了解中国 AI 产业发展现状和趋势极为珍贵的资料。首先告诉大家&#xff0c;这篇…...

公开课可下载资源汇总

原文地址&#xff1a;http://blog.coursegraph.com/%E5%85%AC%E5%BC%80%E8%AF%BE%E5%8F%AF%E4%B8%8B%E8%BD%BD%E8%B5%84%E6%BA%90%E6%B1%87%E6%80%BB 微博上经常有同学分享一些公开课资源&#xff0c;包括可下载的网盘资源&#xff0c;课件资源等等&#xff0c;但是时间长了就忘…...

统计学公开课大盘点

统计学博大精深&#xff0c;用途广泛&#xff0c;是一门非常重要的基础课程。在接触了一些统计学公开课后&#xff0c;发现网络上还有很多的免费的在线统计学课程可以用来学习和复习相关的知识点&#xff0c;只是缺乏一些整理和汇总。之前课程图谱微博做了很多课程的推荐&#…...

Github上的各大高校资料以及国外公开课视频

2019 第 37 篇文章&#xff0c;总第 61 篇文章本文大约 1800 字&#xff0c;阅读大约需要 5 分钟最近发现兴起了一股在 Github 上大学的潮流&#xff0c;目前可以选择的大学包括清华、北大、上海交通大学、中国科学技术大学、中山大学&#xff0c;然后今天还发现还可以选择上国…...

公开课

公开课 现在网上的学习资料挺多的&#xff0c;下面搜集了一些大学公开课或者精品课程的视频地址&#xff0c;有需要的可以参考下,也希望大家有学习资源的可以回复下。1&#xff0c;北京大学公开课&#xff1a;http://opencourse.pku.edu.cn/course/opencourse2/其中数据结构和离…...

公开课资源

在B站好好学习 【双字/合集】“线性代数的本质”系列合集 TF Girls 修炼指南 2016蒙特利尔大学 暑期深度学习公开课 机器学习基石(Machine Learning Foundations) 机器学习技法 (Machine Learning Techniques)...

公开课视频

各位同学&#xff0c;关注新浪微博 易柏教育 可了解最新的现场公开课信息&#xff0c;及公开课视频抢先看&#xff01; 易柏教育公开课的往届视频链接如下&#xff1a; 《Linux集群基础》&#xff1a;http://v.youku.com/v_show/id_XNDkzNTgyODg0.html 《LVS集群部署》&…...