• 基于STM32室内空气净化监测系统设计


    **单片机设计介绍,1649基于STM32室内空气净化监测系统设计

    一 概要

      信息时代的进步,我们的生活潜移默化中发生了许多改变,物联网作为一个 陌生但是早已熟悉的新词也在引领着如今的潮流,但物联网又该如何理解呢?
      互联网作为主流,是世界的信息数据得以迅速的进行交互流通,而物联网,则是使物 体与网络交互。具体来讲,就像本文的空气质量检测功能一样,单一检测空气质量的仪器 只具备检测功能,不具备通过网络交互功能,因此在本课题中,通过物联网芯片可以将检 测到的数据上传到云端,供以各方设备订阅查看。这就是实现物体联网功能的案例之一。 即借由互联网,将传感器收集到的数据上传发布。
      本课题是以空气质量的检测为主,使用最为流行的物联网协议MQTT协议与云服务器 进行数据的上传与下载。系统由Arduino连接的若干空气质量检测传感器和ESP32连接的 云平台服务器组成。通过传感器数据进行数据的收集再上传到云端。为便于全面的进行检 测操作另有两个功能:制作微信小程序显示主要数据以及简单的灯光开关操作;ESP32连 接电机驱动和直流电机以及摄像头,可实现局域网视频流传输并达到远程操作小车移动的 功能。
    关键词:Arduino开发板;ESP32-CAM开发板;空气检测传感器;Web界面;MQTT;

    二、功能设计

    基于STM32室内空气净化监测系统设计。设计包含原理图、PCB、程序、演示视频等。

    实物制作电路方案。

    设计思路

    设计思路
    文献研究法:搜集整理相关单片机智能手环系统相关研究资料,认真阅读文献,为研究做准备;

    调查研究法:通过调查、分析、具体试用等方法,发现单片机智能手环系统的现状、存在问题和解决办法;

    比较分析法:比较不同单片机智能手环系统的具体原理,以及同一类传感器性能的区别,分析单片机智能手环系统的研究现状与发展前景;

    软硬件设计法:通过软硬件设计实现具体硬件实物,最后测试各项功能是否满足要求。

    在这里插入图片描述

    三、 软件设计

    本系统原理图设计采用Altium Designer19,具体如图。在本科单片机设计中,设计电路使用的软件一般是Altium Designer或proteus,由于Altium Designer功能强大,可以设计硬件电路的原理图、PCB图,且界面简单,易操作,上手快。Altium Designer19是一款专业的整的端到端电子印刷电路板设计环境,用于电子印刷电路板设计。它结合了原理图设计、PCB设计、多种管理及仿真技术,能够很好的满足本次设计需求。

    ————————————————

    仿真实现
    本设计利用protues8.7软件实现仿真设计,具体如图。

    Protues也是在单片机仿真设计中常用的设计软件之一,通过设计出硬件电路图,及写入驱动程序,就能在不实现硬件的情况进行电路调试。另外,protues还能实现PCB的设计,在仿真中也可以与KEIL实现联调,便于程序的调试,且支持多种平台,使用简单便捷。
    ————————————————

    原理图

    在这里插入图片描述

    在这里插入图片描述

    五、 程序

    本设计利用KEIL5软件实现程序设计,具体如图。作为本科期间学习的第一门编程语言,C语言是我们最熟悉的编程语言之一。当然,由于其功能强大,C语言是当前世界上使用最广泛、最受欢迎的编程语言。在单片机设计中,C语言已经逐步完全取代汇编语言,因为相比于汇编语言,C语言编译与运行、调试十分方便,且可移植性高,可读性好,便于烧录与写入硬件系统,因此C语言被广泛应用在单片机设计中。keil软件由于其兼容单片机的设计,能够实现快速调试,并生成烧录文件,被广泛应用于C语言的编写和单片机的设计。
    在这里插入图片描述

    ————————————————

    程序

    include"stm32f10x.h"
    void GPIoConfiguration(void)
    GPIo InitTypeDefGPIo InitStructure;
    GPIo_InitStructure.GPIo_Pin=GPIo_Pin_1o;
    GPIo InitStructure.GPIo Mode= GPIo Mode IN FLOATING;
    GPIoInit(GPIoA,&GPIoInitStructure);
    GPIoInitStructure.GPIoPin=GPIoPin9
    GPIoInitStructure.GPIoSpeed=GPIoSpeed 5oMHz;
    GPIoInitStructure.GPIoMode=GPIoModeAFPP:
    GPIoInit(GPIoA,&GPIo InitStructure);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    文档

    在这里插入图片描述

    六、 文章目录

    目 录

    摘 要 I
    Abstract II
    引 言 1
    1 控制系统设计 2
    1.1 主控系统方案设计 2
    1.2 传感器方案设计 3
    1.3 系统工作原理 5
    2 硬件设计 6
    2.1 主电路 6
    2.1.1 单片机的选择 6
    2.2 驱动电路 8
    2.2.1 比较器的介绍 8
    2.3放大电路 8
    2.4最小系统 11
    3 软件设计 13
    3.1编程语言的选择 13
    4 系统调试 16
    4.1 系统硬件调试 16
    4.2 系统软件调试 16
    结 论 17
    参考文献 18
    附录1 总体原理图设计 20
    附录2 源程序清单 21
    致 谢 25

  • 相关阅读:
    背包问题~
    E900V22C刷入CoreELEC、挂载云盘
    多态的定义 以及 虚函数重写(覆盖)
    新品发布!无人机装调检修实训系统
    8年经验面试官详解 Java 面试秘诀
    【附源码】计算机毕业设计JAVA车辆调度管理系统
    CentOS7安装部署Nacos
    可变参数与日志demo
    数字化转型趋势下,小程序容器成政务平台建设的关键
    定语从句------六级
  • 原文地址:https://blog.csdn.net/2301_79745346/article/details/134080806