基于STM32的温度测量系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于ST M32的温度测量系统
Te mper ature Measur ement Syste m Based on the STM32
曹圆圆
(华北电力大学控制科学与工程学院河北保定071003)
[摘要]介绍一种基于STM32处理器的温度测量系统设计方案。以ST M32F103RB T6微控制器为核心,采用AD590作温度传感器,测量温度用四位数码管显示,能够同PC机进行串口通信。具有体积小、精度高、处理能力强等特点。
[关键词]温度测量;ST M32;AD590
[中图分类号]TP273[文献标志码]B
温度是日常生活与工农业生产中的一个重要参数,传统的温度计存在反应速度慢、测量精度不高以及读数麻烦等缺点,随着电子技术的发展,各种基于单片机的温度测量系统先后被提出。温度传感器AD590具有线性度好、性能稳定、灵敏度高、抗干扰能力强等优点;鉴于目前ARM微处理器在国内的广泛应用和广阔的发展前景,本文采用AD590温度传感器,基于一款ARM微处理器ST M32F103RBT6作为系统核心,设计了一种温度测量系统。它不仅可以通过四位数码管直观显示00.00~99.99e,还可以完成同PC机的通信,并详细介绍了其硬件设计和相关程序编写。
1系统结构
温度测量系统主要有温度测量、温度显示电路、RS232串行通讯等模块。主控电路由STM32F103RBT6及其外围电路组成,是系统的核心部分,主要完成数据的传输和处理工作。温度传感器采集的模拟信号,经过处理器本身内嵌的ADC进行A/D转换后得到实时温度数据,再经处理器相关处理后通过温度显示电路进行实时显示,同时,处理器还可以实现与PC机的通信功能。
ST M32系列处理器是意法半导体ST公司生产的一种基于ARM v7架构的32位、支持实时仿真和跟踪的微控制器。嵌入式处理器不能独立工作,必须给它提供电源、时钟以及复位电路。这些提供给嵌入式处理器运行所必须的条件电路与嵌入式处理器共同构成了这个嵌入式处理器的最小系统。其他如J TAG 调试接口,在芯片实际工作时不是必须的,但本系统是利用JTAG烧写在板FLASH,因此将其加入最小系统。系统的整体结构框如图1
所示。
图1系统整体结构框图
2硬件设计
2.1ST M32F103RB T6微控制器
ST M32F103RB T6是一款基于CORTEX-M3内核、高性能、低成本、低功耗的微控制器,在软件和引脚封装方面同其他STM32系列处理器是兼容的。
它的时钟频率达到72MH z,能实现高端运算。内嵌128KB FLAS H程序存储器。丰富的外设, UART、SPI等串行接口以及最大翻转率18MH z的GPI O。更重要的是它拥有最快1L s转换速度的双12位精度ADC,此快速采集,高性能的ADC非常适用于数据的快速采集和快速处理上,这也是本系统选择它作为核心控制器的一个重要原因。
如图2所示,STM32F103RBT6采用LQFP64封装,GP I O中PA0(ADC_I N0)引脚接入测温电路输入的电压模拟信号,PA9和PA10引脚为串口输入输出,PA1~PA4作为4个数码管的位选信号控制,PC0~PC7输出信号接到数码管的段选引脚上。
)
16
)
5仪器仪表与分析监测62010年第1期
图2 STM 32F103RBT 6
2.2 温度测量电路
目前,测温器件比较多,如热电偶、热电阻及石英体温度传感器等,该温度测量系统所选用的温度传感器是美国模拟器件公司生产的单片集成两端感温电流
源AD590。它的测温范围为-55e ~+150e ,足以满足日常生活和生产的应用要求;电源电压可在4~6V 范围变化,可以承受44V 正向和20V 反向电压,因而器件反接也不会被损坏;同时AD590输出标准化,产生的电流与绝对温度成正比,测量温度每增加1e ,输出电流增加1L A,具有非常好的线性输出性能;而且输
出为电流,便于长距离传输,因为是高阻抗电流源,对激励电压也不太敏感。
测温电路工作原理如图3所示,基准电压源AD581输出电压为10V,目的是通过R1、R2为AD590提供稳定电压以保证其输出电流信号稳定。
虽然AD590具有较好的线性度,但在其温度测量范围内仍有一定的非线性;AD590在0e 下输出电流为273.2L A,
用它来测量摄氏温度时需要调零。
图3 温度测量电路
所以为了提高精度,扩大测量范围,在A /D 转换前将信号加以放大并进行零点迁移是必须的,该系统除采用AD581提供精密的基准电压外,还设计有一个双点微调电路,通过两个电位计R2、R4可以分别完成零度和满度的调整。
AD590的输出通过R3、R4将电流信号转化成电压输出,其电压信号将随AD590变化而变化,即运放
第六引脚输出直流电压随温度变化而变化,并成正比。
选择合适大小的R1、R3,调零调满时,首先在0e 下调
整R2使运放输出V 0=0V,然后在100e 下调整R4,
使V 0=3.3V,如此反复多次,直到当温度范围为0~100e 时,运放电压输出范围为0~3.3V 。2.3 模数转化器
AD590测温电路输出的电压信号为模拟信号,
要进行4位八段数码管显示,首先要将此信号转换成
数字信号。在此选用A /D 转换器为片内的AD 转换电路。ST M 32处理器所带的12位ADC 是一种逐次逼
近式模拟数字转化器,ADC 转换速率达1MH z 。它有18个通道,可测量16个外部和2个内部信号源。各通道的A /D 转换可以单次、
连续、扫描或不连续模式执行,ADC 的结果可以左对齐或右对齐存储在16位数据寄存器中。
ST M 32F103RB T6的ADC 的基准电压VREF+在芯片内部与电源信号线连接,系统选用一个高精度的
3.3V 外部参照电压,以期解决因VCC 电源电压精度不高带来的ADC 测量不准确的问题。2.4 温度显示电路
该测温系统的显示部分由四位八段LED 数码管
组成,方便廉价。电码管的位选由PA1-P A 4口输
出进行控制,考虑ST M 32系列GPI O 的驱动能力,需要使用三极管来推动提供足够大的电流来点亮LED 。四个共阳极LED 的八段段选信号a-g 、dp 分
别接到PC0-PC7上。具体硬件连接图如图4
所示。
图4 温度显示电路
2.5 数据接口
通信接口是模块与外界进行交互的通道和桥梁。因此,通信接口的设计是模块不可缺少的重要部分。考虑到目前主流的几种通信方式,该测温系统设计了RS-232串行通讯接口以保证其同PC 机通信的需
要。MAX3232EE AE 为单一正3.3V 供电,可同时完
成发送转换和接收转换双重功能的专用芯片。其串
口电路连接如图5所示。
)
17)
基于STM 32的温度测量系统 曹圆圆