ADμC812的数据采集子系统及其ISP技术-新品速递_第1页
ADμC812的数据采集子系统及其ISP技术-新品速递_第2页
ADμC812的数据采集子系统及其ISP技术-新品速递_第3页
ADμC812的数据采集子系统及其ISP技术-新品速递_第4页
ADμC812的数据采集子系统及其ISP技术-新品速递_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑ADμC812的数据采集子系统及其ISP技术-新品速递

摘要:主要介绍AD公司推出的在系统可编程微转换器ADμC812的ADC采集子系统的组成、结构和控制特性;对片内Flash存储器的在系统编程技术和程序调试方式;举例说明如何采用中断方式定时进行AD数据采集和数字滤波的过程。

关键词:数据采集Flash存储器ISP数字滤波

在单片机应用如火口荼的今天,一个真正的单片在系统可编程全智能数据采集系统终于出现了。它就是AD公司推出的嵌入式FlashMCU微转换器ADμC812。

ADμC812在单个芯片内集成了8路12位ADC采集系统、2路12位DAC、80C52MCU内核、8KB的闪速/电可擦除程序存储器、640字节的闪速/电可擦除数据存储器、看门狗定时器、640字节的闪速/电可擦除数据存储器、看门狗定时器、电源监视器、I2C兼容的SPI和标准的UART串行I/O模块及灵活的电源管理方案等等,真正实现了单片机应用系统的单片机。限于篇幅,本文只介绍其ADC采集子系统及其在系统编程技术。

一、ADμC812的ADC采集子系统

1.硬件组成结构

ADμC812的ADC采集子系统部分由模拟多路转换器、温度传感器、采样保持电路(T/H)、12位逐次逼近比较的ADC、+2.5V基准源和ADC校正、控制逻辑组成,其组成如图1所示。

ADμC812的模拟输入端的电压有效输入范围与基准源有关。当采用内部基准源时,其有效输入范围为0~+2.5V;当采用外部基准源时,外部基准源应从Vref端引入,其合适的范围为+2.3~+5V,相应的模拟输入端的电压范围为0V~Vref。无论如何不应使其输入电平为负或超过允许值AVDD+0.3V。当信号输入为双极性时,必须加入电平位移网络,使其变为单极性信号输入,如图2所示。

ADμC812可工作在-40~+85℃的工业级范围,有3V和5V两种供电工作方式,以便进一步降低功耗。ADC模拟包含了5μs、8通道、12位、单电源A/D转换器。其中,A/D转换器由基于电容DAC的常规则逐次逼近转换器组成,可保证的±1LSB的差分非线性和±1/2LSB和积分非线性。在上电时由工厂编程的校准系数自动到ADC,以确保的ADC性能。该校准系数包括内部失调和增益校准两个方面,用户可根据需要重写工厂编程的校准系数,以便使用户目标系统中端点误差的影响。来自片内温度传感器的电压输出正比于热力学温度,它可通过多路转换器的第9个ADC通道输入,这方便了温度测量的实现。

2.软件控制特性

可编程性是应用系统发展的必然趋势。为适应不同信号源的实际需求,ADμC812片内ADC模块内的所有部件都能方便地通过3个SFR寄存器来设置。

(1)ADCCON1——控制转换和采集时间

(2)ADCCON2——控制ADC通道选择和转换模式

(3)ADCCON3——ADC状态指示

二、ADμC812的系统调试、编程技术

目前,由于ADμC812只提供表贴封装形式,因而在用仿真器进行程序调试时将会带来一些问题。为方便调试,ADμC812A片内除集成了各具特色的硬件模块外,还因化了方便实用的监控调试软件,使其只需少量的外围器件即可实现联机调试,从而大大方便了用户的使用,缩短了产品的研制周期。启用调试方式的电路连接如图3所示。

在上电复位的瞬间,使EA引脚接高电平,PSEN引脚接一下拉电阻,即可使ADμC812进入监控调试支援方式。在此方式下,通过基于PC的QuickStart开发工具包,即可用户程序。通过运行于MicrosoftWindows系统下的下的ADμC.exe调试软件,可实时调试用户程序。

该调试软件支持单步、断点和连续运行等工作方式,可方便地观察MCU的运行结果,包括内部RAM、SFR、程序FlashEEPROM和数据FlashEEPROM等单元的内容。从而提高了工作效率,缩短了产品的开发周期。图3中MAX232为RS232电平转换器,用于将TTL电平转换成RS232电平,以便直接连至PC的串行口,进行联机调试或程序。

QuickStart还提供了工作于DOS环境下的串行软件DownLoad.exe。运行该软件可直接将用户程序编程到ADμC812芯片中的程序Flash存储器中,免除了需用编程器和封装适配器的麻烦,真正实现了在系统可编程。QuickStart开发工具软件包可从/microconverter/quick-start.html得到。

三、定时ADC编程举例

该例程主要说明如何利用ADC的单次转换功能实现定时采样的目的。定时器T0用于1.25ms定时,8个通道完成数据采集需要10ms。为增加抗干扰的能力,软件中还加入了数字滤波功能。每个通道连续采样16次后再进行平均处理,然后将高8位结果送出,其汇编语言源程序清单如下:

$NOMOD51

$INCLUDE();使用ADμC812预定义符

Timer_ms_constequ(65536-9216/8);当晶振频率为11.0592MHz时,10ms对应9216个周期

ADC_tlagequ20H.0;AD转换标志,=1时表示采样的8路AD值有效

ADC_counequ30H;用于指示当前正在处理的ADC通道

ADC_resultequ38H;38H~3FH存入0~7通道的ADC结果

ADC_accequ40H;40~4FH存入0~7通道的累加值

ORG0000H

start:

jmpBegin

ORGstart+0BH

JmpTimer0_interrupt

ORGstart+100h

Begin;

movSP,#60H

movR0,#20H;清工作单元

movR7,#40H

clrA

iRAM_init;

mov@R0,A

incR0

djnzR7,iRAM_init

callTimer0_init;初始化T0为1.25ms中断

callADC_init;初始化ADC为单次转换

setbEA

Controlloop:

JnbADC_flag,Controlloop

……;将AD转换的结果取走

clrADC_flag;允许开始下转换

jmpControlloop

ADC_init:

movADCCON1,#01101100B;上电ADC

movADCCON2,ADC_count;选择转换通道

ret

Timer0_interrupt:

setbSCONV;开始单次ADC转换

movTL0,#LOW(Timer_ms_const);装入定时常数

movTH0,#HIGH(Timer_ms_const)

pushPSW

movPSW,#00001000B;使用page1

movR2,A;暂存A累

Timer0_int_ADC:

jbADC_flag,Timer0_int_ADC_end;数据未取走则退出

MovA,ADCCON3;读ADC状态

jbACC.7,Timer0_int_ADC

movA,ADC_count

anlA,#07H

rlA

addA,#ADC_acc

movR0,A

movA,ADCDATAL;将ADC转换结果加入累加单元

addA,@R0

mov@R0,A

incR0

movA,ADCDATAH

anlA,#0FH

addcA,@R0

mov#R0,A

incADC_count

movA,ADC_count

anlA,#07H

movADCCON2,A;选择下一通道

movA,ADC_count

cjneA,#80H,Timer0_int_ADC_end

movADC_count,#0

movR0,#ADC_acc;数字滤波后存入ADC结果

movR1,#ADC_result

movR7,#08

Timer0_int_save_ADC:

clrA

mov#R0,A

incR0

xchA,#R0

mov@R1,A

incR0

incR1

djnz,R7,Timer0_int_save_ADC

setbADC_flag

Timer0_int_ADC_end:

MovA,R2

P

温馨提示

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

评论

0/150

提交评论