各位大牛,刚刚接触USB,在ezdsp5535开发板上运行c55_csl_304\ccs_v50_examples\usb\CSL_USB_DmaExample的工程,已经跑通了工程本来的功能,现在想改一下DMA TX发送的内容,改动如下,运行结果是上位机USB bulk IN的时候读到的是8B的0x00,当bulk in 的长度改为512B时也只显示8B的0x00。在发送函数前加断点,观察到寄存器内容为 PEND1=0x100,请问各位大牛有可能是什么原因?
//自定义一个512B的缓冲区test
#pragma DATA_SECTION(usbDataBuffer4, ".buffer3")
Uint16 test[CSL_USB_DATA_SIZE] = {0x060A, 0x0200, 0x0000, 0x4000};
Uint16 *testPtr;
testPtr = (Uint16 *)test;
//把DMA_TX函数的参数指向自定义缓冲区
//USB_confDmaTx(CSL_USB_EP1, &hpdtx, usb_income_num_bytes_ep1, usbDataBuffer1, FALSE);
USB_confDmaTx(CSL_USB_EP1, &hpdtx, 8, testPtr, FALSE);
user1700256:
回复 Shine:
非常感谢,我果然犯了一个低级错误
TI中文支持网

