ADS7844application_第1页
ADS7844application_第2页
ADS7844application_第3页
ADS7844application_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

ADS7844 串行模串行模 数转换芯片的原理及其在嵌入式的应用数转换芯片的原理及其在嵌入式的应用 12 位高精度位高精度 AD 的使用的使用 ADS7844 串行模 数转换芯片的原理及其在嵌入式的应用 摘要 ADS7844 是一种 12 Bit 的串行数模转换器芯片 它具有与 CPU 方便联接的同步串行接口 接口 灵活 功耗低等特点 文中详细介绍了 ADS7844 的工作原理 引脚定义 工作时序及同步串行模式下与 51 单片机的接口电路及部分读写程序以及需要注意的地方 关键词 模数转换器 SPI 接口 ADS7844 单片机 概述 A D 采集芯片在以单片机为核心构成的智能仪器仪表 测控系统 工业控制等领域中有着广泛影响 但是 现在有的 A D 转换芯片存在着精度差和接口电路复杂等缺点 是 公司推出的一种高性能 宽电压 低功耗的可以程控为 8 通道单端输入或 4 通道差分端输入的 12 Bit 的 串行数模转换器 内部集成有 SPI 口 从而简化了接口电路设计 无需用复杂的外围元件 就可实现精 度高 性能稳定的数据采集转换 在 5V 电源 转换速率为 200kHz 的情况下功耗仅仅 3Mw 在节电模式 下 功耗可以减小到 1uW 1 特性及引脚说明 1 1 ADS7844 主要特性如下 单电源 电压范围 2 7V 5V 均能正常工作 最大工作电流为 进入低功耗状态后的耗电仅 其转换率高达 它有 个模拟输入端 可用软件编程为 通道单端输入 转换器或 通道差分输入 转换器 典型信噪比为 72dB 积分非线性 INL 和差分非线性 DNL 最大为 0 5LSB 保证无漏码 SPI 接口 采用 20 脚 QSOP 或 SSOP 封装形式 1 2 ADS7844 引脚的功能和排列说明 AD7844 引脚功能说明如表 1 所示 引脚排列如图 1 所示 表 1 引脚号 引脚名称 功能描述 备注 1 2 3 4 5 6 7 8 CH0 CH7 模拟输入端 器件被设置为单端输入时 这些引脚可分别与信号地 构成 通道单端输入 转换 器 当器件被设置为差分输入时 利用 和 可构成 通道差分输入 转换器 对状态寄存器的 位进行配置以设 定输入模式 1 为单端模式 0 为差分模式 9 COM 信号地 信号输入参考地 10 电源关闭控制端 低电平有效 置低时 A D 进入低功耗状态 11 VFEF 参考电压输入端 12 20 VCC 电源输入 13 14 GND 电源地 15 DOUT 串行数据输出端 在片选状态下 在时钟上升沿 数据从 MSB LSB 被逐位移出 16 BUSY 忙 信号输出端 在接收到控制字的第一位数据后变低 只有在转换结束且片选有效时 该脚 才输出一个高脉冲 17 DIN 串行数据输入端 在片选有效时 控制字在 上升沿被逐位锁入 18 CS 片选端 低电平有效 为高电平时 DIN 管脚的输入数据不能被移入 DOUT 为高阻态 19 DCLK 外部时钟输入端 在时钟作用下 将控制字写入 并将转换结果从中读 出 DCLK 时钟速率决定转换速度 2 工作原理 1 1 内部原理框图 如图 2 所示 2 2 工作原理描述 AD7844 的基本 作需要一个外部参考电压和外部输入时种 参考电压最高为 VCC 而参考电压决定了转换 器的输入范围 能过配置内部控制寄存的来设置 AD7844 的工作模式 的控制字如表 2 所列 表 2 ADS7844 的控制字含义 Bit7 MSB Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 LSB S A2 A1 A0 忽略 SGL DIF PD1 PD0 的控制字共有 位 其中 是起始位 控制字的起始位总为 否忽略 DIN 的输入数 据 是通道选择位 在单端输入时分别对应 个通道 而对应于 4 个差分输入通道 没有定义 是模式控制位 该位为 时是单端输入模式 为 时是差分输入模式 和 是电源节电模式控制位 若为 则表示 在不进行数据转换时自动 进入电源关闭模式 若为 芯片则始终处于电源开启模式 与微处理器之间有多种 作方式 其基本转换时序如图 3 所示 从图 3 中可见 每个完整 帧通讯需要 8 个时钟周期 一个完整的转换需要 3 帧串行通讯个即要在 DCLKL 输入 个时钟周期 其中 个用于输入控制字 个用于读取转换结果 控制字的所有位在时钟上升沿被锁入芯片 转换结果在 时钟的下降沿被逐位移出 所有移入和移出的数据都是高位在前 低位在后 需要说明的是 是 位 转换器 其转换结果只有 位 故在移出 位结果后 还需送入 个 时钟来完成整个转换过程 这 个多余的时钟移出的数据为 使用时不应作为转换结果处 对于 16 个时钟 和 15 个时钟周期的转换 作 可以参看有关资料 这里不再介绍 3 ADS7844 在嵌入式系统中的应用 ADS7844 可以广泛应用于智能仪器仪表系统 水 电 暖气表中 现在就我在环保监测适配器的应用中 给出硬件原理图的接口和软件程序 由于模拟串行通信稍逊于使用 SPI 口对 ADS7844 的访问 故在产品 中使用了有 SPI 接口的单片机 AT89S53 当然带有 SPI 接口的单片机很多 要使用 SPI 接口 必须要了接 SPI 的一些有关容 由于篇幅所限不做详细介绍 3 1 同步串行接口 SPI 有以下的性能 全双工 3 线同步数据传输 主从可设的 作方式 高达 6M 位的 LSB MSB 传输位在先可设 4 位可编程的位速 传输结束中断标志 写冲突标志保护 可唤醒的空闲模式 3 2 ADS7844 在适配器中的硬件接口电路 以适配器中的 AT89S53 为例 给出 ADS7844 在适配器中的硬件接口电路 如图 4 所示 本例应用中设 AT89S53 为主机 ADS7844 为从机 AT89S53 的 P1 4 是用来片选从机使能输出端 低有效 P1 7 SCK 是相位 极性 4 种组合的串行时钟输出 可以通过设置 SPI 控制寄存器的 CPOL CPHA 来设置 SCK 的相位 极性 P1 5 MOSI 是主机数据移出 从机数据输入端 P1 6 MISO 是主机数据移入 从机数据移出端 P1 3 是 AD 的忙信号 本设计硬件中做了联接 但是 软件中没有启用 向 SPI 口的控制寄存器 SPCR 中写入 57H 设置为禁止串行中断 开启 SPI 口 先输 出 MSB 位 设单片机为主机 AD 为从机 有效沿为上升沿 相位为正 时钟为频率 SCK Fosc 128 设置完后 将会启动 SPI 同步串行通信 把要采集通道的命令字写入 SPI 口的数据寄存器 SPDR 中 自动会由主 机发送给从机 A D 然后读取 SPI 的状态寄存器 SPSR Bit7 判断中断是否产生 如果中断标志置位 开始接收 A D 转换的数据 3 3 ADS7844 在讯设备适配器中的程序设计如下 变量区 21H SPDR DATA 86H SPI 数据寄存器 SPCR DATA 0D5H SPI 控制寄存器 WCON DATA 96H 看门狗控制寄存器 SPSR DATA 0AAH SPI 状态寄存器 SS EQU P1 4 从口选择端 WDOG EQU P1 0 程序运行灯 TXLED EQU P1 1 发送数据指示灯 BUSY EQU P1 3 MOSI EQU P1 5 主机输出 从机输入 MISO EQU P1 6 主机输入 从机输出 SCK EQU P1 7 主机输出的串行时钟 位矢量区 20 21H JUST10MS BIT 20H ORG 0000H AJMP MAIN ORG 000BH AJMP TIMER0 INT ORG 0023H AJMP ORG 0040H 主程序 MAIN MOV SP 65H 堆栈指针 50H MOV WCON 0H 看门狗初始化 CPL WDOG MOV A 00H MOV R4 0FFH SETB EA CLRRAM MOV R0 A INC R0 CPL WDOG DJNZ R4 CLRRAM LCALL INITIMER 定时器初始化 LCALL SER INT 串口初始化 LCALL SETCHA 准备发往上位机的数据包格式 MOV SPCR 57H SPI 工作模式初始化 SPCR 写入 57H 禁止串行中断 开启 SPI 口 先输出 MSB 位 设单片机为主机 AD 为从机 有效沿为上升沿 相位为正 时钟为频率 SCK Fosc 128 STARTSMPL CLR TXLED 喂狗 NOP MOV R4 87H 检测第一通道 改变 R4 的值 可以改变采集通道 LCALL CHANNEL 读取 ADS7844 的转换数据子程序 略 模块功能 数据接收 读取的数据存入 R6 R7 说明 R0 R1 为数据缓冲区 暂存 ADS7844 的转换数据 程序名 CHANNEL CHANNEL CLR SS 片选有效 NOP REW MOV SPDR R4 命令字 NOP nop nop nop CLR EA 集结束开始关中断 REVD1 MOV A SPSR JNB ACC 7 REVD1 判断 SPIF 位是否为 1 为 1 则转换结束 可读以取 MOV A SPDR MOV A 00H MOV SPDR 00H NOP NOP NOP NOP REVDH MOV A SPSR JNB ACC 7 REVDH 判断 SPIF 位是否为 1 1 则读取转换数据的高字节 MOV A SPDR MOV

温馨提示

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

评论

0/150

提交评论