TI线下MSPM0G3507温控器报告
使用MSPM0G3507 制作温控控制系统涉及硬件设计、软件编程以及温度传感器接口等多个方面接口工作的的综合性项目。
本文引用地址:https://www.eepw.com.cn/article/202503/468209.htm以下是一个详细的规划方案及系统功能的概述。
1 硬件
1.清单
扩展板:自绘画3507 扩展板。
扩展板设备
传感器:温湿度AHT21 传感器。
显示屏:串口屏。
按键:四个轻触按键。
指示灯:贴片RGBLED(红绿蓝)色。
蜂鸣器:电磁式有源一体有源蜂鸣器。
风机:小电机替代,3 ~ 5 V。
水泵:待定(小电机)。
照明:LED 灯珠。
加热:2.54 端口(用火机模拟)。
电源:4.5 V ~ 28 V 转5 V 3 A 电源,宽电压输入。5 V 输入再转3.3 V。
预留:无法模块,485,SPI 接口功能。
2.硬件接口设计介绍
温湿度AHT21 传感器接口:
AHT21 是一个数字温湿度传感器,通过I2C 接口与MSPM0G3507 通信。
在扩展板上设计I2C 接口连接,包括SCL(时钟线)和SDA(数据线),以及供电和地线。
串口屏接口:
串口屏通过UART(通用异步收发传输器)接口与MSPM0G3507 通信。设计UART 接口,包括TX(发送)、RX(接收)、供电和地线。
轻触按键:
设计四个轻触按键,每个按键连接到MSPM0G3507的一个GPIO 引脚。
贴片RGB LED:
RGB LED 需要三个GPIO 引脚分别控制红、绿、蓝三种颜色的亮度。设计三个GPIO 引脚接口,以及LED的共阳极连接。
电磁式有源蜂鸣器:
有源蜂鸣器只需要一个GPIO 引脚来控制其开关。设计一个GPIO 引脚接口,连接到蜂鸣器的控制端。
风机接口:
风机(小电机)通过PWM(脉冲宽度调制)或简单的GPIO 控制。设计一个PWM 或GPIO 引脚接口,以及风机的供电和地线。
水泵接口(待定,使用小电机替代):
同风机接口设计,预留PWM 或GPIO 引脚接口。
LED照明灯珠:
设计一个或多个GPIO 引脚接口,用于控制LED 灯珠的开关。
加热接口(使用电阻模拟加热装置):
使用电阻作为加热元件来模拟加热过程更为实际和可控。电阻加热是一种常见的加热方式,它基于焦耳热效应,即电流通过导体时会产生热量。设计一个PWM或GPIO 引脚接口,以及加热元件的供电和地线。
电源管理:
使用4.5 V ~ 28 V 转5 V 3 A 电源,确保系统稳定运行。设计5 V 转3.3 V 的电路,为需要3.3 V 供电的元件提供电压。
存储器:
使用了AT24C02 存储器,AT24C02 是一款2 K 位串行CMOS EEPROM(电可擦可编程只读存储器)。
预留接口:
设计RS485、SPI 等接口的预留空间,以便未来扩展。
3.硬件功能与控制方式
AHT21(温湿度传感器):
● 接口连接:AHT21通过I2C接口与微控制器MSPM0G3507连接。将SCL(串行时钟线)和SDA(串行数据线)分别接至控制器MSPM0G3507 的SCL 和SDA引脚,PB2,PB3。
● 电源:为AHT21提供3.3V电源。
● 功能:根据与MSPM0G3507通信,对读取到的温度和湿度数据进行信息处理,根据对信号滤波、校准,将处理后的数据显示出来,通过液晶屏显示对应的温湿度,就对温控进行实时监测和记录温湿度数据。
程序在开始使用AHT21 功能判断之前,需要对其进行初始化,是对IIC 进行初始化,初始化过程包括设置AHT21 的地址和模式等参数,及通过发送特定的I2C 命令来完成对应的工作。通过I2C 接口向AHT21发送读取命令,请求温度和湿度的数据,AHT21 会返回温度和湿度的数据,这些数据需要根据AHT21 提供的转换公式进行转换,以得到实际的温度和湿度值(℃和相对湿度%)。
串口屏:
串口屏作为一种功能强大的显示屏,在很多的领域都发挥着重要作用。通过了解其使用功能、接口连接以及电源供应等方面的信息,可以更好地选择和使用串口屏来满足不同的应用需求。
显示功能:
串口屏显示文本、图像、图标等多种信息,显示温度湿度,及各个模块的开关情况以及状态的信息。
触控交互:
串口屏配备触摸屏,可以通过触摸操作与系统进行交互,点击按钮、滑动页面等。可以用来设定温度的值,照明开关,水泵开关等一系列操作,及大的实现人机交互的体验感和操作性。
通讯与控制:
通过串口与主控MSPM0G3507 进行通讯,接收指令并显示相应信息,这里使用的串口屏不仅可以作为显示设备,还可以作为控制设备,通过发送指令控制其他外部设备。
串口连接:
串口屏通过串口UART 与主控MSPM0G3507 进行连接,实现数据的传输和指令的接收。
串口连接通常使用标准的串口线或串口转接线进行连接,使用的引脚是PA25,PA26。
电源连接:
串口屏需要稳定的电源供应才能正常工作,电源连接使用常规的XH2.54 接口使用的是DC 5 V,通过扩展板上的P10 接口使用XH2.54_4PIN 的线与串口屏连接。
参数:
7 英寸迪文科技工业智能串口屏工控触摸触控物联网DMG80480T070_05W
品牌:迪文科技
芯片:T5L0
尺寸:7 英寸
分辨率:800*480
视角:70° /70° /50° /70°(L/R/U/D)
工作温度:-20 ~ 70 ℃
存储温度:-30 ~ 80 ℃
三防漆工艺:有
轻触按键:
按键电路:
每个按键通过上拉电阻连接到MSP430G3507的GPIO引脚。当按键未被按下时,GPIO引脚通过上拉电阻被拉至高电平;当按键被按下时,GPIO引脚被拉至低电平。
按键的主要功能手动控制相关的设备,如风机,水泵,照明,以及当发生温度过高,出现超温现象的时候,用于手动取消报警功能操作,以免一直处于报警状态。
手动键:当按下手动键时,打开照明和风机,同时启动一个定时器来控制水泵工作3 ~ 5 s 后自动关闭。
取消报警键:当系统检测到超温等报警条件时,可以通过按下此键来取消报警。
使用的MSP430G3507 引脚分别是,PA22,PA8,另外两个按键预留,增加新的功能时,再引用,按键的功能。
使用MSP430G3507 对四个轻触按键的软件功能,首先是初始化、中断处理以及按键逻辑,
初始化:
在程序开始时,我们需要对MSP430G3507 进行初始化,包括设置系统时钟、GPIO 引脚、中断等,对于轻触按键通常使用外部中断来检测按键的按下和释放。使用MSP430G3507 多个外部中断源,软件实现时将每个按键配置为触发一个独立的中断,避免在工作过程时,同时操作,避免带不必要的误操作,影响使用和体验。
贴片RGB LED:
为了产品在使用过程,出现正常实验时,突然打开相关的操作,或者停止某些操作,所以这个扩展板设计时,就增加了一个贴片RGB LED 灯,其中RGB LED采用共阳极连接,并且使用三个GPIO 引脚分别控制红、绿、蓝三种颜色的亮和灭,没有设计成呼吸灯的效果,就是为了更好的体验其设计要求,当然在我当时还考虑了确保GPIO 引脚能够输出适当的电流来驱动LED 的问题点,并且考虑到LED 的共阳极配置和控制。
硬件连接:
共阳极:将RGB LED 的三个阳极连接到一个相同的电源上,扩展板设计的时候采用的是3.3 V 电源供电。这个电源应该是根据你的LED 规格电压和电流要求来选择的,当然很多一部分都是我的经验给了帮助。对于大多数贴片RGB LED,这个电压可能是3.3 V 或5 V,但具体取决于LED的数据手册,我这里还是选用了3.3 V 的电源供电,没有选择5 V 的供电。
GPIO 引脚:
GPIO_R:连接到红色LED 的阴极,用于控制红色LED 的亮灭,引脚为pa8。
GPIO_G:连接到绿色LED 的阴极,用于控制绿色LED 的亮灭,引脚为pb18。
GPIO_B:连接到蓝色LED 的阴极,用于控制蓝色LED 的亮灭,引脚为pa18。
当然由于有一些GPIO 引脚通常不能直接提供足够的电流来驱动LED 到足够的亮度,因此需要在每个LED 的阴极和GPIO 引脚之间串联一个适当的电阻。电阻的值取决于LED 的规格和电源电压。可以使用欧姆定律(V = IR)来计算所需的电阻值,但通常可以通过查阅LED 的数据手册或使用在线LED 电阻计算器来找到更准确的值,这个是方法,我这里选用的是1 kΩ 的值作为选用电阻的参数,用来驱动LED 的亮度。
软件控制:
在软件方面,需要编写代码来控制GPIO 引脚的电平,从而控制LED 的亮灭。由于GPIO 引脚通常只能控制开/ 关(高/ 低电平),因此如果想要实现亮度调节,可能需要使用PWM(脉冲宽度调制)来实现亮度的调节,包括呼吸灯。
PWM 是一种通过改变脉冲的宽度(占空比)来模拟模拟信号的技术。在控制LED 亮度时,可以通过改变GPIO 引脚输出脉冲的占空比来改变通过LED 的平均电流,从而改变LED 的亮度。
蜂鸣器:
电磁式有源蜂鸣器是一种利用电磁原理产生音频信号的电子器件,蜂鸣器有着广泛的应用,蜂鸣器分为有源和无源蜂器两种,MSP430G3507 扩展板上使用的是有源蜂鸣器。
工作原理:
电磁式有源蜂鸣器主要由铁芯、线圈和振膜组成。当电流通过线圈时,产生的磁场会使铁芯磁化,进而吸引振膜与之相连。随着电流的变化,磁场也会发生变化,导致铁芯的磁力发生变化,从而使振膜动态地受到吸引和释放。这种振动过程会产生声波,通过空气传播出去,形成我们听到的声音。
特点:
电磁式有源蜂鸣器能够发出较为清晰、音质较好的声音。相比于其他类型的蜂鸣器,电磁式有源蜂鸣器通常具有较宽的频率响应范围。
电磁式有源蜂鸣器一般采用1/2 方波驱动,且能够在较低的电压下1.5 V发出较高的音压(可达85 dB以上)。
技术参数:
电磁式有源蜂鸣器的技术参数可能因具体型号而异,但一般包括以下几个方面:
额定电压:如1.5 V、3 V、5 V、9 V、12 V 等。工作电压范围:通常较宽,如1 ~ 15 V。
额定电流:不同型号的产品额定电流可能不同,如Max30 mA、Max40 mA 等。
操作温度:一般在-20 ~+70 ℃ 之间。
重量:通常较轻,便于集成到各种电子产品中。
引脚连接:与MSP430G3507 连接的是PB1 引脚,PB1引脚还可以输出PWM波,可以很好的更换为无源蜂鸣器,实现PWM驱动无源蜂鸣器的功能。
风机接口:
风机(小电机)通过PWM(脉冲宽度调制)或简单的GPIO 控制。设计一个PWM 或GPIO 引脚接口,以及风机的供电和地线。
刚开始的时候计划是选用那种可以检测反馈的风扇,方便软件上可以判断风扇的工作状态,因为调控上会比一些器件。因为从需要上作了一定的考虑,设计一个用于控制风机的接口时,我们需要考虑到风机的供电需求、控制信号的输入(PWM 或GPIO),以及必要的接地处理,和电流检测。
在选用风机时我这边首先是确定风机的额定电压和电流需求。大多数小型风机的工作电压在3 V 到12 V之间,但具体值应参考风机的数据手册,所以当时就选用了一个低电压的小风机,用来实现电机的工作演示。
根据当时电源的设计要求,后面把风机规格选择3 ~ 5 V的电源电压。
PWM控制接口
PWM引脚选择一个微控制器的PWM输出引脚,PWM 信号可以调整占空比,从而控制风机的转速。在PWM引脚和风机之间加入一个电阻来限制电流,目的是为了工作时的稳定性。
GPIO 控制接口
GPIO输出高电平或低电平来控制风机的开关状态(通常不用于调速),是什么意思呢,是当GPIO 输出电平为高的时候,就让风机转动起来,如果要关就输出的低电平,道理与工作时的状态相反。
MSP430G3507为核心板, 连接扩展板使用的是PB20GPIO口,PB20是可以输出为PWM脉冲宽度调制。
工作原理:(这里以GPIO 高低为例来分析),MSP430G3507的PB20输出一个高电平信号,使Q4 有一个偏置电流,从而使三极管导通让风机得电工作。R55和R54这两个电阻是为了让三极管更加稳定的工作,驱动三极管;D3一个放电二极管,当Q4截止工作的时候,风机会有一个反电动势,防止损坏Q4 三极管的作用。
风机特性:
轴承:双微型超细轴承
额定电压:DC 5 V
工作电压:4.5 ~ 5 V
电流:0.2 A
风量:5 m3/h
转数:13200 RPM
噪音:18 dB
水泵接口(待定,使用小电机替代):
水泵的工作原理与风机的工作原理一样,这里不多介绍。
介绍一下水泵特性:
卧式小潜水泵,支持3 V、4.5 V、5 V、6 V 等多种电压,便于与不同电源设备匹配。
采用优质电机和精密设计,运行时噪音较低,适合需要安静环境的场合。
直流电机具有较高的能效比,能在保证泵水量的同时降低能耗。
体积小、重量轻,便于安装和维护。
lfodel 型号
JT-DC3W-3,IT-DC3W-4.5
VoltageScope (DC) 电压:3 V,4. 5 V
Current(A) 电流:0.12,0.18
Power(W) 功率:0.36,0.91
Jax TaterHead () 扬程:0.35,0.55
Max FlowRat e (L/H) 流量:80,100
LED照明灯珠:
与风机水泵的工作方式和控制方式同理。
LED照明灯珠特性:
● 发光颜色:白色(正自光)
● 正向电流:60 mA
● 透镜颜色:黄色透镜
● 色温:5500 K ~ 6000 K
● 封装:SMD5730
● 胶体颜色:黄色
● 半功率视角:120°
加热接口:
加热的工作原理与风机的工作原理一样,这里不多介绍。
加热这个位置可能会用一个打火机模拟,也有可能我会用几个电阻作为加热来靠近温度传感器,来实现加热的工作过程,为了更方便的实现些功能,其实选用电阻来加热效果还是更好。电压流过电阻,会产生电流,电流通过导体时会产生热量。这种热量可以通过调整电流的大小和电阻的阻值来控制,非常适合用于需要精确控制温度的场景。
原因:
根据使用需求和电源条件,选择合适的电阻作为加热装置,是一个不错的选择,安全,方便快速。电阻的功率(W)应足够大,以承受加热时产生的热量而不至于过热烧毁。
连接电路:将电阻与电源和MOS 管的控制电路(使用MSP430G3507 输出PWM 控制)。根据温度传感器实现温度控制,目地是将温度传感器根据连接到控制电路中把温度转成相关的数据传感给MSP430G3507,经过MSP430G3507 编程分析出相对应的值,从而实现温度的控制。
通过使用电阻作为加热元件,可以更容易地实现加热过程的精确控制,并与温度传感器配合使用,实现闭环的温度控制系统。
电源管理
下图是我选用的电源管理,在这个电源管理电路中,我实现的功能是从宽范围输入电压(4.5 ~ 28 V)转换到稳定的5 V 输出,并把从5 V 转换到3.3 V,是为了满足不同元件的供电需求,方便更好的实现多模块工作的需求。
目地
宽电压的电源输入4.5 ~ 28 V 转5 V 3 A 电源设计,这个就兼容了5 V - 12 V -24 V。
选用这种DC电路的设计,是为了更好的利用对就的资源,合理的使用电源的通用性,这样转换可以有效地将高于输出电压的输入电压转换为稳定的输出电压,并且具有较高的转换效率。
参数选择:
输入电压范围:4.5 ~ 28 V
输出电压:5 V
输出电流:3 A
转换效率:尽可能高(以减少热量产生)
类型:
同步降压转换器:通常比非同步转换器具有更高的效率。
保护特性:
过流保护(OCP)
过热保护(OTP)
输入欠压锁定(UVLO)
选用线性稳压器:
从5 V转换到3.3 V,选择线性稳压器(LDO)。
线性稳压器简单且成本低,但效率较低(特别是在输入输出压差较大时)。
参数选择:
输入电压:5 V
输出电压:3.3 V
输出电流:1 A
目的:
电流需求不高且对效率要求不是非常严格,所以选择LDO。如果需要高效率且电流需求较高,则选择降压型DC-DC 转换器。
型号:TI 的TPS54302D(4.5 ~ 28 V 转5 V 3 A)
安森美的AMS1117-3.3 V
存储器
AT24C02作为一款性能稳定、功能丰富的串行EEPROM芯片,凭借其低功耗、长寿命、宽温度范围等特点,在嵌入式系统和电子设备中得到了广泛应用。通过合理的引脚配置和I2C 通信协议的支持,AT24C02能够轻松实现数据的存储和读取功能。
基本参数:
存储容量:2 Kbit,256 个8 位字节。
工作电压:范围广泛,通常为1.8 V 至5.5 V,这取决于具体型号和应用需求。
通信接口:通过I2C(Inter-Integrated Circuit)串行总线接口进行操作,支持标准I2C 通信协议。
存储速率:兼容400 KHz 的传输速率。
特性与功能
低功耗:采用先进CMOS 技术,显著降低了器件的功耗。
写保护功能:具有专门的写保护功能,通过WP(Write Protect)引脚控制,当WP 引脚连接到Vcc 时,所有内容都被写保护,只能进行读操作。
页写缓冲器:AT24C02 通常配备一个8 字节(也有资料提到为16 字节)的页写缓冲器,便于批量写入数据。长寿命:可擦写次数高达100 万次(也有资料提到为1,000,000 次),数据保存时间可达100 年。
宽温度范围:工作温度范围通常为-40~+85 ℃(也有资料提到工业级为-55~+125 ℃,商业级为0~75 ℃),贮存温度范围更宽。
引脚配置:
AT24C02的引脚配置通常包括:
A0、A1、A2:器件地址选择引脚,用于在多个器件级联时设置器件地址。
SDA:串行数据/ 地址引脚,用于数据的发送和接收。
SCL:串行时钟引脚,用于产生器件所有数据发送或接收的时钟。
WP:写保护引脚,控制器件的写保护功能。
VCC:工作电压引脚,接入正电源。
GND:接地引脚。
应用与操作:
AT24C02 广泛应用于需要存储少量数据的场合,参数设置、数据备份等。可以通过I2C 总线与微控制器等主设备进行通信,实现数据的读写操作。在操作时,需要注意器件的寻址方式(芯片寻址和片内子地址寻址)以及I2C 通信的时序要求。
整体电路原理图
PCB图
PCBA组合完整图
背面
正面
使用的开发板
2 框架
1.整体框架
硬件框架:
软件框架
3 软件
1.软件功能
①使用功能与接口:IIC、urat、gpio、PWM,中断等。
②初始化MCU:配置系统时钟、GPIO 端口、中断控制器等。
③初始化外设:IIC:初始化IIC 接口,用于连接温湿度传感器AHT21。
④UART:初始化串口,用于调试或连接串口屏。
⑤GPIO:初始化按键、LED 指示灯、蜂鸣器、电机等控制引脚。
➅定时器/中断:设置定时器中断,用于实现延时、周期性任务等。
➆延时100 MS-1 S 时间,稳定初始功能完成。
➇进入主循环。
➈等待开机。
➉通过串口屏显示系统启动信息、当前时间、温度、湿度等初始状态。
数据采集:通过IIC 接口读取AHT21 温湿度传感器的数据。
数据处理:将采集到的数据转换为可读格式,并判断是否超出预设的阈值。
显示更新:更新串口屏显示的数据,包括当前温度、湿度等。
按键检测与处理:循环检测按键状态,根据按键的不同操作执行相应的功能。
设备控制:根据温度和湿度的设定值与当前值的比较结果,控制风机(小电机)、加热装置等设备的开关。
报警处理:如果检测到温度或湿度超出预设的安全范围,则激活蜂鸣器进行报警,并可能通过串口屏显示警告信息。
2.软件配置
定时器
GPIO、按键
IIC
串口:
评论