教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

张华伟-基于STM32F4ARM单片机精确温控的设计与实现(3)

来源:网络收集 时间:2026-05-03
导读: 系统总体方案的设计与论证 频率,避免数码管出现显示闪烁的情况。 方案二:LCD1602串口方式显示,当PSB脚接低电位时,模块将进入串行模式。从一个完整的串行传输流程来看,一开始先传输启始字节,它需先接收到五个

系统总体方案的设计与论证

频率,避免数码管出现显示闪烁的情况。

方案二:LCD1602串口方式显示,当PSB脚接低电位时,模块将进入串行模式。从一个完整的串行传输流程来看,一开始先传输启始字节,它需先接收到五个连续的‘1’(同步位字符串),在启始字节,此时传输计数将被重置并且串行传输将被同步,再跟随的两位字符串分别指定传输方向位(RW)及寄存器选择位(RS),最后第八的位则为‘0’[4]。在接收到同步位及RW和RS资料的启始字节后,每一个八位的指令将被分为两个字节接收到:高4位(DB7~DB4)的指令资料将会被放在第一个字节的LSB(最低有效未)部分,而低4位(DB3~DB0)的指令资料则会被放在第二个字节的LSB部分,至于相关的另四位则都为‘0’[5]。

串口传输信号时如图2-6所示。

图2-6 LCD串口传输信号图

鉴于硬件简单成本低廉的原则,本系统采用数码管显示方式。 2.5 A/D转换器模块方案论证

方案一:单片机STM32F407内置AD转换器。12位ADC是逐次趋近型模数转换器。它具有多达19个复用通道,可测量来自16个外部源、两个内部源和VBAT通道的信号[1]。这些通道的A/D转换可在单次、连续、扫描或不连续采样模式下进行。ADC的结果存储在一个左对齐或右对齐的16位数据寄存器中。ADC具有模拟看门狗特性,允许应用检测输入电压是否超过了用户自定义的阈值上限或下限。同时内置A/D有如下特性:可配置12 位、10 位、8位或6位分辨率、数据对齐以保持内置数据一致性、可独立设置各通道采样时间、外部触发器选项,可为规则转换和注入转换配置极性、不连续采样模式、双重/三重模式(具有2个或更多ADC的器件提供)、双重/三重ADC模式下可配置的DMA数据存储、双重/三重交替模式下可配置的转换间延迟、规则通道转换期间可产生DMA等。

方案二:采用AD转换芯片ADC0809。它是采用了CMOS工艺,8位逐次逼近方

6

系统总体方案的设计与论证

式进行AD转换。其内部有一个8通道多路开关,根据地址码译码后的信号选择导通8路通道中的一个进行A/D转换。它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近寄存器、逻辑控制和定时电路组成。

其工作过程如下:首先需要输入一个三位的地址,并使ALE=1,将地址存入地址锁存器中。经地址经译码选择要导通8路模拟输入中的其中一个通道。START下降沿启动 A/D转换,紧接着之后EOC会输出一个低点评信号,表示转换正在进行。直到A/D转换完成,EOC变为高电平,A/D转换结束,并将转换结果存入锁存器,并且这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。

经对比分析后可知,STM32F407单片机内置12位A/D转换器,且不用连接其他电路,只需在程序中配置相应寄存器即可完成A/D转换;ADC0809的分辨率则是8位,还需接入74LS373等芯片,使得电路较为复杂。因此无论从进度上还是易用性上都应该选择单片机内置A/D转换器。因此,使用单片机内置的10位A/D转换器是本课题的最佳选择。 2.6 系统整体设计方案论证

经过以上详细的论证与分析,得到详细的系统框图如图2-7所示。 被控模块 PT100传感器 差分放大电路 制热模块 半桥驱动电路 STM32f407 PWM输出、 PID运算、 AD采集通道温度换算。 温度设定 通讯模块 数码管显示模块 图2-7 系统框图

PT1000温度传感器与加热设备保持接触,其阻值变化通过电阻桥及放大电路转换为电压信号,STM32F407通过内置12位A/D转换器采集到电压值,经过相关计算得到当前温度值送给数码管显示,同时将此温度值与按键输入的目标温度值进行比较,进行根据PID计算结果输出PWM波,经V/I变换电路后转换为4~20mA标准电流信号。

7

系统硬件设计

3 系统硬件设计

3.1 主控制系统设计

采用单片机作为主控制系统对温控系统的状态进行实时控制,具有控制灵活、可靠,精度高的特点。单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器、脉宽调制电路、模拟多路转换器、A/D转换器等电路集成到一块硅片上构成的一个小而完善的嵌入式系统。 3.1.1 STM32F407单片机

本设计采用ARM系列的STM32F407ZG单片机。STM32F407ZG系列是基于高性能的ARM?Cortex?-M4F的32位RISC内核,工作频率高达168 MHz。Cortex-M4F核心功能支持所有ARM单精度数据处理指令和数据类型的单精度浮点单元(FPU)。它还实现了一套完整的DSP指令和内存保护单元(MPU),从而提高应用程序的安全性。该STM32F407ZG系列采用高速嵌入式存储器(多达1 MB闪存,高达192 KB的SRAM),最多4字节的备份SRAM,以及广泛的增强I / O的连接到两条APB总线和外设,两个AHB总线和一个32位的多AHB总线矩阵。STM32F407ZG设备提供3个12位ADC,两个DAC,1个低功耗RTC,12个通用16位定时器,其中包括两个用于电机控制的PWM定时器,两个通用32位定时器。一个真正的随机数发生器(RNG)。他们还配备了标准和先进的通信接口。 3.1.2 通用定时器

通用定时器包含一个 16 位或32 位自动重载计数器,该计数器由可编程预分频器驱动。它们可用于多种用途,包括测量输入信号的脉冲宽度(输入捕获)或生成输出波形(输出比较和PWM)。使用定时器预分频器和RCC 时钟控制器预分频器,可将脉冲宽度和波形周期从几微秒调制到几毫秒。这些定时器彼此完全独立,不共享任何资源,它们可以同步操作。

通用定时器工作模式有输出比较工作模式、计数器模式、PWM 模式、强制输出模式等。有多达4 个独立通道,可用于输入捕获、输出比较、PWM 生成、单脉冲模式输出。

在本设计中定时器配置工作模式为PWM模式,采用定时器2通道2在PA1口输

8

系统硬件设计

出,配置定时器为定时器分频采用83分频,初始装载值为999,向上计数的方式,时钟分频为1分频,所以可以产生频率为2kHz的PWM波。 3.1.3模数转换器

12 位ADC 是逐次趋近型模数转换器。它具有多达19 个复用通道,可测量来自16 个外部源、两个内部源和VBAT 通道的信号。这些通道的A/D 转换可在单次、连续、扫描或不连续采样模式下进行。ADC 的结果存储在一个左对齐或右对齐的16 位数据寄存器中。

ADC 开关控制:可通过将ADC_CR2 寄存器中的ADON 位置1来为ADC 供电。首次将ADON 位置1时,会将ADC 从掉电模式中唤醒。SWSTART 或JSWSTART 位置1 时,启动AD 转换。可通过将ADON 位清零来停止转换并使ADC 进入掉电模式。在此模式下,ADC几乎不耗电(只有几μA)。

通道选择有 16 条复用通道,可以将转换分为两组:规则转换和注入转换。每个组包含一个转换序列,该序列可按任意顺序在任意通道上完成。

数据管理使用DMA由于规则通道组只有一个数据寄存器,因此,对于多个规则通道的转换,使用DMA 非常有帮助。这样可以避免丢失在下一次写入之前还未被读出的ADC_DR 寄存器中的数据。在使能DMA 模式的情况下(ADC_CR2 寄存器中的DMA 位置1),每完成规则通道组中的一个通道转换后,都会生成一个DMA 请求。这样便可将转换的数据从ADC_DR 寄存器传输到用软件选择的目标位置。

本设计中AD转换目的是将采集的电压量转换为数字量求得温度值,采用的是ADC1通道0,配置ADC需要使能ADC1的时钟,配置端口为模拟输入。由于其映射在DM …… 此处隐藏:2414字,全部文档内容请下载后查看。喜欢就下载吧 ……

张华伟-基于STM32F4ARM单片机精确温控的设计与实现(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/453557.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)