|
|
| | -文章搜索 - 最新文章 - | |
第42841篇:MAX1247芯片在MCS-51系列中的应用 |
| 发布时间:2006年5月20日 点击次数:495 |
| 来源: 作者:合肥工业大学 徐朝农 黄长喜 |
摘要:MAX1247是美国MAXIM公司生产的一种新型12位A/D转换器。文中介绍了它的功能、工作模式及转换参数,并给出了MAX1247与MCS-51的软件接口程序。 关键词:SPI 接口 差分输入 A/D转移 MAX1247 MAX1247是一种12位的A/D转换器。它带有一个四通道的复用器一个高带宽的采样/保持器。可采用SPI总线结构和单片机相连,其供电电压在+2.7~+5.25V之间,可实现4路或2路的数据转换,并可通过软件实现多种转换模式。 1 引脚排列 MAX1247的引脚排列如图1所示,各引脚功能说明如下: 1脚(VDD):电源端 2~5脚(CH0~CH3):四个采样模拟信号输入端; 6脚(COM):模拟信号输入的地参考电压,在单通道模式中,该脚必须连至地且必须稳定在-0.5LSB~+0.5LSB。 7脚(SHDN):关闭输入控制端,为低时,将使器件掉电;为高时,将使参考缓冲区放大器处于内部补偿模式;将其浮动,则使参考缓冲区放大器处于外部补偿模式; 8脚(VREF):ADC参考输入,是模数转换的参考电压,可用此脚来控制模式输入的电压范围。该脚电压最大为5.05V; 9脚(REFADJ):参考缓冲区放大器的输入,要使参考缓冲区放大器无效,需将其拉至VDD; 10脚(AGND):模拟地; 11脚(DGND):数字地; 12脚(DOUT):串行数据输出,数据在SCLK的下降沿输出。当CS为高时,该端为高阻态; 13脚(SSTRB):转换结束脚,当处于内部时钟模式,且芯片开始转换时,该脚变低,但若转换结束,该脚变高;在外部时钟模式下,在MSB开始形成之前,该脚维持一个时钟脉冲的高电平。 14脚(DIN):串行数据输入,数据在SCLK的上升沿被锁存; 15脚(CS):片选信号; 16脚(SCLK):串行时钟输入,用来进行串行数据的输入和输出。 2 工作模式 MAX1247有四种工作模式,具体说明如下: ●UNIpolar/Bipolar:在UNIpolar模式下,模拟输入的信号量可在0V~VREF之间,而在Bipolar模式下,模拟输入的信号量可在-VREF/2~VREF/2之间; ●Full power-down/fast power-down:掉电模式; ●Internal clock mode/External clock mode(内部时钟/外部时钟):在外部时钟模式下,外部时钟不仅要控制数据的移入和移出,而且要驱动模数转换,并要求模数转换必须在一定的时间内结束,否则将使转换结果降低,如果外部时钟的频率低于100kHz,最好用内部时钟模式;在内部时钟模式下,芯片将自动生成转换用时钟,这使得单片机不用主动生成转换用时钟,使可将转换结果读入(读入读出时钟可在0~2MHz范围之内); ●Single-ended/Differential:在Single-ended模式下,输入信号电压量和COM口构成相对电压。在Differential模式下,CH0/CH1间也将构成差分输入,CH2/CH3间将构成差分输入,因而在Single-ended模式下,最大可构成四路模拟量输入,而在Differential模式下,最大可构成两路模拟量输入,单通道模式和差分输入模式下的通道选择见表1。
3 模数转换的开始和结束 当CS为低时,通过将一个控制字节由CLK端送入DIN脚,可以将第一个到达的逻辑“1”位定义为控制字的开始(MSB),控制字的格式如下:
4 模拟量与数字量的关系 4.1 关系 对于Bipolar模式,其输入模拟量的电压范围为-VREF+Vcom~+VREF+Vcom,将该电压范围分成4096等份,则1LSB=VREF/4096,相应的数字电压范围为8FF~7FF,例如:000代表Vcom,7FF代表+VREF+Vcom。 对于UNIpolar模式,其输入模拟量的电压范围为Vcom~VREF+Vcom,将该电压范围分为4096等份,则1LSB=VREF/4096,相应的数字电压范围为000~FFF,例如:000代表Vcom,FFF代表+VREF+Vcom。 4.2 数字量的输出 MAX1247一共输出两个字节,每个字节都是高位在先,其结构如下: 以下以给主MAX1247发送命令字以及从MAX1247接收采样数据为例,给出一个简单的接口程序的示例。 send1247data: ;发送命令字子程序(A中为要发送的命令) mov rotcount,#08h clr do clr cs ;将CS变低 rot-next: nop nop clr clk ;将CLK变低 rlc a ;移出第一位 mov din,c setb clk ;发送第一位 djnz rotcount,rot-next nop clr clk ;启动转换 setb cs ;将片选拉高 ret recdata: ;数据接收子程序 clr din clr cs ;将片选拉低 nop nop setb clk mov rotcount,#08h recl-next: clr clk ;发送下降沿 nop nop mov c,do ;移入数据 rlc a setb clk nop dinz rotcount,recl-next push a ;保存接收到的高位数据 mov rotcount,#08h ;为接收作准备 rec2-next: clr clk ;发下降沿 nop nop mov c,do rlc a setb clk nop djnz rotcount,rec2-next setb cs mov b,a pop a ret |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
[CPLD/FPGA] 相关文章: 高性能∑-ΔADC的原理及应用简介: 摘要: MAX1403是美国MAXIM公司生产的一种高性能ADC芯片,可用于数字化的前端处理以及温度测量和变换,并可与单片机方便地连接。该芯片同时具有高精度、多功能、低功耗等特点。文中介绍了MAX1403的特点、结构和应用电路。最后指出了MAX1403在装接及电路板设计方面应注意的问题。 &...... 12位并行模/数转换芯片AD1674及其应用 24位高精度A/D芯片CS5524的应用 电压/频率和频率/电压转换器VF320 基于A/D芯片AD1674设计的数据采集电路 |
|
|
|