你們給了我一個(gè)例程做實(shí)驗(yàn),在編譯過程中發(fā)現(xiàn)頭文件里缺少了2個(gè)命令的定義: "CH375EX.C", line 178: error: identifier "CMD_RD_USB_Edata" is undefined "CH375EX.C", line 192: error: identifier "CMD_WR_USB_Edata7" is undefined
不知道你的程序在哪里出現(xiàn)這個(gè)變量?因?yàn)槲铱戳私o你發(fā)的郵件中的源代碼,并沒有找到使用這兩個(gè)命令定義.而且,頭文件中是沒有這兩個(gè)命令.正確的命令代碼:CMD_WR_USB_DATA7,CMD_RD_USB_DATA,你可以將這兩個(gè)命令代碼修改下.
以下是用到這兩個(gè)指令的函數(shù)。我了解了,多謝 /**********************************************************************************************/ /* 函數(shù)功能:從CH375的數(shù)據(jù)端口讀出數(shù)據(jù)塊 函數(shù)入口:數(shù)據(jù)緩沖區(qū)地址 函數(shù)出口:讀出的數(shù)據(jù)塊的數(shù)據(jù)長(zhǎng)度 */ /**********************************************************************************************/
unsigned int Rd_USB_Edata( unsigned int *buf ) { unsigned int i, len; CH375_WR_CMD( CMD_RD_USB_Edata ); // 從CH375的端點(diǎn)緩沖區(qū)讀取接收到的數(shù)據(jù) len=CH375_RD_DAT(); // 后續(xù)數(shù)據(jù)長(zhǎng)度 for ( i=0; i!=len; i++ ) *buf++=CH375_RD_DAT(); return( len ); } /**********************************************************************************************/ /* 函數(shù)功能:從CH375的數(shù)據(jù)端口寫入數(shù)據(jù)塊 函數(shù)入口:數(shù)據(jù)緩沖區(qū)地址,數(shù)據(jù)長(zhǎng)度 函數(shù)出口:無(wú) */ /**********************************************************************************************/
void Wr_USB_Edata( unsigned int len, unsigned int *buf ) { CH375_WR_CMD( CMD_WR_USB_Edata7 ); // 向CH375的端點(diǎn)緩沖區(qū)寫入準(zhǔn)備發(fā)送的數(shù)據(jù) CH375_WR_DAT( len ); // 后續(xù)數(shù)據(jù)長(zhǎng)度, len不能大于64 while( len-- ) CH375_WR_DAT( *buf++ ); }
CMD_RD_USB_Edata7怎么搞成這個(gè)樣子了.你看一下頭文件中怎么定義的,這個(gè)錯(cuò)誤很明顯. 應(yīng)該是CMD_WR_USB_DATA7,CMD_RD_USB_DATA7
我在源文件了找了找,也沒有。很奇怪,我不記的有修改。很不好意思。呵呵~麻煩了。