68013TOFPGA发送数据 出现不正常数据''0xcd''
实在不知道USB贴该发哪,就发以前发过的地方了用68013-128pin向FPGA发送数据,用slavefifo自动模式,大小为720*760BYTE,一次发送760BYTE 分720次发送,其中实验数据有719*760BYTE都是0,只有整个文件中间的760BYTE为FF,用USBHUND观察发送的数据,发现每次到143*760字节的时候,68013开始发送0xcd,长度为576*760BYTE,在数据最后的760BYTE有全为0,我试过几个不同数据文件,只是发送0xcd的起点不一样,长度都一样,不知大家遇到过这样的现象没有?
是不是和这个代码有关?
if ((WORD)&DeviceDscr & 0xe000)
{
IntDescrAddr = INTERNAL_DSCR_ADDR;
ExtDescrAddr = (WORD)&DeviceDscr;
DevDescrLen = (WORD)&UserDscr - (WORD)&DeviceDscr + 2;
for (i = 0; i < DevDescrLen; i++)
*((BYTE xdata *)IntDescrAddr+i) = 0xCD;
for (i = 0; i < DevDescrLen; i++)
*((BYTE xdata *)IntDescrAddr+i) = *((BYTE xdata *)ExtDescrAddr+i);
pDeviceDscr = IntDescrAddr;
offset = (WORD)&DeviceDscr - INTERNAL_DSCR_ADDR;
pDeviceQualDscr -= offset;
pConfigDscr -= offset;
pOtherConfigDscr -= offset;
pHighSpeedConfigDscr -= offset;
pFullSpeedConfigDscr -= offset;
pStringDscr -= offset;
}
这是TD_init()之后的一段代码,是描述符地址重映射,看不大懂,请教大家了!
页:
[1]