基于STM32的宿舍安全监测系统设计与实现外文翻译资料
2022-10-27 15:32:49
英语原文共 11 页,剩余内容已隐藏,支付完成后下载完整资料
摘要
STM32是一种基于CortexTM-M3内核的微控制器;它起着在嵌入式控制字段重要作用。本章介绍了低功耗湿度和温度集电极与SHT10湿度和温度森感器。本章介绍并实现了通信时间序列SHT10的。校准文本证明该系统可以测量温度和湿度正常。它是通过实验,这种低功耗集电极表现出可以收集数据为30天,并满足设计指标;此外,原则低功率可以在其它嵌入式控制领域中。
关键词:温湿度采集器;低功耗模式;STM32F103
88.1介绍
STM32被广泛应用于许多控制应用。它是基于一种CortexTM-M3内核的微控制器,它在性能和成本上设置了新的标准,并且能作为低功率操作和实时控制。该系列主要包括三个子系列:“A”是指高级的应用,“R”是指实时应用系列,“M”是指成本敏感和微控制器应用。 STM32属于“M”系列,这是专为高性能和低功耗设计的。
大多数市场上的湿度和温度收集器不具有记录功能,而且也不具有在同一时间低功耗的能力;此外,它们还很贵。STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex.M3内核。Cortex.M3是一个32位的核,在传统的单片机领域中,有一些不同于通用32位CPU应用的要求。谭军举例说,在工控领域,用户要求具有更快的中断速度,Cortex.M3采用了Tail.Chaining中断技术,完全基于硬件进行中断处理,最多可减少12个时钟周期数,在实际应用中可减少70%中断。单片机的另外一个特点是调试工具非常便宜,不象ARM的仿真器动辄几千上万。针对这个特点,Cortex.M3采用了新型的单线调试(Single Wire)技术,专门拿出一个引脚来做调试,从而节约了大笔的调试工具费用。同时,Cortex.M3中还集成了大部分存储器控制器,这样工程师可以直接在MCU外连接Flash,降低了设计难度和应用障碍。
按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。此单片机有一个USB 2.0全速接口。
STM32F103性能特点
内核:ARM32位Cortex-M3 CPU,最高工作频率72MHz,1.25DMIPS/MHz。单周期乘法和硬件除法。
存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器。
时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶振。内嵌出厂前调校的8MHz RC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振。
低功耗:3种低功耗模式:休眠,停止,待机模式。为RTC和备份寄存器供电的VBAT。
调试模式:串行调试(SWD)和JTAG接口。
DMA:12通道DMA控制器。支持的外设:定时器,ADC,DAC,SPI,IIC和USART。
2个12位的us级的A/D转换器(16通道):A/D测量范围:0-3.6 V。双采样和保持能力。片上集成一个温度传感器。
2通道12位D/A转换器:STM32F103xC,STM32F103xD,STM32F103xE独有。
最多高达112个的快速I/O端口:根据型号的不同,有26,37,51,80,和112的I/O端口,所有的端口都可以映射到16个外部中断向量。除了模拟输入,所有的都可以接受5V以内的输入。
最多多达11个定时器:4个16位定时器,每个定时器有4个IC/OC/PWM或者脉冲计数器。2个16位的6通道高级控制定时器:最多6个通道可用于PWM输出。2个看门狗定时器(独立看门狗和窗口看门狗)。Systick定时器:24位倒计数器。2个16位基本定时器用于驱动DAC。
最多多达13个通信接口:2个IIC接口(SMBus/PMBus)。5个USART接口(ISO7816接口,LIN,IrDA兼容,调试控制)。3个SPI接口(18 Mbit/s),两个和IIS复用。CAN接口(2.0B)。USB 2.0全速接口。SDIO接口。
ECOPACK封装:STM32F103xx系列微控制器采用ECOPACK封装形式。
考虑到所需IO端口的数量不多,外设功能也较少的因素,我选用了一款引脚数量较少,外设资源足够用的STM32F103C8T6单片机。STM32F103C8T6是中等容量的STM32产品,它基于ARM的Cortex.M3trade;内核,具有64K片上闪存以及一系列丰富的外设接口。支持任意用于调试ARM芯片的调试器,例如Segger的JLink,Keil(ARM)的ULink等。
本章设计了一种基于STM32F103RET6的湿度和温度采集器。其系统可以为大约维持30个工作日并且有随时记录的能力,当停止模式时已经采用了省电的目的。该传感器是SHT10湿度和温度传感器。收集时间需要5分钟,18650HZ锂电池工作作为电源。数据可被记录在安全数字(SD)卡。收集器可以支持高速通用串行总线(USB)通信和串行端口进行通信。USB模块为PC主机和微控制器所实现的功能之间提供了符合USB规范的通信连接。PC主机和微控制器之间的数据传输是通过共享一专用的数据缓冲区来完成的,该数据缓冲区能被USB外设直接访问。此外,STM32可以通过USB电源加上AMS1117.3.3的稳压芯片获得 3.3V的供电电压。USB可提供最大电流500mA的 5V电压电源,能满足STM32的工作需求。结构是根据实用进行的设计,本章的其余部分安排如下。在该系统中需要将模拟量转换为数据量,而 A/D是将模拟量转换为数字量的器件,他需要考虑的指标有:分辨率、转换时间、转换误差等等。而单片机是该系统的基本的微处理系统,它完成数据读取、处理及逻辑控制,数据传输等一系列的任务。在该系统中采用的是STM32系列的单片机。而数据的显示则采用的是LCD数码管,该器件比较简单,在生活中接触也较多。
数据采集系统一般由信号调理电路,多路切换电路,采样保持电路,A/D,单片机等组成。
88.2收集器的设计
88.2.1硬件设计
本章的数据收集器如图88.1,所提出的结构图如图88.2。它主要包括电源模块,高速USB通信模块,STM32 IC,SD卡录音模块,湿度和温度传感器模块,串行端口通信模块,和联合测试(JTAG)在线调试模块。STM32从ADP339-A3.3稳压器取电。每5分钟由实时时钟(RTC)可以唤醒它,这样用户可以收集从SHT10传感器接收到的数据定义的通信协议。湿度和温度数据的数据是写入到SD卡中的十六进制的形式。
88.2.2通信配置
SHT10的通信序列如图88.3。
在第一步骤中,所述传感器通电,并在此过程中的压摆率不能低于1伏/毫秒。该传感器需要11毫秒去电后睡眠状态。没有命令必须在上述时间之前发送。发起传输,就要发出其由降低数据线的一个传输起始序列而串行时钟(SCK)为高,随后在SCK低脉冲,提高数据再次在SCK依然偏高。后续命令包含三个地址位和五个命令位。传感器指示一个适当的接收在第八个SCK的下降沿后拉低数据引脚拉低命令。
图88.1 系统原型照片
图88.2 收集器结构图
图88.3 SHT10传感器的通信序列
数据线是第九个SCK的下降沿后释放。SHT10列表命令示于表88.1。发出测量命令(“00000101”相对湿度后,“00000011”为温度),控制器具有等待测量完成。这最多需要20/80/320毫秒为8/12位/ 14位的测量。
表88.1 指令列表
签署测量完成,SHT10数据线拉低,进入空闲模式。控制器必须等待该数据就绪信号重新启动之前SCK以读出的数据。然后测量数据被读出之后存储。装置测量和的COM完成后自动返回到睡眠模式通信。
该传感器通过PIN6和一般PIN7连接到单片机通用输入/输出端口B(GPIOB)的STM32。 PIN6是时钟通信口和PIN7是数据通信端口。PIN6的输出方式为推拉输出模式和传输速度为50兆赫。PIN7推拉输出/50兆赫的速度输入。
传送开始序列被写入SCK和数据实施行SHT10。PIN7配置后,一系列的代码应该被操作。拉SCK低;拉SCK高;提取数据低;拉SCK低;拉SCK高;提取数据高;拉SCK低。那里应各操作之间的时间延迟。经过传输启动序列完成后,该传感器将收集并通过写温度或湿度的数据0times;03或0times;05。
88.2.3纠错
为了提高测量精度,一旦STM32被唤醒时,它会收集的温度和湿度数据的十次。然后这些平均值数据将被视为合理的环境参数。它的平均值将在SD卡写入。测试已经进行了校准传感器的误差。标准化温度和湿度的集电极和一个证明框是必不可少的,在其中防爆箱供应环境的固定参数。标准化收集器提供精确的温度和湿度的数据。准确的数据可以校准集电极一节。收集器的误差示于图 88.4。 它是合理的。得到的结论是,测量精度能满足需求。
图88.4校准收集器
88.3时钟系统和电源测试
88.3.1STM32的时钟系统
时钟系统是使STM32及其外围设备运行的前提条件正常。更重要的是,系统时钟的频率和它的外围设备具有对权力很大的影响。STM32具有内部RC(电阻和电容)振荡器,该振荡器可以提供内部锁相环(PLL)时钟。这个PLL时钟能实现的微控制器的最高频率的要求,即是72兆赫;但相比内部振荡器是不准确的,外部时钟是不稳定的。在这个意义上,集电极选择外部时钟作为高速外部振荡器(HSE)。该集热系统选择一个振荡器,其振荡频率为8兆赫。
外部振荡器将产生8 MHz的时钟信号。这个信号将是锁相环后72兆赫,这将是9个八度音。该系统将在该频率基础上运行。上APB1外设的时钟频率是系统时钟的一半和上APB2外设的时钟频率是系统时钟。APB1 支持的外围设备的时钟频率不是很高。其最大频率为36兆赫。APB2支持外设的时钟频率超过36 MHz的高。它的最大频率为72兆赫。几乎所有的外设选择APB1和APB2他们的时钟。STM32有两个电源域。一个是主系统和外部域设备。另一个是备份域,其中包括十个16位寄存器,RTC和独立的看门狗。RTC和看门狗可以继续运行,以唤醒主系统复位或在低功耗模式。
该采集器采用外部低速时钟作为RTC和报警中断唤醒主电源域。存储的报警寄存器值是32767。考虑体积,它没有设计在此收集的备用电池。RTC会从能源从ADP3339-A3.3模块。
本章的集电体的时钟配置示于图88.5。
88.3.2电源测试
本课题的电源需要提供四种电压: 5V,.5V, 3.3V, 1.5V,还需要较大的功率输出。 5V和.5V电源为运算放大器和模拟开关提供电压和电流,电流要求大概300mA左右。 3.3V电源为FPGA和单片机供电,所需电流大概300mA左右。 1.5V电源为FPGA提供电压和所需电流。因此,经过查询资料,最终选择了AMS1117系列的稳压芯片和小功率极性反转电源转换器ICL7660。
AMS1117系列稳压器有多种固定电压版,设计用于提供1A输出电流且工作压差可低至1V。在最大输出电流时,AMS1117器件的压差保证最大不超过1.3V,并随负载电流的减小而逐渐降低。1.5V, 1.8V, 2.5V, 2.85V, 3.3V 和5.0V 输出电流1A 工作压差低至1V 线荷载调节:0.2% Max。负载调节:0.4% Max。可选SOT.223,TO.252和SO.8封装。它的初始误差 (%) plusmn;1.5 压差 (V) 1.3。
ICL7660的静态电流典型值为170mu;A,输入电压范围为1.5.10V,(Intersil公司ICL7660A输入电压范围为1.5.12)工作频率为10 kHz只需外接10 kHz的小体积电容,只需外接10mu;F的小体积电容效率高达98%合输出功率可达700mW(以DIP封装为例),符合输出100mA的要求。
选用封装类型 SOT.223的A
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[153316],资料为PDF文档或Word文档,PDF文档可免费转换为Word