DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 149|回复: 0
打印 上一主题 下一主题

串行A/D转换器MAX1270及其应用

[复制链接]
跳转到指定楼层
楼主
发表于 2012-1-21 23:43:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.  引言目前A/D转换器的种类繁多,从数据输出形式上可分为串行输出与并行输出两大类。其中串行输出AD转换器因其硬件接口简单而得到广泛应用。另外,从可接受的输入信号极性上看,A/D转换器又可分为单极性输入和双极性输入。在很多的数据采集场合常常面对极性可变的模拟信号。当然可将待转换信号进行电位移动以将其转化为单一极性,但如此便增加了电路的复杂性。串行输出、双极性输入A/D转换器MAX1270[1]不增加任何硬件电路即可实现对双极性模拟信号的A/D转换。迄今为止对MAX1270的应用非常少[2],且未见详细介绍。本文详细介绍了MAX1270的特点,给出了最简硬件接口、软件编程及应用实例。2.  MAX1270芯片介绍MAX1270是8通道、多量程双极性输入、串行输出、逐次逼近型12 bit AD转换器。其封装形式有24脚Narrow PDIP和28脚SSOP两种。PDIP封装的引脚排列如图1所示。各有用引脚功能如下:1-VDD,+5V电源输入端;2、4-DGND,数字地;5-SCLK,串行时钟输入端;6-/CS,片选输入端,低电平有效;7-DIN,串行数据输入,即AD转换控制字输入端;8-SStrB,串行数据输出选通输出端;10-DOUT,串行数据输出端;11-/SHDN,掉电模式控制输入端,

  低电平有效;12-AGND,模拟地;13"20-CH0"CH7,模拟信号输入端;21-REFADJ,参考电压输出/外部调节输入;23-REF,参考电压缓冲输出/ADC的参考输入。2.1 MAX1270的控制字MAX1270的8位控制字及其功能如表1所示。最高位START为起始位(高电平),标志控制字的开始。/CS为低电平期间,控制字在时钟脉冲SCLK作用下先高位后低位通过DIN端输入。 表1  控制字格式BIT7(MSB)BIT6BIT5BIT4BIT3BIT2BIT1BIT0(LSB)STARTSEL2SEL1SEL0RNGBIPPD1PD02.2时钟模式与转换速率PD1PD0为掉电/时钟模式选择位。PD1PD0=10、11时为省电模式。正常工作时MAX1270有外部时钟与内部时钟两种工作模式。PD1PD0=01时为外部时钟模式,串行数据的移入、移出以及数据采集、转换都由SLCK端的输入脉冲控制。PD1PD0=00时为内部时钟模式,数据转换时钟由芯片自己产生,减轻了微处理器的负担,使得转换后的数据可在微处理器方便的任何时刻读取,利于提高微处理器的工作效率。外部时钟模式分为25SCLK/s(每个数据转换需要25个时钟周期)和18 SCLK/s两种方式,后者转换速率稍快的原因是在全部数据转换期间/CS始终维持有效电平。内部时钟模式也有20、16、13 SCLK/s等不同转换方式。不同的时钟模式和转换方式,其转换速率不同。在外部时钟模式、SCLK速率为2MHz、18 SCLK/s时MAX1270转换速率可达110ksps。2.3通道选择与输入范围SEL2"SEL0为通道选择位,000"111分别选择输入通道CH0"CH7。RNG"BIP为输入范围选择位,MAX1270有4种输入范围。RNG"BIP置00时 0~5V单极性输入, 置01时0~+10V单极性输入; 置10时 -5~+5V双极性输入;置11时-10~+10V双极性输入。2.4传输函数与输出数据格式对单极性输入,1LSB=FS/4096,输出数据为12位二进制码。对双极性输入,1LSB=FS/2048,输出数据为12位二进制补码。2.5参考电压MAX1270可使用芯片内的4.096V参考电压,也可使用外部参考。图2是使用片外参考和片内参考时相关管脚的接法。

图2  管脚连接图 (a) 使用片内参考电压 (b)、 (c)使用片外参考电压
3.   电路硬件连接与软件编程MAX1270与AT89S52的连接方法如图3所示。下面是用汇编语[2]言编写的一个通道AD转换子程序adconversion,外部时钟模式,转换方式25SCLK/s。控制字在R1中。转换所得12位数据高4位放入R3,低8位放入R4。


                          
                       
                          
                                adconversion:  CLR  P1.0MOV  A,R1           ;将控制字送ALCALL INPUT         ;控制字输入子程序CLR P1.1              ;SCLK第8个时钟的下降沿   CLR P1.2SETB P1.1    CLR P1.1              ;SCLK第9个时钟的下降沿….SETB P1.1             ;SCLK第13个时钟的上升沿ACALL OUTPUT       ;输出AD转换后的数据CLR P1.1                 SETB P1.0                RETINPUT:     NOP                   ;MAX1270的控制字输入子程序MOV R2,#08H          ;控制字有8位LOOP3:     CLR P1.1RLC A                 ;控制字在A中MOV P1.2, CSETB P1.1DJNZ R2, LOOP3RET                   ;SCLK处于第8个脉冲的高电平OUTPUT:   NOP                  ;12位数据输出子程序MOV R2,#04H          ;输出数据高4位LCALL OUTPUT1          MOV R3, A             ;高4位送R3MOV R2,#08H          ;输出数据低8位ACALL OUTPUT1             MOV R4, A             ;低8位送R4RETOUTPUT1:  CLR ALOOP8:  SETB P1.3     ;置P1.3为输入CLR P1.1                 NOP                   ;等待SStrB由高变低,至少200ns       MOV C, P1.3RLC ASETB P1.1             DJNZ R2, LOOP8RET 4.  应用实例将MAX1270数据采集电路应用于毛细管电泳电导检测系统中。该检测系统需要4路双极性数据采集,其中3路为电泳通道电流、1路为电导检测电流,其中通道电流用于监视系统工作状态,而检测电流是标志被测物质含量的关键信息。将所采集电流信号调理、转换成-10~+10V的电压信号,再经MAX1270模数转换后通过单片机串口发送给PC机存储、显示。单片机振荡频率12MHz、串口波特率62.5KHz,程序框图如图4所示。PC机数据接收和显示由其它高级语言编写。检测系统运行结果表明该数据采集电路的采集速率和转换精度完全满足要求。

5.  结论本文介绍了MAX1270的特点并在分析工作时序的基础上首次给出外部时钟、25SCLK/S转换方式下的AD转换程序,愿与同行交流。实际使用表明,MAX1270完全满足转换速率和转换精度要求,是双极性、多路数据采集的合理选择。本文作者创新点如下:①     实现了MAX1270与单片机的最简接口。只需4根连接线(SCLK、DIN、DOUT、/CS)而不用SStrB启动数据的输出。②     AD转换后的数据即时发送给PC机,单片机不需外接数据存储器。这两点都在一定程度上简化了硬件电路。
                          
                       
                          
                               
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2025-10-29 13:47 , 耗时 0.107554 秒, 18 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表