Blackfin DSP(八):BF533的DMA
#include <cdefBF533.h>
#include <sys\exception.h> #define POLC 0x00004000
#define PORT_CFG_2_3_EXT_FS 0x00000020
#define XFR_TYPE_NON_ITU656 0x0000000C
#define SLEN_32 0x001f
#define FLOW_1 0x1000 unsigned char iTxBuffer[];
unsigned char iRxBuffer[]; EX_INTERRUPT_HANDLER(Sport0_RX_ISR);
EX_INTERRUPT_HANDLER(Sport0_TX_ISR); void Init_Sport1_TX(int TCLKDIV,int TFSDIV)
{ *pSPORT0_TCLKDIV = TCLKDIV;
*pSPORT0_TFSDIV = TFSDIV;
*pSPORT0_TCR1 = ITFS|TFSR|ITCLK;
*pSPORT0_TCR2 = ;
} void Init_Sport1_RX(int RCLKDIV,int RFSDIV)
{ *pSPORT0_RCLKDIV = RCLKDIV;
*pSPORT0_RFSDIV = RFSDIV;
*pSPORT0_RCR1 = IRFS|RFSR|IRCLK;
*pSPORT0_RCR2 = ;
} void Init_DMA(void)
{
*pDMA1_PERIPHERAL_MAP = 0x1000;
*pDMA1_CONFIG = WNR | WDSIZE_32 | DI_EN | FLOW_1;
*pDMA1_START_ADDR = (void *)iRxBuffer;
*pDMA1_X_COUNT = ;
*pDMA1_X_MODIFY = ; *pDMA2_PERIPHERAL_MAP = 0x2000;
*pDMA2_CONFIG = WDSIZE_32 | DI_EN |FLOW_1;
*pDMA2_START_ADDR = (void *)iTxBuffer;
*pDMA2_X_COUNT = ;
*pDMA2_X_MODIFY = ;
} void Enable_DMA_Sport0_TX(void)
{
*pDMA2_CONFIG = (*pDMA2_CONFIG | DMAEN);
*pSPORT0_TCR1 = (*pSPORT0_TCR1 | TSPEN);
} void Enable_DMA_Sport0_RX(void)
{
*pDMA1_CONFIG = (*pDMA1_CONFIG | DMAEN);
*pSPORT0_RCR1 = (*pSPORT0_RCR1 | RSPEN);;
} void Init_Interrupts(void)
{
*pSIC_IAR0 = 0xffffffff;
*pSIC_IAR1 = 0xfffff32f;
*pSIC_IAR2 = 0xffffffff; register_handler(ik_ivg9, Sport0_RX_ISR);
register_handler(ik_ivg10, Sport0_TX_ISR); *pSIC_IMASK = 0x00000600; } EX_INTERRUPT_HANDLER(Sport0_RX_ISR)
{
*pDMA1_IRQ_STATUS = 0x0001; printf("SPORT RX DMA Done!\n"); *pSIC_IMASK &= ~0x00000200; } EX_INTERRUPT_HANDLER(Sport0_TX_ISR)
{
*pDMA2_IRQ_STATUS = 0x0001; printf("SPORT TX DMA Done!\n"); *pSIC_IMASK &= ~0x00000400;
} main()
{
int i;
Set_PLL(,);
Init_EBIU();
Init_SDRAM(); for(i=;i<;i++)
iTxBuffer[i]=i; Init_Sport1_TX(,);
Init_Sport1_RX(,);
Init_Interrupts();
Init_DMA();
Enable_DMA_Sport0_TX();
Enable_DMA_Sport0_RX();
while();
}
Blackfin DSP(八):BF533的DMA的更多相关文章
- Blackfin DSP(八):1D DMA与音频处理模板
1.DMA产生的背景 在许多需要使用DSP 的场合,一般都需要大量的数据搬移工作,而如果每次数据搬移都由DSP 内核来参与完成,将大大占用DSP 内核的处理时间,从而严重影响其信号处理能力.因此,Bl ...
- Blackfin DSP(二):寄存器操作与GPIO
BlackfinDSP的寄存器是通过指针操作的,与51.ARM等MCU一样,通过“或”操作来置1,通过“与”操作清零. 在DSP上最简单的外设非IO口莫属,但是由于其功能强大,远非一般IO口可比,因此 ...
- Blackfin DSP(五):BF533的SPI接口
533SPI的特性 最高速度可达SCLK/4: 支持主模式和从模式: 可使用8个GPIO口作为从选择线: 1 slave select input pins 7 slave select output ...
- Blackfin DSP(三):BF533 的EBIU接口之flash
上一节谈了GPIO问题,是用BF561 ezkit进行说明的,这是因为561 ezkit上的GPIO是与LED直连的,讲解GPIO时不会涉及到其它问题,降低了复杂性.对于533,也采取同样的操作即可. ...
- Blackfin DSP(四):BF533 EBIU之SDRAM
BF533的SDRAM控制器最大支持128M bytes的SDRAM空间:总线宽度可以配置为4位.8位.16位.处理器与SDRAM的连线包括数据总线D[0:15].地址总线A[1:19].SDRAM刷 ...
- Blackfin DSP(六):BF533的SPORT接口
1.特性 bf533有两个SPORT口(synchronous serial Port),即同步串行接口.完全独立的接收和发送通道,且每个通道都具有缓冲,最高速度可达SCLK/2.最大支持32bit字 ...
- Blackfin DSP(七):用SPORT口模拟SPI
1.问题的提出 当系统从SPI device启动时,若SCLK = 133M,则SPI的最大速度为33M.然而,有一些串行的flash设备能更快的运行,因此,如果我们使用SPORT口,它的最大速度为S ...
- WS2812B彩灯详细讲解篇(STM32 PWM+DMA控制 STM32 HAL库编程 循环延时控制多种控制方式)
一.效果展示 观看演示效果:https://www.bilibili.com/video/BV1JT4y1P72Q 二. 基础认识 (一) 小理论 WS2812B是一种智能控制LED光源,将控制电路 ...
- Android原生(Native)C开发之四:SDL移植笔记
http://www.apkbus.com/forum.php?mod=viewthread&tid=1989 SDL(Simple DirectMedia Layer)是一套开放源码的跨平台 ...
随机推荐
- UIActionSheet的使用
UIActionSheet是在iOS弹出的选择按钮项,可以添加多项,并为每项添加点击事件. 为了快速完成这例子,我们打开Xcode 4.3.2, 先建立一个single view applicatio ...
- Python collections 模块用法举例
Python作为一个“内置电池”的编程语言,标准库里面拥有非常多好用的模块.比如今天想给大家 介绍的 collections 就是一个非常好的例子. 1.collections模块基本介绍 我们都知道 ...
- Ionic 2.0.0-rc.1 发布,HTML5 移动应用框架
Ionic 2.0.0-rc.1 发布了,Ionic Framework 是个高级的 HTML5 移动端应用框架,是个很漂亮的使用 HTML5 开发混合移动应用前端框架.本次更新内容如下: Bug 修 ...
- .net 获取AppDomain创建了多少
partial class HttpBrowser { public static string IsolateCall(PageContentHandler pHandler) { Contract ...
- wireshark使用方法(学习笔记一)
wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必须了解网络协议,否则就看不懂wireshark了. 为了安全考虑 ...
- Reverse-Daily(2)-wow
链接:http://pan.baidu.com/s/1eS9JNP4 密码:ltl4 本体分析比较简单,算法是解一个22元一次方程 这里引入了numpy这样一个python库,灰常强大 import ...
- C语言之EOF和feof()
EOF用于判断所操作的文件是否已经读到文件结束,是在stdio.h文件中定义的符号常量,值为-1. 即当系统读取到文件结尾,所返回的一个信号值(也就是-1). EOF不是可输出字符,因此不能在屏幕上输 ...
- Devexpress datagrid动态添加显示指定列的gridView
代码如下: public class DXGridControlHelper { /// <summary> /// 获取显示指定列的GridView /// </summary&g ...
- HDU 3006
http://acm.hdu.edu.cn/showproblem.php?pid=3006 注意到集合内数字最大只有14,状态压缩一下,然后枚举出所有状态 #include <iostream ...
- EasyUI filebox组件在IE下不兼容
EasyUI 1.4.1 jQuery v1.11.1 EasyUI1.4.1版本的filebox在IE9+环境下,提交表单上传文件时出错,不能使用.