基于STM32的多路模拟量数据采集设计说明

上传人:be****l 文档编号:69531740 上传时间:2022-04-05 格式:DOC 页数:51 大小:2.21MB
收藏 版权申诉 举报 下载
基于STM32的多路模拟量数据采集设计说明_第1页
第1页 / 共51页
基于STM32的多路模拟量数据采集设计说明_第2页
第2页 / 共51页
基于STM32的多路模拟量数据采集设计说明_第3页
第3页 / 共51页
资源描述:

《基于STM32的多路模拟量数据采集设计说明》由会员分享,可在线阅读,更多相关《基于STM32的多路模拟量数据采集设计说明(51页珍藏版)》请在装配图网上搜索。

1、毕 业 设 计 题目:基于STM32的多路模拟量数据采集系统设计 学 生:学 号:学 院: 电气与信息工程学院 专 业: 电气工程与其自动化 指导教师:2016年 6月10日43 / 51基于STM32的多路模拟量数据采集系统设计摘 要本文介绍了基于STM32的数据采集的硬件设计和软件设计,数据采集系统是模拟域与数字域之间必不可少的纽带,它的存在具有着非常重要的作用。本文介绍的重点是数据采集系统,而该系统硬件部分的重心在于单片机芯片。数据采集与通信控制采用了模块化的设计,数据采集与通信控制采用了单片机STM32来实现,硬件部分是以单片机为核心,还包括显示模块和串行接口部分。该系统由程序直接控制

2、STM32芯片。3路被测电压通过DMA专用通道采集,将数据传输向STM32自带的模数转换模块进行模数转换,实现对采集到的数据进行模拟量到数字量的转换,并将转换后的数据通过STM32通过GPIO口控制液晶屏来显示所采集的结果。软件部分应用C语言编写控制软件,对数据采集系统、模数转换系统、数据显示、数据通信等程序进行了设计。关键词:数据采集,STM32,模数转换The Design of Multi-channel Data Acquisition System Based on STM32ABSTRACTThis paper introduces the hardware design and

3、software design of data acquisition based on STM32. The data acquisition system is an indispensable link between analog and digital domains. It plays a very important role. The focus of this article is the data acquisition system, and the focus of the hardware part of the system is the single-chip m

4、icrocomputer chip. Data collection and communication control use a modular design and use STM32 MCU to realize themsleves. The hardware part is a single-chip microcomputer as the core, and it also includes a display module and the serial interface. The system is directly controlled by the program ST

5、M32 chip. Three-measured voltage uses a dedicated DMA channel data acquisition and the data transmission to get the STM32 built-in ADC analog digital conversion module, and it realizes the data acquisition through the digital conversion, and converts the data through the STM32 , GPIO to control LCD

6、screen and display the collected results. Software part of the application of Csoftware use the data acquisition system, analog digital conversion system, data display, and data communications and other procedures to design.Keywords:data acquisition,STM32,ADC目 录摘 要IABSTRACTII1 绪论11.1 研究背景与其目的意义11.2国

7、外研究现状21.3该课题研究的主要容22 数据采集系统设计42.1数据采集系统42.2方案论证42.2.1 A/D模数转换42.2.2 DMA采集52.2.3 显示部分63 硬件部分设计73.1芯片介绍73.1.1 STM32概况73.1.2 STM32历史83.1.3 系统作用93.1.4 性能特点113.1.5 架构优势123.1.6 能耗模式123.2液晶显示模块133.2.1液晶显示模块概述133.2.2 外形尺寸143.2.3 模块引脚说明143.2.4 接口时序163.3 外设部分174 软件部分设计194.1简介KeilUvision5194.2 Keil5工程创建与程序下载19

8、4.2.1 创建工程194.2.2 程序下载274.3 程序设计304.3.1 主程序部分304.3.2 ADC模块305 系统调试336总结35致 36参考文献37附录I38附录II431 绪论1.1研究背景与其目的意义近年来,数据采集与其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,目标是测试中不依靠相关的测试文件,由非成熟人员进行操作,并且测试任务是由测试设备高速自动控制完成的。由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采

9、集和测试任务,因而得到了初步的认可。大概在60年代后期,国外就有成套的数据采集设备和系统多属于专用的系统。20世纪70年代后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因而获得了惊人的发展。从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,一类是工业现场数据采集系统。20世纪80年代随着计算机的普与应用,数据采集系统得到了很大的发展,开始出现了通用的数据采集与自动测试系统。该阶段的数据采集系统主要有两类,一类以仪表仪器和采集器、通用接口总线和计算机组成。这类系统主要

10、应用于实验室,在工业生产现场也有一定的应用。第二类以数据采集卡、标准总线和计算机构成,这一类在工业现场应用较多。20世纪80年代后期,数据采集发生了很大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,是系统的成本减低,体积变小,功能成倍增加,数据处理能力大大加强。20世纪90年代至今,在国际上技术先进的国家,数据采集系统已成功的运用到军事、航空电子设备与宇航技术、工业等领域。由于集成电路制造技术的不断提高,出现了高性能、高可靠的单片机数据采集系统(DAS)。数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用。该阶段的数据采集系统采用模块式结构,根据不同的应用要求,通过

11、简单的增加和更改模块,并结合系统编程,就可扩展或修改系统,迅速组成一个新的系统。尽管现在以微机为核心的可编程数据采集与处理采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响。相较于数据采集板卡成本和功能的限制,单片机具多功能、高效率、高性能、低电压、低功耗、低价格等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。这就使得以单片机为核心的数据采集系统在许多领域得到

12、了广泛的应用。1.2国外研究现状数据采集系统是通过采集传感器输出的模拟信号并转换成数字信号,并进行分析、处理、传输、显示、存储和显示。它起始于20世纪中期,在过去的几十年里,随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是目前社会的发展主流方向。各种领域都用到了数据采集,在石油勘探、科学实验、飞机飞行、地震数据采集领域已经得到应用。我国的数字地震观测系统主要采用TDE-124C型TDE-224C型地震数据采集系统。近年来,又成功研制了动态围更大、线性度更高、兼容性更强、低功耗可靠性的TDE-324C型地震数据采集系统。该数据采集对拾震计输出的电信号模拟放大

13、后送至A/D数字化,A/D采用同时采样,采样数据经DSP数字滤波处理后,变成数字地震信号。该数据采集系统具备24位A/D转化位数,采样率有50HZ、100HZ、200HZ。由美国PASCO公司生产的“科学工作室”是将数据采集应用于物理实验的崭新系统,它由3部分组成:(1)传感器:利用先进的传感技术可实时采集技术可实时采集物理实验中各物理量的数据;(2)计算机接口:将来自传感器的数据信号输入计算机,采样速率最高为25万次/S;(3)软件:中文与英文的应用软件。受需求牵引,新一代机载数据采集系统为满足飞行实验应用也在快速地发展。如爱尔兰ACRA公司2000年研发推出的新一代KAM500机载数据采集

14、系统到了2006年。本系统采用16位(A/D)模拟数字变换,总采样率达500K/S,同步时间为+/-250ns,可以利用方式组成高达1000通道的大容量的分布式采集系统。1.3该课题研究的主要容数据采集技术是信息科学的重要分支之一, 它研究信息数据的采集、存储、处理以与控制等问题。它是对传感器信号的测量与处理, 以微型计算机等高技术为基础而形成的一门综合应用技术。数据采集也是从一个或多个信号获取对象信息的过程。随着微型计算机技术的飞速发展和普与,数据采集监测已成为日益重要的检测技术,广泛应用于工农业等需要同时监控温度、湿度和压力等场合。数据采集是工业控制等系统中的重要环节,通常采用一些功能相对

15、独立的单片机系统来实现,作为测控系统的部分,数据采集的性能特点直接影响到整个系统。尽管现在以微机为核心的可编程数据采集与处理技术作为数据采集技术的发展方向得到了迅速的发展,并且适于通用微机(如IBM PC 系列)使用的板卡级数据采集产品也已大量出现,组成一个数据采集系统简单到只需要一块数据采集卡,把它插在微机的扩展槽,并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响,因为单片机功能强大、抗干扰能力强、可靠性高、灵活性好、开发容易等优点,使得基于单片机为核心的数据采集系统在许多领域得到了广泛的应用.传统的基于单片机的数据采集系统由于没有上位机的支持,不管采

16、用什么样的数据存储器,它的存储容量都是有限的,所以不得不对存储的历史数据进行覆盖刷新,这样不利于用户对数据进行整体分析,因而也不能对生产过程的状况进行准确的把握。在现代信号处理系统中,多通道数据采集系统广泛应用于各种商用以与工业领域中,随着信号处理系统计算量的增加,一个高速稳定的信号采集系统对于后续的数字信号处理有着重要的意义。同时,这些信号之间是相互关联的,需要进行相关分析,这就需要同步采集多通道信号,并能准确无误存储。现有的多数采集系统,只能循环采集多路信号,不能实时同步采集,无法对多通道信号进行相关信息的分析,而多通道同步数据采集系统恰恰弥补了传统采集系统的不足。2 数据采集系统设计2.

17、1数据采集系统数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统部的一个接口。数据采集技术广泛引用在各个领域。70年代初,随着计算机技术与大规模集成电路的发展,特别是微处理器与高速A/D转换器的出现,数据采集系统结构发生了重大变革。原来由小规模集成的数字逻辑电路与硬件程序控制器组成的采集系统被微处理器控制的采集系统所代替。由微处理器去完成程序控制,数据处理与大部分逻辑操作,使系统的灵活性和可靠性大提高,系统硬件成本和系统的重建费用大降低。在该系统中需要将模拟量转换为数据量,而 A/D是将模拟量转换为数字量的器件,他需要考虑的指标有:分辨率、转换时间、转换误差等等。而STM3

18、2单片机是该系统的基本的微处理系统,它完成数据读取、处理与逻辑控制、数据传输、数据转换等一系列的任务,然后通过控制液晶屏显示。数据采集系统不仅需要硬件设置,还需要软件的相应配置才能调试好硬件,是系统正常工作。硬件电路的调试与硬件设计和软件配置息息相关。在硬件设计时必须确保所有的元器件都设计正确后方可把元器件焊接上进行调试。软件配置和硬件调试基于Keil uVision5软件。系统硬件包括电源电路、串口电路、液晶屏显示、数据采集电路等。系统框图如图2-1所示。STM32AD转化模块STM32GPIO端口液晶显示数字信号模拟信号数据DMA采集图2-1 系统框图2.2方案论证2.2.1A/D模数转换

19、ADC的开关控制,通过设置ADC_CR2寄存器的ADON位可给ADC上电。当第一次设置ADON位时,它将ADC从断电状态下唤醒。 ADC上电延迟一段时间后(tSTAB),再次设置ADON位时开始进行转换。 通过清除ADON位可以停止转换,并将ADC置于断电模式。在这个模式中,ADC几乎不耗电(仅几个A)。由时钟控制器提供的ADCCLK时钟和PCLK2(APB2时钟)同步。RCC控制器为ADC时钟提供一个专用的可编程预分频器。ADC通道的选择上有16个多路通道。可以把转换组织成两组:规则组和注入组。在任意多个通道上以任意顺序进行的一系列转换构成成组转换。例如,可以如下顺序完成转换:通道3、通道8

20、、通道2、通道2、通道0、通道2、通道2、通道15。 规则组由多达16个转换组成。规则通道和它们的转换顺序在ADC_SQRx寄存器中选择。规则组中转换的总数应写入ADC_SQR1寄存器的L3:0位中。 注入组由多达4个转换组成。注入通道和它们的转换顺序在ADC_JSQR寄存器中选择。注入组里的转换总数目应写入ADC_JSQR寄存器的L1:0位中。 如果ADC_SQRx或ADC_JSQR寄存器在转换期间被更改,当前的转换被清除,一个新的启动脉冲将发送到ADC以转换新选择的组。 在连续转换模式中,当前面ADC转换一结束马上就启动另一次转换。此模式可通过外部触发启动或通过设置ADC_CR2寄存器上的

21、ADON位启动,此时CONT位是1。 每个转换后: (1)如果一个规则通道被转换: (a)转换数据被储存在16位的ADC_DR寄存器中 (b)EOC(转换结束)标志被设置 (c)如果设置了EOCIE,则产生中断。 (2)如果一个注入通道被转换: (a)转换数据被储存在16位的ADC_DRJ1寄存器中 (b)JEOC(注入转换结束)标志被设置 (c)如果设置了JEOCIE位,则产生中断。2.2.2 DMA采集直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。 两个DMA控制器有

22、12个通道(DMA1有7个通道,DMA2有5个通道),每个通道专门用来管理来自于一个或多个外设对存储器访问的请求。还有一个仲裁器来协调各个DMA请求的优先权。 DMA控制器和CortexM3核心共享系统数据总线,执行直接存储器数据传输。当CPU和DMA同时访问一样的目标(RAM或外设)时,DMA请求会暂停CPU访问系统总线达若干个周期,总线仲裁器执行循环调度,以保证CPU至少可以得到一半的系统总线(存储器或外设)带宽。DMA的主要特性:(a)12个独立的可配置的通道(请求):DMA1有7个通道,DMA2有5个通道。(b)每个通道都直接连接专用的硬件DMA请求,每个通道都同样支持软件触发。这些功

23、能通过软件来配置。(c)在同一个DMA模块上,多个请求间的优先权可以通过软件编程设置(共有四级:很高、高、中等和低),优先权设置相等时由硬件决定(请求0优先于请求1,依此类推)。(d)独立数据源和目标数据区的传输宽度(字节、半字、全字),模拟打包和拆包的过程。源和目标地址必须按数据传输宽度对齐。(e)支持循环的缓冲器管理。(f)每个通道都有3个事件标志(DMA半传输、DMA传输完成和DMA传输出错),这3个事件标志逻辑或成为一个单独的中断请求。(g)存储器和存储器间的传输。(h)外设和存储器、存储器和外设之间的传输。(i)闪存、SRAM、外设的SRAM、APB1、APB2和AHB外设均可作为访

24、问的源和目标。(j)可编程的数据传输数目:最大为65535。2.2.3 显示部分液晶显示屏(LCD)用于数字型钟表和许多便携式计算机的一种显示器类型。LCD显示使用了两片极化材料,在它们之间是液体水晶溶液。电流通过该液体时会使水晶重新排列,以使光线无法透过它们。因此,每个水晶就像百叶窗,既能允许光线穿过又能挡住光线。液晶显示器(LCD)目前科技信息产品都朝着轻、薄、短、小的目标发展,在计算机周边中拥有悠久历史的显示器产品当然也不例外。在便于携带与搬运为前题之下,传统的显示方式如CRT映像管显示器与LED显示板等等,皆受制于体积过大或耗电量甚巨等因素,无法达成使用者的实际需求。而液晶显示技术的发

25、展正好切合目前信息产品的潮流,无论是直角显示、低耗电量、体积小、还是零辐射等优点,都能让使用者享受最佳的视觉环境。本次设计采用的为TFT型液晶屏,TFT型的液晶显示器较为复杂,主要的构成包括了,荧光管、导光板、偏光板、滤光板、玻璃基板、配向膜、液晶材料、薄模式晶体管等等。首先液晶显示器必须先利用背光源,也就是荧光灯管投射出光源,这些光源会先经过一个偏光板然后再经过液晶,这时液晶分子的排列方式进而改变穿透液晶的光线角度。然后这些光线接下来还必须经过前方的彩色的滤光膜与另一块偏光板。因此我们只要改变刺激液晶的电压值就可以控制最后出现的光线强度与色彩,并进而能在液晶面板上变化出有不同深浅的颜色组合了

26、。本系统采用的显示屏由程序控制,从载有字库的SD卡加载字库后可直接使用,方便有效而且快捷简单,不易出错。3 硬件部分设计3.1芯片介绍3.1.1 STM32概况STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3核。按核架构分为不同产品:其中STM32F1系列有:STM32F103“增强型”系列STM32F101“基本型”系列STM32F105、STM32F107“互联型”系列增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是32位产品用户的最佳选择。两个系列

27、都置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。在STM32F105和STM32F107互连型系列微控制器之前,意法半导体已经推出STM32基本型系列、增强型系列、USB基本型系列、互补型系列;新系列产品沿用增强型系列的72MHz处理频率。存包括64KB到256KB闪存和 20KB到64KB嵌入式SRAM。新系列采用LQFP64、LQFP100和LFBGA100三种封装,不同的封装保持引脚排列一致性,结合STM32平台的设计理念,开发人员通过选择产品可重

28、新优化功能、存储器、性能和引脚数量,以最小的硬件变化来满足个性化的应用需求。截至2010年7月1日,市面流通的型号有:基本型:STM32F101R6、STM32F101C8、STM32F101R8、STM32F101V8、STM32F101RB、STM32F101VB增强型:STM32F103C8、STM32F103R8、STM32F103V8、STM32F103RB、STM32F103VB、 STM32F103VE、STM32F103ZESTM32型号的说明:以STM32F103RBT6这个型号的芯片为例,该型号的组成为7个部分,其命名规则如表3-1:表3-1 STM32命名表1STM32S

29、TM32代表ARM Cortex-M核的32位微控制器。2FF代表芯片子系列。3103103代表增强型系列。4RR这一项代表引脚数,其中T代表36脚,C代表48脚,R代表64脚,V代表100脚,Z代表144脚,I代表176脚。5BB这一项代表嵌Flash容量,其中6代表32K字节Flash,8代表64K字节Flash,B代表128K字节Flash,C代表256K字节Flash,D代表384K字节Flash,E代表512K字节Flash,G代表1M字节Flash。6TT这一项代表封装,其中H代表BGA封装,T代表LQFP封装,U代表VFQFPN封装。766这一项代表工作温度围,其中6代表-408

30、5,7代表-40105。3.1.2 STM32历史意法半导体(STMicroelectronics)集团于1987年6月成立,是由意大利的SGS 微电子公司和法国Thomson 半导体公司合并而成。1998年5月,SGS-THOMSON Microelectronics 将公司名称改为意法半导体,意法半导体是世界最大的半导体公司之一。从成立之初至今,ST 的增长速度超过了半导体工业的整体增长速度。自1999年起,ST 始终是世界十大半导体公司之一。据最新的工业统计数据,意法半导体 (STMicroelectronics)是全球第五大半导体厂商,在很多市场居世界领先水平。例如,意法半导体是世界第

31、一大专用模拟芯片和电源转换芯片制造商,世界第一大工业半导体和机顶盒芯片供应商,而且在分立器件、手机相机模块和车用集成电路领域居世界前列。意法半导(STMicroelectronics)整个集团共有员工近 50000 名,拥有16 个先进的研发机构、39 个设计和应用中心、15 主要制造厂,并在 36 个国家设有 78 个销售办事处。公司总部设在瑞士日瓦,同时也是欧洲区以与新兴市场的总部;公司的美国总部设在德克萨斯州达拉斯市的卡罗顿;亚太区总部设在新加坡;日本的业务则以东京为总部;中国区总部设在,负责、大陆和三个地区的业务。STM32L 系列产品基于超低功耗的 ARM Cortex-M4处理器核

32、,采用意法半导体独有的两大节能技术:130nm 专用低泄漏电流制造工艺和优化的节能架构,提供业界领先的节能性能。该系列属于意法半导体阵容强大的 32 位 STM32 微控制器产品家族,该产品家族共有 200余款产品,全系列产品共用大部分引脚、软件和外设,优异的兼容性为开发人员带来最大的设计灵活性。STM32F0 系列产品基于超低功耗的 ARM Cortex-M0 处理器核,整合增强的技术和功能,瞄准超低成本预算的应用。该系列微控制器缩短了采用 8 位和 16 位微控制器的设备与采用 32 位微控制器的设备之间的性能差距,能够在经济型用户终端产品上实现先进且复杂的功能。3.1.3 系统作用集成嵌

33、入式Flash和SRAM存储器的ARM Cortex-M3核。和8/16位设备相比,ARM Cortex-M3 32位RISC处理器提供了更高的代码效率。STM32F103xx微控制器带有一个嵌入式的ARM核,所以可以兼容所有的ARM工具和软件。嵌入式Flash存储器和RAM存储器:置多达512KB的嵌入式Flash,可用于存储程序和数据。多达64KB的嵌入式SRAM可以以CPU的时钟速度进行读写(不待等待状态)。可变静态存储器(FSMC):FSMC嵌入在TM32F103xC,STM32F103xD,STM32F103xE中,带有4个片选,支持四种模式:Flash,RAM,PSRAM,NOR和

34、NAND。3个FSMC中断线经过OR后连接到NVIC。没有读/写FIFO,除PCCARD之外,代码都是从外部存储器执行,不支持Boot,目标频率等于SYSCLK/2,所以当系统时钟是72MHz时,外部访问按照36MHz进行。嵌套矢量中断控制器(NVIC):可以处理43个可屏蔽中断通道(不包括Cortex-M3的16根中断线),提供16个中断优先级。紧密耦合的NVIC实现了更低的中断处理延迟,直接向核传递中断入口向量表地址,紧密耦合的NVIC核接口,允许中断提前处理,对后到的更高优先级的中断进行处理,支持尾链,自动保存处理器状态,中断入口在中断退出时自动恢复,不需要指令干预。外部中断/事件控制器

35、(EXTI):外部中断/事件控制器由用于19条产生中断/事件请求的边沿探测器线组成。每条线可以被单独配置用于选择触发事件(上升沿,下降沿,或者两者都可以),也可以被单独屏蔽。有一个挂起寄存器来维护中断请求的状态。当外部线上出现长度超过部APB2时钟周期的脉冲时,EXTI能够探测到。多达112个GPIO连接到16个外部中断线。时钟和启动:在启动的时候还是要进行系统时钟选择,但复位的时候部8MHz的晶振被选用作CPU时钟。可以选择一个外部的4-16MHz的时钟,并且会被监视来判定是否成功。在这期间,控制器被禁止并且软件中断管理也随后被禁止。同时,如果有需要(例如碰到一个间接使用的晶振失败),PLL

36、时钟的中断管理完全可用。多个预比较器可以用于配置AHB频率,包括高速APB(PB2)和低速APB(APB1),高速APB最高的频率为72MHz,低速APB最高的频率为36MHz。Boot模式:在启动的时候,Boot引脚被用来在3种Boot选项种选择一种:从用户Flash导入,从系统存储器导入,从SRAM导入。Boot导入程序位于系统存储器,用于通过USART1重新对Flash存储器编程。电源供电方案:VDD ,电压围为2.0V-3.6V,外部电源通过VDD引脚提供,用于I/O和部调压器。VSSA和VDDA,电压围为2.0-3.6V,外部模拟电压输入,用于ADC,复位模块,RC和PLL,在VDD

37、围之(ADC被限制在2.4V),VSSA和VDDA必须相应连接到VSS和VDD。VBAT,电压围为1.8-3.6V,当VDD无效时为RTC,外部32KHz晶振和备份寄存器供电(通过电源切换实现)。电源管理:设备有一个完整的上电复位(POR)和掉电复位(PDR)电路。这条电路一直有效,用于确保从2V启动或者掉到2V的时候进行一些必要的操作。当VDD低于一个特定的下限VPOR/PDR时,不需要外部复位电路,设备也可以保持在复位模式。设备特有一个嵌入的可编程电压探测器(PVD),PVD用于检测VDD,并且和VPVD限值比较,当VDD低于VPVD或者VDD大于VPVD时会产生一个中断。中断服务程序可以

38、产生一个警告信息或者将MCU置为一个安全状态。PVD由软件使能。电压调节:调压器有3种运行模式:主(MR),低功耗(LPR)和掉电。MR用在传统意义上的调节模式(运行模式),LPR用在停止模式,掉电用在待机模式:调压器输出为高阻,核心电路掉电,包括零消耗(寄存器和SRAM的容不会丢失)。低功耗模式:STM32F103xx支持3种低功耗模式,从而在低功耗,短启动时间和可用唤醒源之间达到一个最好的平衡点。休眠模式:只有CPU停止工作,所有外设继续运行,在中断/事件发生时唤醒CPU;停止模式:允许以最小的功耗来保持SRAM和寄存器的容。1.8V区域的时钟都停止,PLL,HSI和HSE RC振荡器被禁

39、能,调压器也被置为正常或者低功耗模式。设备可以通过外部中断线从停止模式唤醒。外部中断源可以使16个外部中断线之一,PVD输出或者TRC警告。待机模式:追求最少的功耗,部调压器被关闭,这样1.8V区域断电。PLL,HSI和HSE RC振荡器也被关闭。在进入待机模式之后,除了备份寄存器和待机电路,SRAM和寄存器的容也会丢失。当外部复位(NRST引脚),IWDG复位,WKUP引脚出现上升沿或者TRC警告发生时,设备退出待机模式。进入停止模式或者待机模式时,TRC,IWDG和相关的时钟源不会停止。STM32引脚如图3-1.图3-1 STM32引脚图3.1.4 性能特点核:ARM32位Cortex-M

40、3 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通

41、道DMA控制器。支持的外设:定时器,ADC,DAC,SPI,IIC和UART。3个12位的us级的A/D转换器(16通道):A/D测量围:0-3.6V。双采样和保持能力。片上集成一个温度传感器。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通道高级控制定时

42、器:最多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封装形式。3.1.5 架构优势除新增的功能强化型外设接口外,STM32互连系列还提供与其它STM32微控制器一样的标准

43、接口,这种外设共用性提升了整个产品家族的应用灵活性,使开发人员可以在多个设计中重复使用同一个软件。新STM32的标准外设包括10个定时器、两个12位1-Msample/s 模数转换器(交错模式下2-Msample/s)、两个12位数模转换器、两个I2C接口、五个USART接口和三个SPI端口。新产品外设共有12条DMA通道,还有一个CRC计算单元,像其它STM32微控制器一样,支持96位唯一标识码。新系列微控制器还沿续了STM32产品家族的低电压和节能两大优点。2.0V到3.6V的工作电压围兼容主流的电池技术,如锂电池和镍氢电池,封装还设有一个电池工作模式专用引脚Vbat。以72MHz频率从闪

44、存执行代码,仅消耗 27mA电流。低功耗模式共有四种,可将电流消耗降至两微安。从低功耗模式快速启动也同样节省电能;启动电路使用STM32部生成的8MHz信号,将微控制器从停止模式唤醒用时小于6微秒。3.1.6 能耗模式意法半导体的EnergyLite超低功耗技术平台是STM32L取得业领先的能效性能的关键。这个技术平台也被广泛用于意法半导体的8位微控制器STM8L系列产品。EnergyLite超低功耗技术平台基于意法半导体独有的130nm制造工艺,为实现超低的泄漏电流特性,意法半导体对该平台进行了深度优化。在工作和睡眠模式下,EnergyLite超低功耗技术平台可以最大限度提升能效。此外,该平

45、台的嵌闪存采用意法半导体独有的低功耗闪存技术。这个平台还集成了直接访存(DMA)支持功能,在应用系统运行过程中关闭闪存和CPU,外设仍然保持工作状态,从而可为开发人员节省大量的时间。除最为突出的与制程有关的节能特色外,STM32L系列还提供更多其它的功能,开发人员能够优化应用设计的功耗特性。通过六个超低功耗模式,STM32L系列产品能够在任何设定时间以最低的功耗完成任务。这些可用模式包括:(在1.8V/25C环境的初步数据)(1)10.4A低功耗运行模式,32kHz运行频率(2)6.1 A低功耗睡眠模式,一个计时器工作(3)1.3 A 停机模式:实时时钟(RTC)运行,保存上下文,保留RAM容

46、(4)0.5 A 停机模式:无实时时钟运行,保存上下文,保留RAM容(5)1.0A待机模式:实时时钟运行,保存后备寄存器(6)270nA待机模式:无实时时钟运行,保存后备寄存器STM32L系列新增低功耗运行和低功耗睡眠两个低功耗模式,通过利用超低功耗的稳压器和振荡器,微控制器可大幅度降低在低频下的工作功耗。稳压器不依赖电源电压即可满足电流要求。STM32L还提供动态电压升降功能,这是一项成功应用多年的节能技术,可进一步降低芯片在中低频下运行时的部工作电压。在正常运行模式下,闪存的电流消耗最低230A/MHz,STM32L的功耗/性能比最低185A/DMIPS。此外,STM32L电路的设计目的是

47、以低电压实现高性能,有效延长电池供电设备的充电间隔。片上模拟功能的最低工作电源电压为1.8V。数字功能的最低工作电源电压为1.65V,在电池电压降低时,可以延长电池供电设备的工作时间。3.2液晶显示模块3.2.1液晶显示模块概述12864 中文 汉字图形点阵液晶显示模块,可显示汉字与图形,置8192 个中文汉字(16X16 点阵)、128个字符(8X16 点阵)与64X256 点阵显示RAM(GDRAM)。主要技术参数和显示特性: 电源:VDD 3.3V+5V(置升压电路,无需负压); 显示容:128 列 64 行 显示颜色:黄绿/蓝屏/灰屏 显示角度:6:00 钟直视 LCD 类型:STN

48、与MCU 接口:8 位或4 位并行/3 位串行 配置LED 背光多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等3.2.2 外形尺寸 外观尺寸:937012.5mm 视域尺寸:7339mm外形尺寸如图3-2。图3-2 LCD12864外形图3.2.3 模块引脚说明LCD12864引脚说明见表3-2。表3-2LCD引脚说明引脚号引脚名称方向功能说明1GND-模块的电源地2VCC-模块的电源正端3V0-LCD 驱动电压输入端4RS(CS)H/L并行的指令/数据选择信号;串行的片选信号续表3-2引脚号引脚名称方向功能说明5R/W(SID)H/L并行的读写选择信号;串行的数据口6E(CLK)H

49、/L并行的使能信号;串行的同步时钟7DB0H/L数据08DB1H/L数据19DB2H/L数据210DB3H/L数据311DB4H/L数据412DB5H/L数据513DB6H/L数据614DB7H/L数据715PSBH/L并/串行接口选择:H-并行;L-串行16NC空脚17/RSTH/L复位 低电平有效18VOUT倍压输出脚 (VDD=+3.3V 有效)19LED-A-背光源正极(LED+5V)20LED-K-背光源负极(LED-OV)逻辑工作电压(VDD):4.55.5V电源地(GND):0V工作温度(Ta):060(常温) / -2075(宽温)3.2.4 接口时序模块有并行和串行两种连接方

50、法(时序如下):(1)8 位并行连接时序图如图3-3和图3-4。图3-3 MPU写资料到模块图3-4 MPU从模块读出资料(2)串行连接时序如图3-5所示。图3-5串行连接时序图串行数据传送共分三个字节完成: 第一字节:串口控制格式 11111ABC A 为数据传送方向控制:H 表示数据从LCD 到MCU,L 表示数据从MCU 到LCD B 为数据类型选择:H 表示数据是显示数据,L 表示数据是控制指令 C 固定为0 第二字节:(并行)8位数据的高4位格式 DDDD0000 第三字节:(并行)8位数据的低4位格式 0000DDDD串行接口时序参数如图3-6所示(测试条件:T=25 VDD=4.

51、5V)。图3-6 串行接口时序参数3.3外设部分本次设计中的模拟信号由外部设计电路板提供,其作用是将STM32系统版提供的3.3V电源电压控制输出,可调围为03.3V。电路板的设计制作采用了三个电位器,采用并联的方式控制三路电源,提供三路可调节输出电源。其原理图如图3-7所示。图3-7 三路电源原理图电位器的简单介绍。电位器是具有三个引出端、阻值可按某种变化规律调节的电阻元件。电位器通常由电阻体和可移动的电刷组成。当电刷沿电阻体移动时,在输出端即获得与位移量成一定关系的电阻值或电压。电位器既可作三端元件使用也可作二端元件使用。后者可视作一可变电阻器,由于它在电路中的作用是获得与输入电压(外加电

52、压)成一定关系得输出电压,因此称之为电位器电位器在电路中的主要作用有以下几个方面(1)用作分压器电位器是一个连续可调的电阻器,当调节电位器的转柄或滑柄时,动触点在电阻体上滑动。此时在电位器的输出端可获得与电位器外加电压和可动臂转角或行程成一定关系的输出电压。(2)用作变阻器电位器用作变阻器时,应把它接成两端器件,这样花电位器的行程围,便可获得一个平滑连续变化的电阻值。(3)用作电流控制器当电位器作为电流控制器使用时,其中一个选定的电流输出端必须是滑动触点引出端。4 软件部分设计4.1简介KeilUvision5Keil 是美国Keil Software公司出品的兼容单片机C语言软件开发系统,与

53、汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、器、库管理和一个功能强大的仿真调试器等在的完整开发方案,通过一个集成开发环境(Vision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。Keil有以下几个特点:(1)全功能的源代码编辑器;(2)器件库用来配置开发工具设置;(3)项目管理器用来创建和维护用户的项目;(4)集成的

54、MAKE工具可以汇编、编译和连接用户嵌入式应用;(5)所有开发工具的设置都是对话框形式的;(6)真正的源代码级的对CPU和外围器件的调试器;(7)高级GDI(AGDI)接口用来在目标硬件上进行软件调试以与和Monitor-51进行通信。4.2 Keil5工程创建与程序下载4.2.1 创建工程步骤一:创建文件夹和相应库文件新建工程文件夹目录如图4-1。图4-1 目录其中,文件夹Prj包含Lis,Output文件夹,之后添加常用文件,如main.c bsp.c function.c Global.h Config.h等。步骤二:创建工程文件 打开keil5,创建新工程,如图4-2。图4-2 工程创

55、建弹出对话框,选择路径为之前新建的Prj文件夹,如图4-3所示,单击保存。图4-3 保存文件弹出对话框如下,选择合适芯片,如图4-4。图4-4 芯片选择选择需要使用的芯片型号,单机OK,弹出的对话框可直接关掉。步骤三:添加库函数 添加函数如图4-5所示。图4-5 函数添加单击图标,弹出对话框如图4-6:图4-6 文件子项目删除Project Targets一栏中的Target1(选中Target1单击红叉)之后单击新建文件,命名。同样的方法,在Groups中添加文件如图4-7:图4-7 添加文件Files一栏中逐个添加相应的库函数,例如:选中Groups中的CMSIS,单击,即可在弹出的对话框

56、中添加相应的库函数,如图4-8。具体步骤:单击图4-8 添加库函数弹出对话框如图4-9。图4-9 库函数选项选择库函数所在路径,在文件类型中选择all the files,在该目录下全选所有文件,单击Add,即添加成功,如图4-10所示。图4-10 函数路径其他库函数添加方法类似,全部添加后单击ok。步骤四:选择输出路径 点击图标,如图4-11所示。图4-11 功能窗口在弹出的options窗口中选择output标签如图4-12。图4-12 Output窗口单击弹出图4-13对话框。图4-13 文件窗口双击output,点ok,返回options窗口单击ok确认修改。之后选择listing标签

57、,同样方法将路径设置为list文件夹,单击ok确认,如图4-14。图4-14 文件路径步骤五:添加路径和定义选择options窗口的C/C+标签,单击后的,弹出窗口如图4-15:图4-15 路径选择,再单击红线标出的位置选择路径。完成后如图4-16,选择ok确认。图4-16 路径显示依旧在C/C+标签下,Define一栏中输入定义如图4-17,二者之间用空格隔开图4-17 定义单击ok确认。自此工程已成功建立,可进行编写。4.2.2 程序下载程序编写完成后,单击如图4-18标进行编译图4-18 编译编译成功后单击,打开Debug标签,单击settings,如图4-19所示。图4-19 设置在弹

58、出的窗口Debug标签中选择下载类型(JTAG/SW),如图4-20所示。图4-20 下载类型在FlashDownload标签下勾选,之后单击选择一项,单击add,之后ok确认,如图4-21和图4-22所示。图4-21 下载设置图4-22 下载路径下载程序前可在options窗口中utilities标签下setting选项中确认,与之前设置相符即可,如图4-23所示。图4-23 下载设置确定设置完成后单击load下载程序,如图4-24所示。图4-24 下载窗口4.3程序设计4.3.1 主程序部分本软件系统是基于STM32的库函数下进行的编程。需要对库函数进行调用并对相应的函数进行初始化。然后对

59、采集的模拟信号进行转换,通过对波特率的调整,对信号进行实时检测,然后通过均值滤波,控制液晶显示屏显示最终得到的结果。开始其具体架构如图4-25。初始化LCD设置HENJLCD一次加载读取模拟信号AD转换数字信号滤波LCD二次加载(a)系统框图开始开始初始化延时函数写入寄存器序号串口波特率写数据中断优先级读数据颜色设置LED端口读取颜色读取坐标LCD液晶显示是否越过范围Y内部内存池N挂载SD卡开启显示挂载FLASH关闭显示(c)液晶显示流程图(b)初始化流程图图4-25 系统流程图4.3.2ADC模块由于STM32自带ADC模块,所以只需要对其进行配置就可使用。12位ADC是一种逐次逼近型模拟数

60、字转换器。它有多达18个通道,可测量16个外部和2个部信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。ADC的结果可以左对齐或右对齐方式存储在16位数据寄存器中。 模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。 ADC的输入时钟不得超过14MHz,它是由PCLK2经分频产生。图4-26为一个ADC模块的框图。图4-26ADC模块ADC配置中,采集信号的方式是通过DMA采集。对DMA控制器的介绍,在第二章已经讲到,DMA的功能框图如图4-27。图4-27 DMA功能图(1)DMA2仅存在于大容量产品和互联型产品。 (2)SPI/I2S3、UART4、TIM5、

61、TIM6、TIM7和DAC的DMA请求仅存在于大容量产品和互联型产品。 (3)ADC3、SDIO和TIM8的DMA请求仅存在于大容量产品。 5 系统调试 这个系统是一个数据采集系统。系统调试以程序为主,硬件调试应先检测电路的焊接是否正确,然后用外用表检测或通电检测其是否有短路或断路。软件调试包括调试程序和对硬件准确性的调试。在整个系统中,主要用到了三个电位器作为外设,控制电源电压反馈给STM32芯片。而芯片通过不停采集信号,转换信号,输出信号形成一个循环过程。然后将最终结果通过控制液晶显示屏显示出来。采集的三个信号分别对应三个不同的显示数值,通过对电位器的调节,可以实时控制电压并精确到10毫伏显示。实验最终电路板正常工作,程序正常运行,并最终采集到数值。不同阻值对应的调试结果如图5-1所示。(a)最大阻值(b)阻值为零(c)任意阻值I(d)任意阻值II图5-1 不同阻值信号调试结果本次设计调试的系统性能对照表。准确电压值由万能表测定。如表5-1所示,本次性能测试只测试了一组通道。表5-10 n1n2系统值/mV329.90234.8

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!