1.引言

近年来,数据采集及其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。

数据采集技术是信息科学的重要分支之一,数据采集也是从一个或多个信号获取对象信息的过程。数据采集是工业控制等系统中的重要环节,通常采用一些功能相对独立的单片机系统来实现,作为测控系统不可缺少的部分,数据采集的性能特点直接影响到整个系统。

电压的测量最为普遍性,研究设计并提高电压测量精度的方法及仪器具有十分重要的意义。在电压测量设计中,单片机作为控制器,是整个设计的核心。除此之外,设计中还必须有模数转换器(ADC)。ADC用于直接采集模拟电压并将模拟信号转换成数字信号,它直接影响着数据采集的精度和速度。

2.系统概述

本设计的微控制器采用STM32单片机。STM32系列单片机是基于ARM公司Cortex-M3内核设计的。它的时钟频率达到72MHz,是同类产品中性能较高的产品,具有高性能、低成本、低功耗的优点,是嵌入式应用设计中良好的选择。设计中的A/D转换器采用STM32内置ADC。STM32的ADC是一种12位逐次逼近型模拟数字转换器。

它有多达18个通道,可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。转换结果可以左对齐或右对齐方式存储在16位数据寄存器中。其输入时钟最大可达到14MHz。

本设计可测量8通道电压值,测量范围为0-10V的电压,显示误差为±0.001V。LCD实时显示电压值和波形图,MicroSD卡对数据进行同步存储。系统原理框图如图1所示。

图1 系统原理框图

3.系统硬件设计

本设计的硬件主要包括STM32模块,LCD模块,SD卡模块和按键模块。STM32模块不仅作为核心控制器,还包括ADC设备,它主要包括STM32最小系统电路。LCD模块主要包括LCD驱动接口电路。SD卡模块主要是SD卡驱动电路。除此之外,还有用于程序下载调试的J-Link接口电路和电源电路等。

3.1、STM32最小系统

本模块主要介绍STM32芯片和设计中用到的外设模块。

STM32最小系统使用外部高速时钟,外接8M晶振。STM32的两个BOOT引脚都接低电平,以使用户闪存存储器为程序启动区域。芯片采用J-Link下载模式,也可以进行硬件调试。STM32的电源引脚都接了滤波电容以确保单片机电源的稳定。

STM32F103VET6拥有3个ADC,这些ADC可以独立使用,也可以使用双重模式(提高采样率)。STM32的ADC是12位逐次逼近型的模拟数字转换器。它有18个通道可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续、扫描或间断模式执行。在程序正常执行的时候,中断是可以打断程序正常执行的。同这个类似,注入通道的转换可以打断规则通道的转换,在注入通道被转换完成之后,规则通道才得以继续转换。

本设计中ADC采集的数据使用DMA进行传输,以达到高速实时的目的。

3.2、ADC控制电路

STM32的数字/模拟转换模块(DAC)是12位数字输入,电压输出的数字/模拟转换器。本设计中使用DAC来控制ADC匹配电路的增益。在打开DAC模块电源和配置好DAC所需GPIO的基础上,往DAC通道的数据DAC_DHRx寄存器写入数据,如果没有选中硬件触发,存入寄存器DAC_DHRx的数据会在一个APB1时钟周期后自动传至寄存器DAC_DORx。一旦数据从DAC_DHRx寄存器装入DAC_DORx寄存器,在经过一定时间之后,输出即有效,这段时间的长短依电源电压和模拟输出负载的不同会有所变化。

图2  ADC匹配电路图

TM32的ADC前加入匹配电路。在ADC控制电路中,输入信号先经过射极电压跟随电路,然后经过分压电路,使输入信号满足AD603的输入要求。然后再经过射极电压跟随电路,输入ADC输入端。AD603的控制输入使用STM32的DAC,可以满足增益的要求。

匹配电路以AD603为核心.AD603为单通道、低噪声、增益变化范围线性连续可调的可控增益放大器。带宽90MHz时,其增益变化范围为-10dB~+30dB;带宽为9M时范围为10~50dB。

将VOUT与FDBK短路,即为宽频带模式(90MHz宽频带),AD603的增益设置为-11.07dB~+31.07dB。AD603的5、7脚相连,单片AD603的可调范围为-10dB~30dB。AD603的增益与控制电压成线性关系,其增益控制端输入电压范围为±500mv,增益调节范围为40dB,当步进5dB时,控制端电压需增大:

ADC匹配电路的电路图如图2所示。

3.3、LCD控制电路

本设计所使用的LCD为2.4寸,320&mes;240分辨率。LCD模块使用STM32的FSMC接口控制。FSMC(FlexibleStacMemoryController)即可变静态存储控制器,是STM32系列中内部集成256KB以上Flash,后缀为xC、xD和xE的高存储密度微控制器特有的存储控制机制。通过对特殊功能寄存器的设置,FSMC能够根据不同的外部存储器类型,发出相应的数据/地址/控制信号类型以匹配信号的速度,从而使得STM32系列微控制器不仅能够应用各种不同类型、不同速度的外部静态存储器,而且能够在不增加外部器件的情况下同时扩展多种不同类型的静态存储器,满足系统设计对存储容量、产品体积以及成本的综合要求。

在STM32内部,FSMC的一端通过内部高速总线AHB连接到内核Cortex-M3,另一端则是面向扩展存储器的外部总线。内核对外部存储器的访问信号发送到AHB总线后,经过FSMC转换为符合外部存储器通信规约的信号,送到外部存储器的相应引脚,实现内核与外部存储器之间的数据交互。FSMC起到桥梁作用,既能够进行信号类型的转换,又能够进行信号宽度和时序的调整,屏蔽掉不同存储类型的差异,使之对内核而言没有区别。FSMC可以连接NOR/PSRAM/NAND/PC卡等设备,并且拥有FSMC_A[25:0]共26条地址总线,FSMC[15:0]共16条数据总线。另外,FSMC扩展的存储空间被分成8个块。通过地址线选择操作的块。这样,LCD将被看作一个拥有一块地址空间的存储器进行操作。

3.4、SD卡驱动电路

本设计中使用的SD卡为MicroSD,也称TF卡。MicroSD卡是一种极细小的快闪存储器卡,主要应用于移动电话,但因它的体积微小和储存容量的不断提升,现在已经使用于GPS设备、便携式音乐播放器、数码相机和一些快闪存储器盘中。MicroSD卡引脚图如图9所示。

MicroSD卡与SD卡一样,有SPI和SDIO两种操作时总线。SPI总线相对于SDIO总线接口简单,但速度较慢。我们使用SDIO模式。

stm32采集交流电压信号_基于STM32的多路电压采集的设计与实现相关推荐

  1. stm32采集交流电压信号_基于STM32的交流电压检测.pdf

    第24卷第13期 电子设计工程 2016年7月 V01.24 No.13 Electronic Jul.2016 DesignEngineering 基于STM32的交流电压检测 任宏斌,冷建伟 (天 ...

  2. stm32 工业按键检测_基于STM32芯片的能谱仪设计

    随着对天然辐射场中低能量γ谱学及其应用的深入研究,γ能谱仪不仅在固体矿产勘探.油气普查.水文和工程地质调查等工业生产及科学研究方面,甚至在民用的环境辐射场调查.建材与建筑装饰材料放射性检测方面,都得到 ...

  3. stm32芯片休眠模式_基于STM32单片机低功耗模式机制详细解析

    相关推荐 创新的 RXv3 核大幅提升了久经验证的瑞萨电子 RX CPU 核架构性能,实现了高达 5.8 Co... 发表于 2018-10-25 14:54 • 0次阅读 RXv3核实现了5.8 C ...

  4. 基于单片机串口远程多路温湿度采集仿真-基于单片机ADC0809八路电压采集系统设计-基于单片机16x32点阵多模式显示仿真设计-基于单片机餐厅呼叫控制系统仿真设计-基于STM32单片机的智能水杯设计

    1220基于单片机ADC0809八路电压采集系统设计-毕设课设资料 数码管显示,测量八路电压表. #define addo (5.0/255.0) #define zero 0.005 //用于校准A ...

  5. 基于单片机波形发生器PCB原理图报告设计资料-基于单片机比赛计时计分电路仿真设计-基于单片机报警器与旋转灯设计-基于单片机八路数据电压采集报警控制系统-基于单片机病房呼叫系统控制系统设计【毕设课设资】

    1302基于单片机波形发生器PCB原理图报告设计资料-毕设课设原理图程序资料 设计一个信号发生器,能在单片机的基础上控制并产生三角波.方波.正弦波和矩形波,且频率幅度和波形可以通过按键改变. #inc ...

  6. stm32采集脉冲信号_基于STM32+FPGA的数据采集系统的设计与实现

    引言 由于火控系统工作环境特殊,所需采集信号复杂多样,传统的以微控制器或PC为主的采集系统往往难以胜任.针对上述问题,提出了一种基于STM32+FPGA的数据采集系统的设计方案,该方案不仅能够完成对多 ...

  7. stm32超声波扫频_基于STM32的脉冲式及扫频式超声波除垢信号源设计

    基于 STM32 的脉冲式及扫频式超声波除垢信号源设计 李连通 , 张伟光 *, 李金博 [摘 要] [摘 要] 介绍了一种基于 STM32 主控芯片产生两种不同信号源的实 现 ] 脉冲信号源可以产生 ...

  8. stm32超声波扫频_基于STM32的超声波发生器扫频信号源的实现

    基于 STM32 的超声波发生器扫频信号源的实现 张加岭,李善波,侯颖钊,赵 杰 [摘 要] 摘要:扫频信号源采用以 STM32F103 单片机为核心,实现高精度锯 齿波扫频.由于超声波电源换能器串联 ...

  9. delphi 数字识别_基于STM32单片机的车牌识别

    系统介绍    使用STM32F103RCT6作为主控,摄像头使用OV7670(带FIFO).STM32进行了16倍频.识别过程分别为:图像采集,二值化,识别车牌区域,字符分割,字符匹配. 识别过程分 ...

  10. stm32车牌识别_基于STM32单片机的车牌识别

    系统介绍    使用STM32F103RCT6作为主控,摄像头使用OV7670(带FIFO).STM32进行了16倍频.识别过程分别为:图像采集,二值化,识别车牌区域,字符分割,字符匹配. 识别过程分 ...

最新文章

  1. web11 Struts处理表单数据
  2. 1、计算机网络之计算机之间的连接方式
  3. 打jar包和执行jar包
  4. 如何在sql存储过程中打log_教你如何记录Entity Framework框架自动生成的SQL语句
  5. linux read命令详解
  6. SurfaceView的经典写法
  7. php登入模块代码,thinkphp LoginAction.class.php 登录模块
  8. 高速PCB中常见存储器之FLASH引脚图、布局布线设计
  9. AD OU管理|委派密码重置权限
  10. 夺命雷公狗---微信开发54----微信js-sdk接口开发(1)之快速入门
  11. inux系统磁盘管理基础知识及总结
  12. 华为研发项目管理方法(HRDPM)核心五法则
  13. 截止2020年中国有多少大学生?
  14. linux 模拟手机浏览器,Firefox模拟手机浏览器(iOS+Android) – UserAgent Switcher使用方法...
  15. Remove annoying AD window when PopKart exits
  16. MTF 曲线图应该怎么看?
  17. 9月29更新美版T-mobile版本iPhone7代和7P有锁机卡贴解锁方法
  18. java mocked_java – 使mocked方法返回传递给它的参数
  19. 纯css实现鼠标悬浮、点击更改元素背景
  20. PC817做IO输出使用方法

热门文章

  1. 如何卸载office201032位_office2010如何卸载干净,笔者教你win7系统彻底卸载office2010的攻略...
  2. windows下安装redis详细教程
  3. 基于javaweb+mysql数据库实现的宠物领养|流浪猫狗网站项目源代码
  4. html5兼容QQ浏览器,【QQ浏览器5.1】发布 HTML5兼容性测试
  5. 皮尔逊/斯皮尔曼相关系数
  6. AutoCAD2018/2019中文破解版,下载与激活
  7. mac java 安装教程_mac 安装jdk1.8 附详细教程
  8. idea 格式化vue代码,检查语法
  9. 氪8号积木机器人编程_编程机器人怎么选?
  10. 2023年计算机网络考研真题详解