| 单片机与串行AD转换器TLC0834的接口设计 |
| 类别:电子综合 |
|                    摘要:TLC0834是TI公司生产的八位逐次逼近模数转换器,具有输入可配置的多通道多路器和串行输入方式。文中以AT89C51 CPU为核心,采用LTC0834八位串行A/D转换器设计了一个可将模拟信号转换为数字信号的电路。      关键词:单片机 A/D转换器 TLC0834      单片机控制系统通常要用到A/D转换。根据输出的信号格式,比较常用的A/D转换方式可分为并行A/D和串行A/D。并行方式一般在转换后可直接接收,但芯片的引脚比较多;串行方式所用芯片引脚少,封装小,在PCB板上占用的空间也小,但需要软件处理才能得到所需要的数据。图1 TLC0834的工作时序图 1 TLC0834简介      1.1 TLC0834的主要特点      TLC0834是TI公司生产的8位逐次逼近模数转换器具有输入可配置的多通道多路器和串形输入输出方式。其多路器可由软件配置为单端或差分输入,也可以配置为伪差分输入。另外,其输入基准电压大小可以调整。在全8位分辨率下,它允许任意小的模拟电压编码间隔。由于TLC0834采用的是串行输入结构,因此封装体积小,可节省51系列单片机I/O资源,价格也较适中。其主要特点如下: ● 8位分辨率;      ● 易于和微处理器接口或独立使用;      ● 可满量程工作;      ● 可用地址逻辑多路器选通4输入通道;      ● 单5V供电,输入范围为0~5V;      ● 输入和输出与TTL、CMOS电平兼容;      ● 时钟频率为250kHz时,其转换时间为32μs;      ● 可以和美国国家半导体公司的ADC0834和ADC0838进行替换,但它内部不带齐纳稳压器网络;      ● 总调整误差为±1LSB。      1.2 工作特点      TLC0834可通过和控制处理器相连的串行数据链路来传送控制命令,因而可用软件对通道进行选择和输入端进行配置,其控制逻辑表如表1所列。 输入配置可在多路器寻址时序中进行。多路器地址可通过DI端移入转换器。多路器地址选择模拟输入通道可决定输入是单端输入还是差分输入。当输入是差分时,应分配输入通道的极性,并应将差分输入分配到相邻的输入通道对中。例如通道0和通道1可被选为一对差分输入。另外,在选择差分输入方式时,极性也可以选择。一对输入通道的两个输入端的任何一个都可以作为正极或负极。      通常TLC0834在输出以最高位(MSB)开头的数据流后,会以最低位(LSB)开头重输出一遍(前面的数据流)。其工作时序如图1所示。      1.3 引脚功能      TLC0834的引脚排列如图2所示,其中CH0~CH3为模拟输入端; CS 为片选端;DI为串行数据输入,该端仅在多路器寻址时(MUX Settling Time)才被检测;DO为A/D转换结果的三态串行输出端;CLK为时钟;SARS为转换状态输出端,该端为高电平时,表示转换正在进行,为低电平则表示转换完成;REF为参考电压输入端;VCC为电源;DGTL GND为数字地,ANGL GND为模拟地。 2 与单片机的接口电路设计      TLC0834与89C51单片机的硬件接口电路的电路原理如图3所示。图中,单片机的P1.7接TLC0834的片选信号, P1.6用于产生A/D转换的时钟, P1.5为一个双向I/O口位,可用于对模拟输入进行配置及输出转换所得的数据。在这里,模拟信号以单端方式输入,参考电压为5V,即A/D模拟量的输入范围为0~5V。 3 单片机的软件设计      该系统在工作时,单片机将通过编程产生串行时钟,并按时序发送与接收数据位,以完成通道方式/通道数据的写入和转换结果的读出。篇幅有限,现以通道0单端输入模拟信号为例,给出A/D转换的程序:      CLR P1.6 ;清时钟      CLR P1.5      SETB P1.7 ;置片选为高      CLR P1.7 ;置片选为低      SETB P1.5 1 Start Bit      SETB P1.6      CLR P1.6      SETB P1.5 1      SETB P1.6      CLR P1.6      CLR P1.5 0      SETB P1.6      CLR P1.6      CLR P1.5 0 CH0      SETB P1.6      CLR P1.6 通道0,单端输入      SETB P1.6      CLR P1.6      SETB P1.5 P1.5由输出状态改      为输入状态      LCALL ADCONV      ···      ···      ···      ADCONV: MOV R0#08H      ADLOP0: MOV CP1.5 ;读转换结果      RLC A ;累加器A左移,将结果      逐位移入A中      STEB P1.6      CLR P1.6      DJNZ R0ADLOP0      MOV R0#07H      ADLOP1: SETB P1.6      CLR P1.6      DJNZ R0ADLOP1      SETB P1.6      CLR P1.6      SETB P1.6      CLR P1.6      SETB P1.7 ;置片选信号为高,      结束一次转换      RET      转换结果经换算后可转换为十进制数显示出来。如在精度要求较高的场合,可以选用位数更多的串行A/D并取高位数据。限于篇幅,该部分程序本文不作介绍。 4 结论      本文给出的硬件和软件均经实践检验,并已在某公司的产品上应用,其性价比较高,可大大降低生产成本。 文章出处:国外电子元器件           |
- 海尔空调制冷故障维..
- 2008-1-25
- 大尺寸TFT显示器..
- 2008-1-27
- 利用DC/DC转换..
- 2008-1-27
- 电动车铅酸蓄电池的..
- 2008-1-27
- 大型搅拌站自动配料..
- 2008-1-27
- 城市和工业污水处理..
- 2008-1-27
- 开关电源的数字控制..
- 2008-1-27
- 精密的智能电池使充..
- 2008-1-27
- 基于DSP控制的2..
- 2008-1-27
- 增强型运营商级多服..
- 2008-1-27
- 高效CCD数码相机..
- 2008-1-27
- Atheros 单..
- 2008-1-27
- Philips 推..
- 2008-1-27
- Fujitsu 数..
- 2008-1-27
- 如何给PCI卡选用..
- 2008-1-27
- A/D转换芯片的测..
- 2008-1-27
- 基于CTl技术的交..
- 2008-1-27
- MMIC和RFIC..
- 2008-1-27
- 利用皮弹服务器进行..
- 2008-1-27
- 白色发光二极管及其..
- 2008-1-27



