cc2530单片机技术与应用isbn978-课程dma_第1页
cc2530单片机技术与应用isbn978-课程dma_第2页
cc2530单片机技术与应用isbn978-课程dma_第3页
cc2530单片机技术与应用isbn978-课程dma_第4页
cc2530单片机技术与应用isbn978-课程dma_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、第09章 CC2530的DMA应用1、DMA介绍2、相关寄存器3、开发实验4、拓展题本章简介1、DMA介绍DMA是什么?DMA(Direct Memory Access),即直接存储器存取,是一种快速传送数据的机制。CPU从来源把每一片段的资料复制到暂存器,然后把他们再次写回到新的地方。在这个时间中,CPU对于其他的工作来说就无法使用。 DMA 传输将数据从一个地址空间复制到另外一个地址空间,传输动作本身是由 DMA 控制器 来实行和完成。CPU不参与进来。像是这样的操作并没有让处理器工作拖延,反而可以被重新排程去处理其他的工作。DMA 传输对于高效能嵌入式系统算法和网络是很重要的。 1、DM

2、A介绍CC2530芯片系统内置一个直接存取访问控制器(DMA控制器)。该控制器可以用来减轻8051CPU内核传送资料时的负担,从而实现高效率利用电源的条件,具有良好的整体性能功耗。只需CPU极少的处理资源,DMA控制器就可以将数据从ADC或RF收发器等外设传送到存储器。CC2530的DMA 控制器有5 个通道,即DMA 通道0 到通道4。每个DMA 通道能够从DMA 存储器空间的一个位置传送数据到另一个位置。1、DMA介绍1、创建结构体,DMA配置的数据结构2、创建结构体对象,进行配置相当于:一封信相当于:填写了信的内容,如收件人,发件人,信息长度,等等3、选择一个DMA,并将结构体对象地址给

3、它相当于:将信投入信箱4、让DMA进入工作状态相当于:信箱显示有信,快递员可以来拿信了5、DMA开始传输工作相当于:快递员拿信开始送信6、等待DMA传输完成相当于:等待消息7、验证DMA传输结构相当于:验证收件人是否都到正确的信。DMA工作流程介绍:字节偏移量位名称描述07:0SRCADDR15:8DMA通道源地址,高位。17:0SRCADDR7:0DMA通道源地址,低位。27:0DESTADDR15:8DMA通道目的地址,高位。请注意,闪存存储器不能直接写入。37:0DESTADDR7:0DMA通道目的地址,高位。请注意,闪存存储器不能直接写入。47:5VLEN2:0可变长度传输模式。在字模

4、式中,第一个字的12:0位被认为是传送长度的。000:采用LEN作为传送长度。001: 传送由第一个字节/字+1指定的字节/字的长度(上限由LEN指定)。因此,传输长度不包括字节/字的长度。010: 传送通过第一个字节/字指定的字节/字的长度(上限由LEN指定)。因此,传输长度包括字节/字的长度。011: 传送通过第一个字节/字+2指定的字节/字的长度(上限由LEN指定)。因此,传输长度不包括字节/字的长度100: 传送通过第一个字节/字+3指定的字节/字的长度(上限由LEN指定)。因此,传输长度不包括字节/字的长度。101: 保留。110: 保留。111: 使用LEN作为传输长度的备用。44

5、:0LEN12:8 DMA的通道传送长度。当VLEN从000到111时采用最大允许长度。当处于WORDSIZE模式时,DMA通道数以字为单位,否则字节为单位。57:0LEN7:0 DMA的通道传送长度。当VLEN从000到111时采用最大允许长度。当处于WORDSIZE 模式时,DMA通道数以字为单位,否则以字节为单位。67WORDSIZE选择每个DMA传送是采用8位(0) 还是16位(1)。66:5TMODE1:0DMA通道传送模式:00:单个。 01:块。 10:重复单一。 11:重复块。64:0TRIG4:0选择要使用的DMA触发。0 0000:无触发(写到DMAREQ仅仅是触发)。0

6、0001:前一个DMA通道完成。0 0010 1 1110:选择表8-1中展示的一个触发。触发的选择按照表中序号。77:6SRCINC1:0源地址递增模式(每次传送之后):00:0字节/字。 01:1字节/字。 10:2字节/字。 11:-1字节/字。75:4DESTINC1:0目的地址递增模式(每次传送之后):00:0字节/字。 01:1字节/字。 10:2字节/字。 11:-1字节/字。73IRQMASK该通道的中断屏蔽。0:禁止中断发生。 1: DMA通道完成时使能中断发生。72M8采用VLEN的第8位模式作为传送单位长度;仅应用在WORDSIZE=0且VLEN从000到111时。0:采

7、用所有8位作为传送长度。 1:采用字节的低7位作为传送长度。71:0PRIORITY1:00 DMA通道的优先级别:00:低级,CPU优先。 01:保证级,DMA至少每秒一次的尝试优先。 10:高级,DMA优先。 11:保留。CC2530DMA数据结构配置2、相关寄存器2、相关寄存器位名称复位R/W描述7:0DMA0CFG15:80 x00R/WDMA通道0配置地址,高位字节。DMA通道0配置地址高字节寄存器 DMA0CFGH位名称复位R/W描述7:0DMA0CFG7:00 x00R/WDMA通道0配置地址,低位字节。DMA通道0配置地址低字节寄存器 DMA0CFGH位名称复位R/W描述7:0

8、DMA1CFG15:80 x00R/WDMA通道1-4配置地址,高位字节。DMA通道1-4高字节地址寄存器 DMA0CFGH位名称复位R/W描述7:0DMA1CFG7:00 x00R/WDMA通道1-4配置地址,低位字节。DMA通道1-4低字节地址寄存器 DMA0CFGH2、相关寄存器位名称复位R/W描述7ABORT0R0/WDMA停止。此位是用来停止正在进行的DMA传输。通过设置相应DMAARM位为1,写1到该位停止所有选择的通道。0:正常运行。1:停止所有选择的通道。6:5-00R/W不使用。4DMAARM40R/W1DMA进入工作状态通道4。为了任何DMA传输能够在该通道上发生,该位必须

9、置1。对于非重复传输模式,一旦完成传送,该位自动清0。3DMAARM30R/W1DMA进入工作状态通道3。为了任何DMA传输能够在该通道上发生,该位必须置1。对于非重复传输模式,一旦完成传送,该位自动清0。2DMAARM20R/W1DMA进入工作状态通道2。为了任何DMA传输能够在该通道上发生,该位必须置1。对于非重复传输模式,一旦完成传送,该位自动清0。1DMAARM10R/W1DMA进入工作状态通道1。为了任何DMA传输能够在该通道上发生,该位必须置1。对于非重复传输模式,一旦完成传送,该位自动清0。0DMAARM00R/W1DMA进入工作状态通道0。为了任何DMA传输能够在该通道上发生,

10、该位必须置1。对于非重复传输模式,一旦完成传送,该位自动清0。DMA 通道进入工作状态寄存器 DMAARM2、相关寄存器DMA 通道开始请求和状态寄存器DMAREQ位名称复位R/W描述7:5-000R0不使用。4DMAREQ40R/W1DMA传送请求,通道4。当设置为1时,激活DMA通道(与一个触发事件具有相同的效果)。当DMA传输开始清除该位。3DMAREQ30R/W1DMA传送请求,通道3。当设置为1时,激活DMA通道(与一个触发事件具有相同的效果)。当DMA传输开始清除该位。2DMAREQ20R/W1DMA传送请求,通道2。当设置为1时,激活DMA通道(与一个触发事件具有相同的效果)。当

11、DMA传输开始清除该位。1DMAREQ10R/W1DMA传送请求,通道1。当设置为1时,激活DMA通道(与一个触发事件具有相同的效果)。当DMA传输开始清除该位。0DMAREQ00R/W1DMA传送请求,通道0。当设置为1时,激活DMA通道(与一个触发事件具有相同的效果)。当DMA传输开始清除该位。该寄存器主要用来触发DMA开始工作DMA触发器功能单元描述号码名称0NONEDMA没有触发器,设置DMAREQ.DMAREQx位开始传送。1PREVDMADMA通道是通过完成前一个通道来触发的。2T1_CH0定时器1定时器1,比较,通道0。3T1_CH1定时器1定时器1,比较,通道1。4T1_CH2

12、定时器1定时器1,比较,通道2。5T2_EVENT1定时器2定时器2,事件脉冲1。6T2_EVENT2定时器2,事件脉冲2。7T3_CH0定时器3定时器3,比较,通道0。8T3_CH1定时器3定时器3,比较,通道1。9T4_CH0定时器4定时器4,比较,通道0。10T4_CH1定时器4定时器4,比较,通道1。11ST睡眠定时器眠定时器比较。12IOC_0IO控制器端口端口I/O引脚输入转换。13IOC_1IO控制器端口端口I/O引脚输入转换。14URX0USART0USART 0接收完成。15UTX0USART0USART 0发送完成。16URX1USART1USART 1接收完成。17UTX

13、1USART1USART 1发送完成。18FLASH闪存控制器写闪存数据完成。19RADIO无线模块接收RF字节包。20ADC_CHALLADCADC结束一次转换,采样已经准备好。21ADC_CH11ADCADC结束通道0的一次转换,采样已准备好。22ADC_CH21ADCADC结束通道1的一次转换,采样已准备好。23ADC_CH32ADCADC结束通道2的一次转换,采样已准备好。24ADC_CH42ADCADC结束通道3的一次转换,采样已准备好。25ADC_CH53ADCADC结束通道4的一次转换,采样已准备好。26ADC_CH63ADCADC结束通道5的一次转换,采样已准备好。27ADC_

14、CH74ADCADC结束通道6的一次转换,采样已准备好。28ADC_CH84ADCADC结束通道7的一次转换,采样已准备好。29ENC_DWAESAES加密处理器请求下载输入数据。30ENC_UPAESAES加密处理器请求上传输出数据。31DBG_BW调试接口调试接口突发写。CC2530DMA触发源共32种2、相关寄存器2、相关寄存器DMA中断标志寄存器DMAIRQ位名称复位R/W描述7:5-000R/W0不使用。4DMAIF40R/W0DMA通道4中断标志。0:DMA通道传送未完成。1:DMA通道传送完成/中断未决。3DMAIF30R/W0DMA通道3中断标志。0:DMA通道传送未完成。1:DMA通道传送完成/中断未决。2DMAIF20R/W0DMA通道2中断标志。0:DMA通道传送未完成。1:DMA通道传送完成/中断未决。1DMAIF10R/W0DMA通道1中断标志。0:DMA通道传送未完成。1:DMA通道传送完成/中断未决。0DMAIF00R/W0DMA通道0中断标志。0:DMA通道传送未完成。1:DMA通道传送完成/中断未决。该寄存器主要用来判断DMA是否传送完成3、开发实验实验要求:使用DMA控制器将一字符串从源地址转移到目标地址。具体要求如下:采用块传输模式,传输长度为该字符串的长度,源地址和目标地址的增量都设为1。将传送

温馨提示

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

评论

0/150

提交评论