📄 transferdata.c
字号:
#include <cdefBF533.h>
#define Rec_Buffer 0x7ff0000
#define Ep2_Addr ((volatile unsigned short *)0x20300000)
#define Ep4_Addr ((volatile unsigned short *)0x20300400)
#define Ep6_Addr ((volatile unsigned short *)0x20300800)
#define Ep8_Addr ((volatile unsigned short *)0x20300c00)
//#define pRec_Buffer ((volatile void **)Rec_Buffer)
//#define pRec_Buffer (((volatile unsigned short *)0x07ff0000)
volatile unsigned short * FifoFill(volatile unsigned short * pBuffer,int nBytes,int EpNum);
/******************************************************************************
Author by tohope @zzuli
File Name: TransferData.c
Date Modified: 5/8/06 Rev 0.1
Software: VisualDSP++4.0
Hardware: ADSP-BF533 EZ-KIT Board
Special Connections:
void Trans_Ram(volatile unsigned short * pStartAddr,int nBytes,int TransFlag)
Transfer nBytes bytes from pStartAddr;TransFlag is a Flags bits here refer PF2;
Purpose: The file Transfer Data thronght Ep2,4,6,8
*********************************************************************************/
extern TransFlag;
void Trans_Ram(volatile unsigned short * pStartAddr,int nBytes,int TransFlag)
{
int j=0;
// char * pRec_Buffer=Rec_Buffer;
// char * pSend_Buffer=Rec_Buffer;
// char * pStartAddr=&StartAddr;
int EpNum=6;
int i=0;
bool PKT_FLAG= false;
volatile unsigned short * pTransAddr; //init Ep name
if (TransFlag==1)
{
pTransAddr = Ep6_Addr;
bool show=(*pFIO_FLAG_D)&PF6;
if (show)
{
printf("PF6 is high");
}
else printf("PF6 is low votage");
if ((nBytes%512)==0){
PKT_FLAG=false;
}else PKT_FLAG= true;
while (nBytes>0)
{
if (!(((*pFIO_FLAG_D)&PF6)==PF6)){
* pTransAddr = * pStartAddr;
nBytes--;
nBytes--;
pStartAddr++;
i++;
for (j=0;j<20;j++);
}
}
if(PKT_FLAG) {
*pFIO_FLAG_S=0x0080;
printf("\nPF4 has been set %d\n",i);
}
printf("\nTransfer Times is %d\n",i);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -