【单片机项目实战】温度控制系统

本项目的主要作用是实现温度调控,通过设定一个预定的温度值,实现实时检测外界温度,当外界温度小于预定值时,电机正转,实现降温效果;当外界温度大于预定值时,电机反转,实现升温效果,从而达到一个维持一定温度范围的控制系统。

所以在实现上以一个单片机作为处理器,利用传感器DS18B20采集温度值,然后将采集到的数据传送给单片机,单片机根据程序设定的温度范围检测,通过控制电机来转动通风,实现温度调节的目的。

其实整个电路组成可以分为四个部分,分别是单片机控制主体,DS18B20温度电路,液晶显示电路和L298N电机驱动电路。

单片机控制主体

是整个温度控制系统的核心,处理中心,所有其他的模块电路都需要通过单片机控制或和单片机交换信息等。而这个过程就是通过单片机的引脚,比如它的输入输出引脚作为信号输入输出的通道以及一些特殊功能引脚等。

单片机引脚主要大类:

**电源引脚:**VCC和GND,供电和接地用的

**复位引脚:**一般是RST,用于芯片的复位,复位系统是单片机中不可缺少的部分

**输入输出引脚:**也就是I/O,用于信号输入或输出信号

**振荡器引脚:**OSC(振荡器),其实就是时钟信号电路,用于连接振荡器,晶振,不管现在很多芯片都有内置振荡器,在时钟要求不是很高的情况下,可以不用额外接振荡器到单片机的振荡引脚中。

**特殊功能引脚:**具有特殊的功能,比如说协议传输如SPI,I2C,UART等等,还可以是LCD驱动,ADC,USB传输等等。

DS18B20温度电路

DS18B20是一款常用的数字温度传感器,具有体积小,抗干扰能力强,精度高的特点,并且有多种封装形式,比如管道式,磁铁吸附式等等。

对于这部分电路,DS18B20模块主要是三个引脚,也就是电源,GND和信号,数据传输到单片机的数据传输引脚,从而获取到温度传感器中检测到的数据。

液晶显示电路

这部分电路主要用来显示单片机想要输出的内容,比如说显示温度,提示信息等等,这部分可以通过软件编程进行设置。

L298N电机驱动电路

L298N是常用的一款步进电机驱动芯片,具有工作电压高,输出电流大,驱动能力强,发热低,抗干扰能力强的特点,在这里用来作为驱动风扇转页马达的部分。并且L298N是利用脉冲宽度调制(PWM)方式进行转速的控制的。

一般会通过控制脉宽时间(比如高电平)占总周期的时间比例,也就是占空比,比例越大,则转速越高,从而通过控制占空比来控制转速。

在硬件电路设计好之后,就是核心部分的软件实现逻辑了,这个系统需要处理好温度值与PWM调速功能的关系,从而完成整个温度控制系统的功能。

项目使用的编程语言是C语言,软体设计部分由于篇幅问题,后期会分单独一篇文章进行分享。

相关推荐
Coding Peasant23 分钟前
GD32E230 I2C从机功能深度解析与实现指南
c语言·stm32·单片机·mcu·arm
214实验室3 小时前
STM32串口打印使用printf乱码问题
stm32·单片机·嵌入式硬件
沐欣工作室_lvyiyi3 小时前
基于单片机的电厂烟道粉尘浓度检测系统(论文+源码)
单片机·嵌入式硬件·毕业设计
Groundwork Explorer4 小时前
异步框架+POLL混合方案应对ESP32 MPY多任务+TCP多连接
python·单片机
d111111111d6 小时前
什么是内存对齐?在STM32上面如何通过编辑器指令来实现内存对齐。
笔记·stm32·单片机·嵌入式硬件·学习·编辑器
bai5459366 小时前
STM32 CuberIDE 中断
stm32·单片机·嵌入式硬件
小叶子来了啊6 小时前
5Arduino 程序结构
单片机·嵌入式硬件
小叶子来了啊7 小时前
1Arduino 简介
单片机·嵌入式硬件
雾岛听风眠8 小时前
电路板维修
单片机·嵌入式硬件
少一倍的优雅8 小时前
hi3863(WS63) 智能小车 (一) 简单介绍
单片机·嵌入式硬件·harmonyos·hi3863