找回密码
 注册
关于网站域名变更的通知
查看: 429|回复: 2
打印 上一主题 下一主题

[毕业设计] 51系列单片机中实现dma数据传送

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-19 17:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

1 a% P& P5 J# R( @7 T4 V, }, z摘要:51单片机在数据传送中容量明显不足, 应用接口扩展电路和DMA控制器,通过存储器
0 b. d  J: ~1 t( e3 y扩展,在几乎不占用单片机资源的情况下,实现了单片机控制系统的DMA数据传送。该方法可9 E/ L1 o) A/ z4 T- W
用于软盘驱动器或高速采样的接口设计中。
+ {/ y/ T* P. l# w% u: a) a( F关键词:存储器扩展;单片机; DMA
8 }# M* {5 {) Q* A9 K( d0引言
8 t9 {! \6 d  U' }在51系列单片机控制系统中,信息的实时处2 P- N5 Z9 V/ d, T' ?1 J
理往往需要数据的批量传送。不管是采用中断技
- u: }3 l( D' b5 z$ |+ I- D术,还是采用软件查询,每次传送都需要单片机执8 a4 l6 F( e% U* P1 j  o
行若干条指令,因而传输速度受单片机指令速度的, M# g" R8 }  F. F2 L
限制。尤其对于像高速数据采集等需要成批交换数5 f: f' b# C+ _! `1 d, U- j3 e
据的场合,速度远远不够用。为了实现单片机与高
/ q1 _9 m9 ^: ^6 t4 r& k速外设交换数据,应用DMA和接口电路实现了51
* D) |6 W7 R6 Q2 q5 `& G/ P& Y! t系列单片机控制系统的DMA的数据传送[1。
. W# U6 [, h9 b) a1 E- Z' Y  r1注意事项3 E8 @, v  S0 u, y" E) m# t! K1 c
对于复杂的单片机控制系统,必须解决低速的
, v: O2 i# e( \8 p. H8 kCPU和高速的外设的矛盾,应注意:
9 U" R/ g. E! {3 T. x(1) 为符合通用接口标准,有6条信号线," H  }- P5 x  i; m- k) @
即:0 s" L* `: }5 Z* M! F5 I# r
DMA请求信号DREQ;; x6 b  t9 T8 y9 E* o
DMA应答信号DACK;
/ M( Q+ @7 p, Z+ }& N9 L: D- W# PDMA传送过程结束信号EOP;
/ r; Y. k) \7 s7 J; y/ I4 M输入/输出设备读写信号线IOR和Iow;.
, _  k% Q2 \" L6 u' B; V& S输入/输出设备准备就绪信号线READY。
( D1 Z; S; \. d2 F/ x* k7 \6 q# {(2)接口与DMA传送控制尽量不占用单片机& g+ Q9 b# K6 E& K- o2 x( d
的系统资源,只占用一个中断。另外根据单片机当.
7 ~, Z5 W/ w9 l- r前处理任务的缓急情况,对DMA的请求讲行应答,7 J5 c( t* J4 {  P
该应答并不占用单片机的资源。2电路实现原理
9 h0 J1 D5 Z9 U- O/ H2.1存储器扩展电路
, Y+ E/ {+ u, {7 Y+ \! a51系列的单片机的外部存储容量只有64kB,# n4 J: ^$ [# {# a. {' A9 w" w2 d
在高速数据采集的情况下,其容量明显不足。若以
" B  ]# o' m. F4 u采样率50kB/s计算,只能容纳1s多的采样量,况' |' \& H, a, w0 @" V
且要求DMA在传送期间,CPU要正常工作。这就
# k  g! [8 r/ p( y( @! M3 _要求对存储容量进行扩展。下面以图1所示存储器
- H1 p3 w- g; ^# O) J- F$ u+ e扩展电路为例说明存储器扩展的原理。为说明问题7 T- e/ m- C( C) ^& M# k: X+ W$ L
的方便,省去了编码电路。只以单片机的P2.7和
4 d/ }) ]) p: _p2. 6作为片选线,下一节的DMA控制电路也简单5 c! [: o- |, s! T
以P2.5作片选线。因而特此说明,原理电路中各5 |6 w& y. u1 n5 `& q% Q$ P
寄存器的端口地址不惟一_[2]。0 p: W$ `/ o2 [1 Y
8255是-种可编程的并行I/O接口芯片,具1 ], b  z* X% t# z* }
有两个8位I/0口A,B和两个4位I/0口C。它.# H, t( ]2 e. |* r( d
们均可由编程决定其工作方式[3]。编程设定PB口+ w$ C2 u% M7 Y$ ?& L
和PC口为输出口,用于为6264提供地址; PA双% b/ o) o* Y$ \9 Q
向输入输出口,作为6264数据口,其地址分配如.
5 ^# @# T4 l! @& d) a0 M. m" c; k' v表1所示。& \) \. S5 ^0 j6 `4 V6 [4 |

1 b& a  k2 \6 @2 n& N( I) N8 z( @2 Y0 z$ m9 l" r
附件下载:
游客,如果您要查看本帖隐藏内容请回复

1 n, \5 Q3 e$ w; y8 F* g9 v5 O! l' O
! _. b2 @! J9 u# G' T
9 }5 o/ X% B" R/ s# y

该用户从未签到

2#
发表于 2020-1-19 17:36 | 只看该作者
实现了单片机控制系统的DMA数据传送
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-24 03:22 , Processed in 0.078125 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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