利用STM32制作红外测温仪之硬件设计

最近受疫情的影响详细大家都在家里没事干,这里利用stm32最小系统做一个红外测温仪
这篇教程里我们来制作红外测温仪需要用到的硬件,关于PCB的工程文件,后文会给出。

(一)系统分析

由于我们的功能比较单一,所以对单片机的要求并不高,这里采用STM32F103C8T6作为主芯片,首先我们来设计一个单片机的最小系统,并留出相应的模块接口,方便我们使用。
单片机的最小系统由电源电路、复位电路、晶振电路、下载电路这几部分组成,但是为了实现相应的功能我们还会添加一些额外的模块,本教程利用stm32最小系统开发一个红外测温仪,所以我在电路板上留了相应的接口,同时留下了OLED 屏幕的接口等等

(二)软件的安装

  • Altium Designer 15(32/64位)下载地址:pan.baidu.com/s/1boDUPwN 提取码:dfyf

(三)电路设计

如果没有画板经验的可以参考我的另一篇文章:新手如何在Altium Designer中绘制电路板,这里我直接给出我的设计电路,电路图的设计一定要注意每个芯片的连接是否正确,以及芯片的封装是否是我们想要的。
图一
这里图片太大看得不太清楚,下面分模块介绍:

(1)电源模块

电源模块

(2)cpu模块

cpu

(3)复位电路

复位

(4)下载电路

xiazia

(四)PCB布局设计

关于PCB的布局、布线这里有相当多的门道,如果你没有涉及到高频一般你的电路出问题的概率会大大降低,如果你的需求比较高,就要严格遵守设计规则,因为规则实在太多,这里不做说明,有需要了解的可以关注我后面发的教程,或者网上搜教程学习。
正面:
正面
反面:
反面
大家可以照着我的原理图自己布局,或者按照我的也行,一定要动手!!

(五)效果预览图

我们最终的效果应该这样
效果图1
tu

(六)打板焊接

等到上面都做完了,就可以把你的PCB文件拿去打板了,这是我的成品展示:
展示
上面的工程文件在这里可以下载红外测温仪硬件实现


本文章仅供学习交流用禁止用作商业用途,文中所有内容均为原创未经授权不得转载

微信公众号:zhjj0729

微博:文艺to青年

简书:水枂

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在博客中插入背景音乐

1.首先进入网音乐官方网站; 2.查找自己喜欢的歌,看到如下界面 3.点击"生成外链播放器" 4.看到下面的html代码了吗?将代码进行复制。 5.进入博客园,点击 "管理" ->"设置", 将代码复制…

常用存储器介绍

注意:"易失/非易失"是指存储器断电后,它存储的数据内容是否会丢失的特性。 (一)RAM和ROM 1.1 RAM RAM即随机存储器,它是指存储器中的数据被读入或者写入与信息所在位置无关,时间都是相同的 1…

TortoiseGit与github实现项目的上传

1. 下载并安装相关软件 这里主要涉及的软件包括msysgit和TortoiseGit。 msysgit的下载地址:http://msysgit.googlecode.com/files/Git-1.7.4-preview20110204.exe TortoiseGit的下载地址:http://code.google.com/p/tortoisegit/downloads/list&#xff0…

uboot启动流程分析

Uboot的启动流程分为两个阶段,第一阶段主要是汇编语言编写,第二阶段是C语言编写,每个阶段所做的工作不同,这篇文章分析的是uboot 2010版,以tiny4412的uboot为例。 启动过程涉及的主要文件: arch/arm/cpu/a…

(二)linux内核镜像制作

(一)目的 在进行嵌入式开发的时候,我们往往会先在电脑上安装交叉编译器,然后编译目标板上的代码,最后把代码下载到电路板中,嵌入式系统组成包括:BootLoaderkernelfilesystemapplication&#x…

js+css实现骰子的随机转动

网上找的例子&#xff0c;然后增添了新的东西&#xff0c;在这里展示一下...... 效果图预览&#xff1a; <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html x…

linux的mount和umount指令使用

mount即挂在操作&#xff0c;磁盘或分区创建好文件系统后需要挂载到一个目录&#xff08;一般mount在/mnt下&#xff09;才能使 用&#xff0c;和winsdows不同的是在linux下需要手动挂载。 用法&#xff1a;mount [-t文件系统] [选项] 设备目录注意&#xff1a;[ ]为可选项…

斐波那契的四种求法

首先看一下斐波那契的矩阵表示&#xff1a; 数列的递推公式为&#xff1a;f(1)1&#xff0c;f(2)2&#xff0c;f(n)f(n-1)f(n-2)(n>3) 用矩阵表示为&#xff1a; 进一步&#xff0c;可以得出直接推导公式&#xff1a; #include<iostream> #include<cstring> #i…

利用STM32制作红外测温仪之软件设计(MLX90614)

目录&#xff08;一&#xff09;工程目录如图&#xff1a;&#xff08;二&#xff09;main函数实现&#xff1a;&#xff08;三&#xff09;MLX90614测温代码实现前面介绍了使用 STM32制作红外测温仪硬件设计,今天来说一下软件的实现&#xff0c;具体的程序&#xff0c;完整的k…

Windows下使用Dev-C++开发基于pthread.h的多线程程序

一、下载Windows版本的pthread 目前最新版本是&#xff1a;pthreads-w32-2-9-1-release.zip。 二、解压pthread到指定目录 我选择的目录是&#xff1a;E:\DEV-CPP\Pthread完成后&#xff0c;该目录会多出三个文件夹&#xff1a;Pre-built.2&#xff0c;pthreads.2&#xff0c;Q…

(三)linux之根文件系统的制作

&#xff08;一&#xff09;准备工作 Ubuntu 16.04系统linux-3.5内核:linux-3.5-20190929交叉编译工具arm-linux-gcc-4.5.1-v6-vfp-20120301.rarbusybox源码包&#xff1a;busybox-1.21.1.rar &#xff08;二&#xff09;工具介绍 &#xff08;1&#xff09;交叉编译器 这个…

(四)Linux内核模块化编程

目录&#xff08;一&#xff09;模块化编程简介&#xff08;二&#xff09;安装卸载模块命令.&#xff08;三&#xff09;将自定义功能添加到内核三种方法&#xff08;1&#xff09;修改Kconfig和Makefile&#xff08;2&#xff09;直接修改功能对应目录下的Makefile文件&#…

基于X86平台的PC机通过网络发送一个int(32位)整数的字节顺序

1.字节顺序  字节顺序是指占内存多于一个字节类型的数据在内存中的存放顺序&#xff0c;通常有小端、大端两种字节顺序。小端字节序指低字节数据存放在内存低地址处&#xff0c;高字节数据存放在内存高地址处&#xff1b;大端字节序是高字节数据存放在低地址处&#xff0c;低字…

codeforces Round #320 (Div. 2) C. A Problem about Polyline(数学) D. Or Game(暴力,数学)

解题思路&#xff1a;就是求数 n 对应的二进制数中有多少个 1 #include <iostream> #include<cstdio> using namespace std; int main(){int n;cin>>n;int ans 0; // while(n){//这也是一种好的方法 // n n&(n-1); // ans; // }while(n…

(五)Linux之设备驱动模型

目录&#xff08;一&#xff09;Linux内核驱动简介&#xff08;二&#xff09;杂项设备驱动模型&#xff08;1&#xff09;相关接口&#xff08;2&#xff09;杂项设备注册过程&#xff08;三&#xff09;早期经典字符设备驱动模型&#xff08;1&#xff09;相关接口&#xff0…

(六)Linux之设备驱动模型(续)

前面我们学习了杂项设备驱动模型、早期经典字符设备驱动模型,这一小节来讲解Linux中的标准字符设备驱动。 目录&#xff08;一&#xff09;为什么引入标准字符设备驱动模型&#xff08;二&#xff09;相关接口&#xff08;三&#xff09;注册流程&#xff08;四&#xff09;程序…

(八)linux驱动之ioctl的使用

这篇文章给大家讲解一下ioctl的简单使用&#xff0c;关于ioctl更详细的教程后面有机会单独写出来 &#xff08;一&#xff09;什么是ioctl ioctl是设备驱动程序中对设备的I/O通道进行管理的函数。所谓对I/O通道进行管理&#xff0c;就是对设备的一些特性进行控制&#xff0c;例…

网络爬虫(1)

参考&#xff1a;http://www.cnblogs.com/dongkuo/p/4851735.html算法分析我们现在从需求中提取关键词来逐步分析问题。 首先是“种子节点”。它就是一个或多个在爬虫程序运行前手动给出的URL&#xff08;网址&#xff09;&#xff0c;爬虫正是下载并解析这些种子URL指向的页面…

(十)Linux之等待队列

&#xff08;一&#xff09;阻塞和非阻塞 阻塞&#xff1a;执行设备操作时&#xff0c;若不能获得资源&#xff0c;则挂起进程进入休眠直到满足可操作的条件后再操作。 非阻塞&#xff1a;进程在不能进行设备操作时&#xff0c;并不挂起&#xff0c;它要么放弃&#xff0c;要么…

校验码(海明校验,CRC冗余校验,奇偶校验)

循环冗余校验码 CRC码利用生成多项式为k个数据位产生r个校验位进行编码,其编码长度为nkr所以又称 (n,k)码. CRC码广泛应用于数据通信领域和磁介质存储系统中. CRC理论非常复杂,一般书就给个例题,讲讲方法.现在简单介绍下它的原理: 在k位信息码后接r位校验码,对于一个给定的(n,k…