找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1375|回复: 0
打印 上一主题 下一主题
收起左侧

A D芯 片 T L C 2 5 4 3 与 5 1 系 列 单 片 机 的接 口设 计

[复制链接]
跳转到指定楼层
楼主
ID:97373 发表于 2015-11-27 17:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
A D芯 片 T L C 2 5 4 3 与 5   1 系 列 单 片 机 的接 口设 计
在单片机 开发中, 很多都要涉及到将模拟量转换为数字量 , 因此使用 A D C的场合很多. 选
择一款合适的 A D C芯片就显得尤为重要 . 由于 5 1 单片   6 『 L 往: , 庄要控制 比较多 的 I / O口, 因此使
用并行 A D C会限制系统 L / O口功能的扩展 , 采用串行 A D C比较适合那些低速采样而控制管脚
又 比较 多 的系统 .
T L C 2 5 4 3 是有 l 1 个输入端的 1 2   b i t 模数转换器 , 具: 有 转换快、 稳定性好 、 与微处理器接口简
单 、 价格低等优点. 由于它带有串行外设接 口( S P I ) , 而 5 1 系列单片机没有 S P I , 因此研究它与单
片机 的接 口非 常有 意义 .
1   T L C 2 5 4 3的特点及 引脚
T L C 2 5 4 3 是 1 2   b i t 串行 A / D转换器, 使用开关电容逐次逼近技术完成, A / D转换过程. 由于
是串行输入结构 , 能够节省 5 1 系列单片机 的 I / O资源. 其特点有 :
1 )1 2   b i t 分辨率 A / D转换器 ;
2 )在工作温度范围内 1 0  s 转换时间;
3 )1 1 个模拟输入通道 ;
4 ) 3路内置 自测试方式 ;
5 )采样 率 为 6 6   k b / s ;
6 )线性 误 差 + 1 L S B ( m a x ) ;
7 )有转换结束( E O C ) 输 出;
8 )具有单 、 双极性输出;
9 )可 编程 的 M S B或 L S B前 导 ;
1 0 )可编程的输出数据长度.
T L C 2 5 4 3的引脚 排列 如 图 1 所 示.
收稿 日 期 : 2 0 0 5 - 0 8 - 3 1
作 者简 介 : 夏益 民( 1 9 8 0 一 ) , 女 , 助教 , 主要研究方向为嵌入式 系统 、 高速数据 采集系统等.

第 3 期  夏益 民, 等 : A D芯 片 T L C 2 5 4 3 与 5 1 系列单片机的接 E l 设 计  1 1 9
图 l中 A I N 0 一 A I N 1 0为模拟输入端 ; / C S 为片选端 ; D I N为串行数
据输入端 ; D O U T为 A / D转换结果的三态串行输 出端 ; E O C为转换结束
端 ; C L K为 I / O时钟 ; R E F+ 为正基准 电压端 ; R E F一 为负基准电压端 ;
V C C为 电源 ; G N D为 地.
2   T L C 2 5 4 3的使用方法
2 . 1 控 制字 的格 式
丁1 、 _ 厂
2   1 9
3   1 8
4   1 7
5   1 6
6   1 5
7   1 4
8   1 3
9   1 2
l O   1 1
图 1   T L C 2 5 4 3 管脚图
控制字 为从 D A T E   I N P U T端 串行 输 入 的 8   b i t 数 据, 它 规定 了
T L C 2 5 4 3 要转换的模拟量通道、 转换后的输出数据长度 以及输出数据 的格式. 其 中高 4   b i t ( D 7

D 4 ) 决定通道号, 对于 O通道至 l O 通道 , 该 4 b i t 为 0 0 0 0— 1 0 1 0 H, 当为 1 0 1 l — l 1 0 1 时, 用于对
T L C 2 5 4 3 的 自 检 , 分别测试(   + +   ) / 2 、   “、   的值 , 当为 l l l O时, T L C 2 5 4 3 进入休眠状
态. 低 4   b i t 决定输出数据长度及格式 , 其 中 D 3 、 D 2 决定输 出数据长度 , O l 表示输 出数据长度为
8   b i t , l 1 表示输 出数据长度为 l 6   b i t , 其他为 l 2   b i t . D l 决定输出数据是高位先送 出, 还是低位先
送出, 为 0表示高位先送 出. D O 决定输 出数据是单极性 ( 二进制 ) 还是双极性 ( 2的补码 ) , 若 为
单极性 , 该位为 O , 反之为 1 .
2 . 2 转 换过 程
上电后, 片选/ C S 必须从高到低 , 才能开始一次工作周期 , 此时 E O C 为高, 输人数据寄存器
被置为 O , 输出数据寄存器的内容是随机的.
开始时 , 片选/ C S 为高 , I / 0   C L O C K 、 D A T A   I N P U T被禁止 , D A T A   O U T呈高阻状态, E O C为
高. 使 / c s 变低 , I / O   C L O C K 、 D A T A   I N P U T 使能, D A T A   O U T 脱离高阻状 态. 1 2 个时钟信号从
I / O   C L O C K端依 次加入 , 随着时钟信号的加入 , 控制字从 D A T A   I N P U T 一位一位地在 时钟信号
的上升沿时被送人 T L C 2 5 4 3( 高位先送人) , 同时上一周期 转换 的 A / D数据 , 即输 出数据寄存
器 中的 数据从 D A T A   O U T 一位一位地移出. T L C 2 5 4 3 收到第 4 个时钟信号后, 通道号也已收到 ,
此时 T L C 2 5 4 3 开始对选定通道 的 模拟量进行采样 , 并保持到第 l 2 个时钟的下降沿. 在第 l 2 个
时钟下降沿 , E O C变低 , 开始对本次采样的模拟量进行 A . / D转换, 转换 时间约需 l 0   , 转换完
成后 E O C 变高, 转换的 数据在输出数据寄存器中, 待下一个工作周期输出. 此后 , 可 以 进行新的
工作周期.
对 T L C 2 5 4 3的操作 , 关键是理清接 口时序图和寄存器 的使用方式. T L C 2 5 4 3的接 口时序图
如 图 2 所 示 .
图 2 是 T L C 2 5 4 3 在片选信号使能的前提下 , 使用 l 2   b i t 模式的接 口 时序 图. 从 图中可看出,
在片选信号( / C S ) 有效的情况下 , 首先要根据 A / D转换的功能需要配置要输入 的数据. 需要注
意的是 , 在读数据的同时 , T L C 2 5 4 3 将上一次转换的 数据从数据输出口 伴随输入时钟输 出. 为了
提高 A / D采样的速率, 可以 采用在设置本次采样的同时, 将上次 A D采样的值读出的办法.
3   T L C 2 5 4 3与 8 9 C 5 1 单片机的接 口示意 图与程序
8 9 C 5 1 单片机没有 S P I 接 口, 为了与 T L C 2 5 4 3接 口可 以用软件功能来实现 S P I 接 口, 其硬
件接 口如 图 3 所 示 .
单片机通过编程产生串行时钟 , 即由 C L K先高后低的转变提供串行 时钟 ; 并按时序发送与
接收数据位 , 完成通道方式/ 通道数据 的写入和转换结果的读出; 用累加器和带进位 的左循环移

1 2 0   广东 工业 大学学报  第 2 3卷
EOC
初 始化
图 2  M S B在前、 用/ C S 控制 的 1 2   模式 时序图
位指令来合成 S P I 功能 ; R 2 暂存
高 8   b i t , R 3暂存低 4   b i t . 本程序选
择 l 2   b i t 输 出数 据 长度 , 高位 导
前.
T L C 2 5 4 3在每次 I / O周期读
取的数据都 是上次转移 的结 果 ,
当前的转换结果在下一个 I / O周
期 中被 串 行 移 出. 第 一 次 读 数 由
于内部 调整 , 读 取的转换结 果可
能不 准确 , 应 丢 弃 .
程序如下 :
S AMP L E :   MO V
M0V
AC AI 工
MOV
ACAI
MO V
I N C
MO V
I N C
R0.# 3 0 H
R1. 帮X) 0 O 0 o 0 O B
RD   AD
R1.  0 o 0 1 0 0 o 0 B
RD— A D
@ R 0. R2
R 0
@ R 0. R 3
R0
MOV   R1 . # 1 0 1   1 O 0 o 0 B
AC AI 工  R D  AD
MOV   @ R 0. R2
I NC   R 0
MOV   @ R 0. R 3
I NC   R 0
RE T





A / D 转换间 隔  初 始化
图 3   T L C 2 5 4 3 与 8 9 C 5 1 单片机的接 口原理 图
; 数据缓 冲区首地址 3 0 H - - * R 0
; 0通道方式/ 通道数据
; 第一次读取 的转换 结果可能不准确 , 丢弃
; 1 通道方式/ 通道数据
; 送 1 通道方式/ 通道数据并读第 0 通道转换结果
; 转换结果存 放到数据缓冲 区
; 其它通道 操作方式类推
; 1 1 通道 方式/ N道数据
; 送 1 1 通道方式/ . 商首 擞据 并读 第 l 0 通道转拶   士 果
; 转换结果存 放到数据缓冲 区

篁   夏 益 民 , 等 : A D 芯 片 T L C 2 5 4 3 与 5 1 系 列 单 片 机 的 接 口 设 计   1 2 1
RD _ AD:
L OOP 2:
CL R   C L K
S E  I B  C S
C I   C S
MOV   R 4.   0 8
MO V  A .R1
MOV   C. DOUT
RL C   A
MOV  DI N. C
S E T B   C L K
CL R   C L K
D J N Z   R 4 . L O O P I
MOV   R 2. A
MOV   A .   ) 0 H
MOV   R 4. # 0 4
MOV   C. D OUT
RL C   A
S E TB   C LK
CL R  C LK
D J N Z   R 4. L O O P 2
MOV  R 3. A
S E T B   C S
RE T
; 清 I / O时钟
; 设置片选为 高
; 设置片选为低
; 先读高 8   b i t
; 把方式/ 通道控 制字放 到 A
; 读转换结果
; A寄存器左移, 移人结果数据位, 移出方式/ 通道控制位
; 输 出方式/ 通道位
; 设 置 I / O时钟为高
; 清 I / O时钟
; R 4不为 0 , 则返 回 L O O P I
; 转换结果 的高 8   b i t 放到 R 2中
; 复位 A寄存 器
; 再读低 4   b i t
; 读转换结果
; A寄存器左移 , 移入结果 数据 位
; 设置 I / O时钟为高
; 清 I / O时钟
; R 4 不 为 0 , 则返 回 L O O P 2
; 转换结果 的低 4   b i t 放到 R 3中
; 设 置片选 为高
参 考 文献 :
[ 1 ] 武汉力源 电子股 份有 限公 司. T L C 2 5 4 3 模数转换器数据手册及应用笔记 [ G ] . 武 汉 : 武汉力 源 电子股 份有限
公 司, 1 9 9 9 .
[ 2   3 马 明建 , 周 长城 . 数据采集与处理 [ M] . 西安 : 西安交通大学 出版社 。 1 9 9 8 .
[ 3 ] 何立 民. M C S 一 5 1 单片机应用 系统[ M] . 北京 : 北京航空航天 大学 出版社 。 1 9 9 9
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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