|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
摘要:采用高速的A/D(如TLC5540)转换从传感器接收的数据,往往存在高速A/D转换的速度与
+ ]" _1 t ~+ a- g低速智能管理的速度不匹配的问题。本文介绍一种用5l单片机和并行A/D TLC5540设计的实用性强的+ r( R# b. t3 ?; O- |. S; _8 ?1 ~5 J
高速采样电路.采样使用DMA方式,硬件电路产生A/D转换需要的时钟、存贮器的地址和写信号,当$ E9 k/ g" k% b i
数据采样完毕时要自动停止写RAM,然后把采样结束信息传递给CPU。本电路设计的特点是:数据线
' H# Y- {# b; z. t$ N4 W8 i是公用,RAM的地址线也是公用的,RAM数据写是DMA方式,地址也由硬件产生,RAM读的地址3 u2 k- \3 m. k. a1 ~6 G
是由CPU产生的.本文对该电路工作的原理和时序作详细介绍并用实例说明。. S( O0 v1 Q; K
0 s; p4 n/ \5 R& T1.引言
: ]$ p! @6 _ V2 R4 ^- p6 {4 v在单片机应用系统中,有时也需要用A/D转换器把某些连续变化的模拟量转换为数字量以便计算机进行
! V* o8 X. r r7 c- W% K4 J; y, G加工和处理【lJ。高速A/D最高可达1G次/S以上,而一般的CPU总线或智能管理设备无法控制如此高的速( W9 [9 M8 B: a& E3 v4 u
度,比如MCS--51单片机最高时钟频率为12MHz,大部分指令周期只需1 Il s,乘除指令也仅需4 u s【11'并1 g! t: Z3 J. u" i/ W* W, d; W
行A/D(TLC5540)转换时间为0.025 p S,因此不能应用象在中低速A/D用的发启动转换一查转换结束~7 i6 \ a7 t4 g7 t9 o
再读转换结果的方式。高速A/D的数字输出高于总线以及控制系统的速度,针对这一特性,解决这种问题
6 a* j3 ]' B5 x* R' t所使用的方法,一般采用:高速一储存一慢速读取得方案。即:对采样先使用DMA方式(直接存储器操作),
# R% z+ x7 H- |* E9 G& }% J( ?- S把数据高速采样存储在RAM中,数据采样结束后,再从RAM中把数据“慢速”读出。所谓的DMA控制0 q/ q) ?, ]* _9 [
方式是一种成块传送数据的方式12J。DMA方式要利用硬件电路产生A/D转换需要的时钟、存储器的地址信
- o3 }) T4 I C5 y9 j- m号、存储器的写写信号,当数据采样完毕要自动停止写RAM以及把采样结束信息传递给CPU。采样和存储2 a# J3 n2 H3 [5 d& ~, {' x
之间由于高速,全部硬件实现。$ N6 O1 z$ }% K2 u9 ]
以下介绍的高速采样是利用了TLC5540/5510这种8位20M/40M高速A/D,数字元件控制信号只有CLK; x9 n! \6 A# P
和三态输出控制,当三态输出有效时,输出数据随CLK更新。利用计算机(单片机进行管理,当高速RAM- I5 V y8 R" [& O ?1 H `
采满后,再慢速读tt:l。单片机采用查询方式来判断RAM数据是否采慢)控制A/D,并由40M的FOSC来控制洲的写功能。7 z0 Y& e% j7 o% m
2.设计思想及原理分析(时序图); F- }) F4 C m. ~$ ?' b
DMA方式A/D采样电路的设计要解决:采样的启动、采样中RAM地址的产生和A/D的时钟、采样完3 x1 N0 _( [. p; {
毕的自动停止和停止信号的输出、RAM数据读出的地址的产生等。
4 d$ H5 ^( s7 U% R设计的难点是数据线和地址线的控制。单片机的引脚的限制,因此数据线是公用的,在采样期间数据流的方向是由A/D到洲;而数据读出期间,数据流的方向是由RAM到CPU的。同时,RAM的地址线也3 j0 k& X! j/ v2 }: O! c# L! ~2 l
是公用的,RAM数据写是DMA方式,地址是由硬件产生的,RAM读的地址是由CPU产生的。
3 U4 v( ?& j( h该系统采用的芯片有A/D TLC5540、74F00与非门、62256RAM和74F393等。TLC5540(40M)的A/D
( e, m# d+ c) ?( l7 v转换器产生数据,地址的产生用两个74F393二进制计数器产生32K地址线A0--A14。RAM是用来暂时存- K- g. e; a7 B) I: r; w
放高速产生的数据,以便单片机的慢速读出。另外,系统用到的74F00,用来控制A/D数据的产生、RAM: r/ K* Z/ P9 {! E
的读写功能和计数器的工作。
! l! A7 W! V0 j' v7 K. t) _8 N图l是89C51单片机DMA方式的40MHz、8位高速采样电路。图中A/D转换器使用采样速度40MHz& n/ u$ b: H$ m* R. J
的高速8位并行式A/D转换器TLC5540,存储器采用32K静态RAM62256。TLC5540的数字接13带有3态
* w; \- E) w" O4 ] {0 b输出,由OE控制。5540的数字接口非常简单,数字输入只有时钟CLK和输出3态控制信号OE。8位并行
- ^$ ^9 X+ f# @( t& O e) C# I) N' ^0 E# X. f7 C. b0 k( W8 ~2 h
数字输出和40MHz时钟CLK同步。: \' n, l% q5 K4 `2 m% Q
系统除了需要一个40MHZ的信号FOSC外,f~'、T)T。T输L山.U的H4控制信号有:。TN.、,K。A、方式A/D采样的H J1自1。4动信号$ U& @7 b3 ~# \( K& Y( I
。h I。"tQ。T.。h DI、T.,。D—A'A,A.读信号RD,地址清0信号t。'、T—D、。r。'q.)T。T接收的信号只有一个:采样结束信号,直接送
9 P" j2 y* L" a7 F5 }: x3 K5l单片机的INTO。
0 J- A4 z! J* l: w' i由电路可以看出,ADSTART=O可以启动A/D转换的时钟信号,使得计数器的时钟和FOSC接通,
' \& d3 x4 M3 `% T- j6 B( F并且A/D的输出3态控制为0;当ADSTAI玎=1时,计数器和FOSC的通路被切断,并且A/D的输出3
4 F3 t* y% c5 t! f# v/ |! u态控制为l而断开了A/D输出的数据线。# a0 |& i, a5 |0 F" L& S
当74F393产生的32K数据采满时,地址线A15变为高电平,A15连接到RAM62256的片选线CS,A152 U$ P2 e1 I6 c7 h9 J
的高电平使得对RAM的操作被屏蔽,停止了数据的继续写入。同时A15作为采样结束信号送到CPU。CPU
( U1 y) e, u: E' g) n, K" l产生中断开始读RAM中的数据。6 T I3 A6 `' \6 Q& Q7 Y
数据的读出地址的产生用Im实现,当FOSC信号被中间的74F00屏蔽后,RD的每一个脉冲会使得二
" Q( x, z1 g# |进制计数器的地址加1,使用中用MOVX指令,把RAM的数据读入CPU,.同时MOVX指令会在RD上产
. `' a: r7 x* q3 {3 D/ \ [生一个脉冲信号,地址会自动加l。数据读出期间,控制信号ADSTAIH。
0 c/ o( I% {: D5 V$ \CLR的作用为把计数器的输出清0,由于采样的数据写入和读出的地址都由计数器产生,所以采样前和
9 D" z( @$ c1 M读出前要用CLR把地址清0。
0 m1 K, d6 `* D% T# P" q7 N& C l4 w, y# W, g: O
附件下载: 6 E8 C" l& p7 ~0 ?) M( u: @) j
7 d. A$ b6 ^: n; m
4 d( [8 F1 I) @3 h: h4 S7 v, ^: ~ |
|