ARM的DMA实验.doc_第1页
ARM的DMA实验.doc_第2页
ARM的DMA实验.doc_第3页
ARM的DMA实验.doc_第4页
ARM的DMA实验.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EL - ARM - 830实验指导书 5实验七 ARM的DMA实验一、实验目的1. 了解并熟悉DMA的概念及其工作原理;2. 掌握ARM相应的寄存器配置;1. 能够用C编写相应的程序;二、实验内容1. 在实验箱的CPU板上运行程序,在串口助手上显示DMA发送的数据!三、实验设备1. EL-ARM-830教学实验箱,PentiumII以上的PC机,仿真调试电缆,串口电缆。2. PC操作系统WIN98或WIN2000或WINXP,ADS1.2集成开发环境,仿真调试驱动程序。四、实验原理在实验六中讲过,中断方式是在CPU的控制下进行的,中断方式尽管可以实时的响应外部中断源的请求,但由于它需要额外的开销时间,以及中断处理服务时间,使得的中断的响应频率受到限制。当高速外设与计算机系统进行信息交换时,若采用中断方式, CPU将会频繁的出现中断而不能完成主要任务或者根本来不及响应中断而造成数据的丢失现象,因而传输速率受CPU运行指令速度的限制。采取DMA方式,即(Direct Memory Acess),可以确保外设和计算机系统进行高速信息交换。这种方式是存储器与外设在DMA控制器的控制下,直接传送数据而不通过CPU,传输速率主要取决于存储器存取速度。它为高速I/O设备和存储器之间的批量数据交换提供了直接的传输通道。这里,直接的含义是在DMA传输过程中,DMA控制器负责管理整个操作,CPU不参与管理。S3C2410有4个通道控制器,作为简单的事例,阐述原理。本节的程序是用DMA方法实现串口数据的发送,故使用BDMA。首先,要正确的对S3C2410相关寄存器的进行配置:表2-7-1在表2-7-1中,DISRCn为DMA要传送数据地址的初始化寄存器。表2-7-2表2-7-2中,DIDSTn为DMA目标地址初始化寄存器。表2-7-3表2-7-3为DMA源数据的相关配置。 LOC 1 0:源数据在ARM高速总线上; 1:源数据在ARM外围总线上; INC 0 0:源数据每传送一个,源数据地址增长一个; 1:源数据的地址是固定不变的;表2-7-4表2-7-4为DMA目标数据的相关配置。 LOC 1 0:目标数据在ARM高速总线上; 1:目标数据在ARM外围总线上; INC 0 0:目标数据每传送一个,源数据地址增长一个; 1:目标数据的地址是固定不变的;接下来配置DCONn(n=0,1,2,3)寄存器,见表2-7-5。DCONn 位描述DMD_HS 31 选择请求模式或握手模式0:请求模式 1:握手模式SYNC 30 选择同步模式0:DREQ和DACK与APB时钟同步1:DREQ和DACK与AHB时钟同步 INT 29 当计数器到达0时是否使能中断0:禁止中断 1:使能中断 TSZ 28 选择传输单位的大小0:单位传输 1:长度为4的猝发式传输 SERVMODE 27 选择服务模式0:单服务模式1:整服务模式 HWSRCSEL 26:24 为DMA设置DMA请求源. DCON0: 000:nXDREQ0 001:UART0 010:SDI 011:Timer 100:USB device EP1 DCON1: 000:nXDREQ1 001:UART1 010:I2SSDI 011:SPI 100:USB device EP2 DCON2: 000:I2SSDO 001:I2SSDI 010:SDI 011:Timer 100:USB device EP3 DCON3: 000:UART2 001:SDI 010:SPI 011:Timer 100:USB device EP4 SWHW_SE L 23 在DMA软件请求源和硬件请求源之间选择0:软件请求模式,DMA通过设置DMASKTRIG寄存器SW_TRIG位触发1:硬件请求模式,DMA通过本寄存器的HWSRCSEL位设置来触发 RELOAD 22 当当前计数器值等于零后是否重新加载0:自动加载 1:DMA通道关闭,不重新加载 DSZ 21:20 传输数据的大小0:字节 1:半字 2:字 3:保留 TC 19:0 初始化计数器,在这里设置计数器的值。 表2-7-5接下来配置DMASKTRIGn如下表(表2-7-6)所示:DMASKTRIGn 位描述STOP 2 停止DMA操作1:当前自动传输结束立刻停止,如果当前没有自动传输,DMA立即停止,CURR_TC=0 ON_OFF 1 DMA通道开关位0:通道关闭,DMA请求被忽略1:通道打开。 SW_TRIG 0 DMA通道通过软件请求模式触发1:对这个DMA控制器请求一次DMA操作。注:这个位只有在DCONn23选择1并且本寄存器的ON_OFF位置1才能生效。当DMA操作开始后,本位自动清0 表2-7-6详细具体的设置,请参见HARDWAREADS实验七目录下的DMA.mcp项目文件。五、实验步骤1. 本实验使用实验教学系统的CPU板,在进行本实验时,LCD电源开关、音频的左右声道开关、AD通道选择开关、触摸屏中断选择开关等均应处在关闭状态。2在PC机并口和实验箱的CPU板上的JTAG接口之间,连接仿真调试电缆,以及串口间连接公/母接头串口线。3检查连接是否可靠,可靠后,接入电源线,系统上电。4打开ADS1.2开发环境,从里面打开实验程序HARDWAREADS实验七DMA.mcp项目文件,进行编译。打开/实验软件/tools/目录下的串口调试助手工具,配置为波特率为115200,校验位无,数据位为8,停止位为1。5编译通过后,进入ADS1.2调试界面,加载实验程序HARDWAREADS实验七DMA_DataDebug中的映象文件程序映像DMA.axf。6在ADS调试环境下,在主程序Main函数中的rDMASKTRIG0 = (11);处设置断点,全速运行映象文件到该处。下一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论