5JW} Y0a5s2F"^44606
-K o7D.\ i z Q ~44606电子园51单片机学习网D]2r F4H0B
1 引 言 电子园51单片机学习网#F[k-j Aq
许多单片机控制系统中,信息的实时处理往往需要数据的批量传送。不管是采用软件查询,还是采用中断技术,它们都是依靠程序控制,每次传送数据都需要单片机执行若干条指令,因而传输速率受单片机指令运行速度的限制。例如,51系列单片机将外设某一数据存入片外RAM,至少要运行2周期指令MOVX和更改地址指针DPTR指令各两次,若采用12MHz时钟,则需4μs。可见,即使不考虑单片机的其它运算,其数据传送速度也只能达到 250Kbyte/s。对于象高速数据采集等需要成批交换数据的场合,速度实在是太慢了。为了实现单片机与高速外设的数据交换,应用接口扩展电路和DMA 控制器,在几乎不占用单片机资源的情况下,实现了单片机控制系统的DMA数据传送。电子园51单片机学习网]4Z r2`:^IL
2 几点说明 电子园51单片机学习网e)fF'~+A0w^'E
对于单片机控制系统中简单的DMA数据传送,只要应用双向RAM作为外存储器或应用简单的门控电路就可实现。但对于复杂的单片机控制系统,要解决高速外设和低速CPU之间的矛盾,就不能象微机那样通过出借系统总线来实现数据的DMA传送,更不能因数据传送而中断CPU的工作。为此要求:电子园51单片机学习网,q asVQ b
(1)当单片机控制系统需与高速外设交换数据时,单片机只能作简单的响应,不能长时间中断工作。解决的办法是采用扩展数据存储器系统,数据交换时CPU只出借扩展数据存储器作为DMA数据交换的存储器。电子园51单片机学习网(j'pn{&Kpwh?
(2)为便于单片机控制系统与高速数据采集或软磁盘驱动器等外设的连接,其DMA控制方式应具有一致性,符合通用接口标准。电子园51单片机学习网xl ?)|5|9C
信号线共6条,即:
G~CdJ1V!w"]+n-n*`44606 DMA请求信号DREQ;电子园51单片机学习网 s5]M&R)@yi{
DMA响应回答信号DACK;电子园51单片机学习网7pO#KSn{z P1_
DMA传送过程结束信号
I8?{I$t44606 输入/输出设备读写信号线
)Da&wl V$j44606 输入/输出设备准备就绪信号线READY。
T)c p W&a9t/G-C_*vE$s44606 (3)DMA传送控制与接口尽量不占用单片机的前处理任务的缓急情况,相应对DMA请求作出应答,对DMA请求的应答并不占用单片机的资源。电子园51单片机学习网TDM p J n
3 电路实现原理电子园51单片机学习网ot2z+W ]N-f:V#A
3.1 存储器扩展电路
e m e0m4Lq:v1{0a:e44606 51系列单片机的外部存储容量只有64K,在高速数据采集等情况下,其容量明显不足。若以采样率50KS/s计算,只能容纳1s多的采样量,况且要求DMA传送期间CPU要照常工作,包括对外部数据存储器的访问。这就要求对存储容量进行扩展。将扩展的存储器用于DMA,原有的存储器继续作为工作存储器。下面以图3—1所示存储器扩展电路为例说明存储器扩展的原理。为说明问题的方便,省去了编码电路,只以单片机的P2.7和P2.6作为片选线,下一节的DMA控制电路也简单以P2.5作片选线。因而特此说明,原理电路中各寄存器的端口地址不惟一。
电子园51单片机学习网e1}6{+|C0PI)K~
电子园51单片机学习网&oq Ff+r9g*G(g 8155芯片内具有256字节的RAM,2个8位(PA和PB)、1个6位(PC)可编程I/O口。编程设定PB口和PC口为输出口,用于为6264提供地址;PA口为双向输入输出口,作为6264的数据口。其地址分配为:
Io+D? _a8Rz44606电子园51单片机学习网o1flc/dcn
读写扩展存储器6264时,在PB口送入6264的低8位地址,PC口送入另5位地址(PC口的另外1位作为单片机对DMA请求的应答线)。通过读写 PA口即可完成扩展存储器的读写。虽然存取一次数据要用3条外部RAM读写指令,但这样不但扩展了存储器容量,而且更重要的是在保证CPU不中断工作的条件下,为数据的DMA传送创造了条件。电子园51单片机学习网'Pu`;B#carc
另外,这种存储器扩展方式,通过选用不同的扩电子园51单片机学习网1}&Ft%y'W$E~
展芯片或选用多个扩展芯片,可大大扩展存储器的容量,如采用8255并口扩展芯片,即可扩展64K的存储容量。电子园51单片机学习网9l&ZK"c7w
3.2 DMA控制电路
m3pSd"?8a7O44606 利用通用DMA控制器构成了图3—2所示的单片机数据DMA传送通道,它提供了4通道标准的DMA传送接口信号,其工作过程为:电子园51单片机学习网Z3va7G9V2Xp
文章评论(0条评论)
登录后参与讨论