当前位置:首页 > 演讲稿 > 微控制器是什么【基于Atmmel微控制器的小型数据测量系统的实现】
 

微控制器是什么【基于Atmmel微控制器的小型数据测量系统的实现】

发布时间:2019-01-01 04:15:56 影响了:

  引言      随着无铅焊料应用的普及,无铅焊料焊点的可靠性问题显得尤为重要。美国AT&T的H Anthony Chan认为电子产品的失效主要源于元件问题、设计不良和组装过程。电子器件服役时,在环境温度变化(或功率循环)时由于芯片与基板、元器件与印制电路板材料热膨胀系数的差异,在焊点内产生热应力而造成焊点的疲劳损伤;相对于服役的环境温度,焊料自身熔点较低,随着时间的延续,产生明显的黏性行为而导致焊点的蠕变损伤。
  本项目中所开发的测量系统主要是针对手机领域的应用。手机生产商要保证手机的质量,因此对手机中的焊点可靠性提出了更高要求。焊点材料的设计要考虑到使用过程中机械和化学因素的影响。如果材料硬度过大,焊点就容易从电路板上脱落。如果材料硬度不够,就容易断掉。因此,要设计一个数据采集系统,对手机受加速度温度和湿度的影响进行测试,从而可以对焊点材料的设计提供依据。
  
  
  基于ATMEL芯片的数据采集系统工作原理
  
  系统由数据采集模块、数据存储模块和数据分析模块三部分组成。数据采集模块由加速度传感器、湿度和温度传感器、ADC、调压电路模块及辅助电路组成,数据存储模块由Multi Mediacard完成,数据分析模块在LabView中实现。
  整个系统的工作原理:湿度、温度传感器采集湿度及温度信息,输出为数字信号。XY方向采用相同的加速度传感器,Z方向加速度则采用另外一种传感器进行测量,输出的加速度信号均为模拟信号。调压电路将系统所供的3.6V电压调整为5V,以满足加速度传感器要求。ADC对模拟加速度信号进行模数转换,从而得到数字加速度信号。所采集到的数字加速度,湿度以及温度信号由微控制器控制,经由SSPI存储到MMC card。在PC上,通过读卡器读取MMC卡中存储的数据信息并使用LabView软件进行分析和显示。
  
  
  湿度和温度传感器
  SHT系列传感器包括一个湿度传感器、一个温度传感器,一个on-chip AD转换单元以及数字逻辑单元。On-chipAD转换单元将测到的湿度信号转换成14位的数字输出,将温度信号转换成12位的数字输出。数字逻辑单元执行on-chip标定,以及用来同微控制器进行两线接口通信。此传感器的缺点在于,它的两线接口同其他两线接口不兼容。因此要实现同微控制器的接口通信,需要进行额外的软件或者硬件设计。本设计通过软件编程来实现同微控制器的接口通信,虽然速度比硬件慢一些,但是因为温度以及湿度的测量速度不是那么重要,所以本文选择采用软件编程以实现接口通信。
  
  加速度传感器
  X、Y轴传感器芯片都采用了ADXL193,z轴传感器芯片采用MMA1200D。三个方向的传感器具有相同的动态范围±250g,并且具有相同的灵敏度8mV/g和响应带宽400Hz。不同之处在于MMA 1200D拥有一个4阶Bessel滤波器,而ADXLl93只具有2阶Bessel滤波器。它们的输入电压为5V,输出信号为模拟信号。由于输出数据为模拟信号,需要经过ADC单元将其转换成数字信号。
  
  硬件电路
  
  本系统采用的微控制器是Atmel公司的Atmega128L,此MCU(Micro Controller Unit)具有较高的性价比,是高性能、低功耗的8位高速处理器。它的工作电压为2.7~5.5V。ATmega128具有如下特点:两个可编程的串行USART、可工作于主机/从机模式的SPI串行接口以及六种可以通过软件选择的省电模式。LED可由MCU控制以显示系统运行状态。
  
  ADC
  虽然Atmega128L本身具有ADC模块,但是传感器的输出信号电压范围是0~5V,而在本文中Atmega128LADC模块的输入信号电压范围仅为0~3.6V,不能满足需要,所以要使用外部ADC。本文采用TLC3544进行模数转换,它比Atmega128的内部ADC具有更高的转换精度和速度。一般来说,ADC转换周期包括以下三个步骤:
  命令阶段(4个串行时钟周期),选择读通道,并写入配置的寄存器。
  采样阶段(12个串行时钟周期),一个采样信号被送入转换器。
  转换阶段,将采样信号转换成数字编码。
  命令阶段结束之后,采样阶段自动开始。采样阶段结束之后,转换自动开始。当收到新的命令,按此顺序再次进行。在前两个阶段总计16个串行时钟周期里,前一个A/D转换周期的转换结果被送给微控制器。
  我们所采用的Texas InstrumentsTLC3544 ADC的最大采样率可以用下面方式计算出。根据datasheet,转换阶段大约需要2.8μs。命令及采样阶段持续16个串行时钟周期,对于Atmega128L,最小的串行时钟周期为半个CPU时钟,也就是4MHz。所以命令及采样阶段总共耗时4μs,加上转换阶段所需时间,一个AD周期大约需要7μs,理论上能到达的最大采样率为142kS/s。
  实际达到的采样率可用如下方法测量。使用微控制器的内部硬件计数器,每一个CPU时钟周期都会自动计数。硬件计数器与CPU的ALU单元并行运行,因此计数并不影响程序的运行。三个转换周期(X,Y,Z)总共持续了223个时钟周期。CPU的时钟频率为8MHz,所以三个转换周期持续的时间为223/8=28μs,也就得到了其采样率为3/(28×10-6)=107kS/s
  
  电源管理
  手机电池提供的电压为3.6V,因此在挑选系统组件时,尽量选择组件所需供电电压范围在3.3~3.6V。但是,本文所选的加速度传感器不能达到电压要求,其需要5V供电电压。因此,需要一个调压电路,将电压从3.3~3.6V调制5V。此外,由于是手机电池供电,测量系统的功耗也要尽可能小。
  本文使用了CAT3200-5以实现DC/DC转换,其输出电压为固定值5V。整个系统的电压配置图如图3所示。
  
  
  数据存储
  由于微控制器的内存有限,Flash为128KB,EPROM为4KB,这个存储容量远远不能满足本系统的数据存储需求。MMC(MultiMediaCard)提供了经济并且相对简单的方式来扩展Flash存储容量。MMC的另外一个优势在于,能够通过将其从测量系统中取出来,通过读卡器将数据传送到PC上。
  MMC能够在MMC以及SPI两种模式下操作,本系统在SPI模式下使用MMC,因为微控制器具有SPI接口硬 件,便于数据传输。MMC能够在3.6V电压下工作。精简卡(RS-card)的大小比较理想,其体积只有16 mm×24mm×1.4mm。
  在SPI模式下,只使用1-7脚。MMC内部的闪存是以512B的Sector为单位的。MMC有其自己内部的数据控制器,对外部命令进行执行。要访问MM C的内存,有两个常用的命令:read_block和write_block。MMC没有cluster或者head,所以它的sector以零开始直至尾结束。比如512MB MMC的最高sector的号是1048575。
  
  
  软件外围串行接口SSPI
  一般的SPI包括3条线路,串行时钟(SLcK)、主入从出方向的数据线(MISO)和主出从入方向的数据线(MOSI)。主从之间的数据交换就是通过这三根数据线。而本文采用的软件外围串行接口增加了一条数据线,如图4所示。本文有两个slave,ADC和MMC,而Master即为微控制器。
  通过使用SSPI,在将数据传送到MMC的同时还可以进行数据采集,这样就实现了连续的数据采集,采集频率设定为2kHz。如果采用SPI,就无法实现连续数据采集。
  为了实现数据的连续采集,还要进行另外的设计。在微控制器里要使用两个缓冲区to_disk和to_disk2。当一个用于写时,另一个用于读,数据流如图5所示。
  
  LabView
  使用LabvieW可以对所测得的数据进行很好的处理,并以图形方式直观地显示出来。为此,在Labview里进行了以下几个功能模块的设计:
  
  读加速度.vi:从MMC卡中读出三个方向的加速度,并存储到计算机中。
  读湿度.vi:从MMC卡中读出湿度值,并存储到计算机中。
  读温度.vi:从MMC卡中读出温度值,并存储到计算机中。
  显示.Vi:可以将以上存储到计算机中的数值以图形显示出来。
  如图6所示为三个方向加速度测量的显示画面。
  
  结论
  
  经过初步的加速度、湿度及温度测试,各项技术指标取得了较好的效果。传感器能够符合预计要求,LabView也能准确地显示所测数值。所设计的PCB的体积也符合手机测量使用的需要。但是工作中尚有不太完善的地方,现在设计出的PCB是两面板,一面为数字信号,一面为模拟信号,下一步要进行改进设计,使其简化到一面中来。由于是用于手机中测量焊点材料的物理负载,因此系统设计得越简单效果越好。

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3