|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
摘要:采用高速的A/D(如TLC5540)转换从传感器接收的数据,往往存在高速A/D转换的速度与/ x; ?& y# ^7 z4 k9 d! g
低速智能管理的速度不匹配的问题。本文介绍一种用5l单片机和并行A/D TLC5540设计的实用性强的
) t c, j$ ^. u2 e* Q" e高速采样电路.采样使用DMA方式,硬件电路产生A/D转换需要的时钟、存贮器的地址和写信号,当: w% @# C/ W, g: s1 Y
数据采样完毕时要自动停止写RAM,然后把采样结束信息传递给CPU。本电路设计的特点是:数据线
; v0 N5 Y5 p. h. `6 B是公用,RAM的地址线也是公用的,RAM数据写是DMA方式,地址也由硬件产生,RAM读的地址
; J- Q* t- r7 D3 V; v: q是由CPU产生的.本文对该电路工作的原理和时序作详细介绍并用实例说明。
T. z$ z( a2 g4 T+ }: A( R
4 h6 g* ], L2 k S. `4 p9 _+ F0 A: z% D1.引言# ~* r" V( F2 ~9 x! l1 B# K3 h
在单片机应用系统中,有时也需要用A/D转换器把某些连续变化的模拟量转换为数字量以便计算机进行
/ l$ S+ O6 M' P+ I加工和处理【lJ。高速A/D最高可达1G次/S以上,而一般的CPU总线或智能管理设备无法控制如此高的速
& {9 f, n p) H0 @! [& x度,比如MCS--51单片机最高时钟频率为12MHz,大部分指令周期只需1 Il s,乘除指令也仅需4 u s【11'并
8 r* J2 a9 P L/ Q6 h行A/D(TLC5540)转换时间为0.025 p S,因此不能应用象在中低速A/D用的发启动转换一查转换结束~) U6 J! R( ]$ f' F7 H: k# K
再读转换结果的方式。高速A/D的数字输出高于总线以及控制系统的速度,针对这一特性,解决这种问题0 Z* ~( I; i# J, Q; n
所使用的方法,一般采用:高速一储存一慢速读取得方案。即:对采样先使用DMA方式(直接存储器操作),
- ~. J `; ?" D: n把数据高速采样存储在RAM中,数据采样结束后,再从RAM中把数据“慢速”读出。所谓的DMA控制
2 L2 M1 v7 R% y8 ?+ y3 s方式是一种成块传送数据的方式12J。DMA方式要利用硬件电路产生A/D转换需要的时钟、存储器的地址信1 h5 U+ n2 e; m# b1 T
号、存储器的写写信号,当数据采样完毕要自动停止写RAM以及把采样结束信息传递给CPU。采样和存储9 P" l, m1 @0 v* G
之间由于高速,全部硬件实现。
% W6 D$ n+ Z4 R1 Q$ ?7 D& ^! R+ T. |以下介绍的高速采样是利用了TLC5540/5510这种8位20M/40M高速A/D,数字元件控制信号只有CLK; \. ? H- z. c+ s3 V: s/ O) ~! l
和三态输出控制,当三态输出有效时,输出数据随CLK更新。利用计算机(单片机进行管理,当高速RAM
' m: _" y; j2 `* x, q- b9 f采满后,再慢速读tt:l。单片机采用查询方式来判断RAM数据是否采慢)控制A/D,并由40M的FOSC来控制洲的写功能。' ~* ] Y( i6 F, w
2.设计思想及原理分析(时序图)- b: Z2 n: D, l7 @+ l P
DMA方式A/D采样电路的设计要解决:采样的启动、采样中RAM地址的产生和A/D的时钟、采样完
; I9 o5 F/ r! v, @& o毕的自动停止和停止信号的输出、RAM数据读出的地址的产生等。+ M6 X/ C0 V1 b ]1 \
设计的难点是数据线和地址线的控制。单片机的引脚的限制,因此数据线是公用的,在采样期间数据流的方向是由A/D到洲;而数据读出期间,数据流的方向是由RAM到CPU的。同时,RAM的地址线也# A! T# `: x: ]- [
是公用的,RAM数据写是DMA方式,地址是由硬件产生的,RAM读的地址是由CPU产生的。
4 y4 ?% F: L' c& b# z1 E该系统采用的芯片有A/D TLC5540、74F00与非门、62256RAM和74F393等。TLC5540(40M)的A/D
' T: m$ Z% f. P转换器产生数据,地址的产生用两个74F393二进制计数器产生32K地址线A0--A14。RAM是用来暂时存
4 y" L Z6 Q' H6 o( b放高速产生的数据,以便单片机的慢速读出。另外,系统用到的74F00,用来控制A/D数据的产生、RAM
% ?! A3 Q9 F- b$ l的读写功能和计数器的工作。
+ {& U$ K3 |5 p! A( O图l是89C51单片机DMA方式的40MHz、8位高速采样电路。图中A/D转换器使用采样速度40MHz# N3 K# @+ Y6 K( I# v
的高速8位并行式A/D转换器TLC5540,存储器采用32K静态RAM62256。TLC5540的数字接13带有3态
$ l5 I, m4 K/ Q7 N+ m# ^% [* P输出,由OE控制。5540的数字接口非常简单,数字输入只有时钟CLK和输出3态控制信号OE。8位并行8 Y6 n4 S! L8 l* x C7 u. m, e
. i/ q2 l7 `; _6 q' g* c数字输出和40MHz时钟CLK同步。
) V. N) {& y6 m5 d; k/ ?9 M系统除了需要一个40MHZ的信号FOSC外,f~'、T)T。T输L山.U的H4控制信号有:。TN.、,K。A、方式A/D采样的H J1自1。4动信号
8 d7 f' ]6 ~! v8 \。h I。"tQ。T.。h DI、T.,。D—A'A,A.读信号RD,地址清0信号t。'、T—D、。r。'q.)T。T接收的信号只有一个:采样结束信号,直接送) H+ S( z! h6 P9 `+ c# H/ L
5l单片机的INTO。! w; \/ F: e1 ^
由电路可以看出,ADSTART=O可以启动A/D转换的时钟信号,使得计数器的时钟和FOSC接通,
6 ]4 E) D5 S$ ?+ O+ g并且A/D的输出3态控制为0;当ADSTAI玎=1时,计数器和FOSC的通路被切断,并且A/D的输出36 y/ J. G9 S% j' c# f! t
态控制为l而断开了A/D输出的数据线。+ [# u, H) j8 z: g7 w+ l- O3 t3 B
当74F393产生的32K数据采满时,地址线A15变为高电平,A15连接到RAM62256的片选线CS,A15( n4 m3 o, I8 {6 D2 L
的高电平使得对RAM的操作被屏蔽,停止了数据的继续写入。同时A15作为采样结束信号送到CPU。CPU
( v' {: w; A. ^9 }' H5 Z! w产生中断开始读RAM中的数据。9 a% n! ]# t& w6 y
数据的读出地址的产生用Im实现,当FOSC信号被中间的74F00屏蔽后,RD的每一个脉冲会使得二0 n8 [; p8 B. w. A: Z4 r2 l
进制计数器的地址加1,使用中用MOVX指令,把RAM的数据读入CPU,.同时MOVX指令会在RD上产0 J E) P! G6 ?# `( c% ]7 R
生一个脉冲信号,地址会自动加l。数据读出期间,控制信号ADSTAIH。* i/ u0 r# V# y* {: v
CLR的作用为把计数器的输出清0,由于采样的数据写入和读出的地址都由计数器产生,所以采样前和
) w% K8 _5 m0 l4 r, D h3 y读出前要用CLR把地址清0。
+ {& u/ Q; B3 ^: u0 K
* a* H) H. n5 z) R2 a% w附件下载: 6 ?& h5 M3 o: U. C) a+ N; }
: p* X0 R. R4 I" f6 A: ?
4 `* `1 S: f1 P- b* H# V |
|