wangmumu
普通会员
积分:21 |
为什么在用CAN发数据的时候 老是55 和 AA 来回循环呢 unsigned char CanDataBuffer[9]={0X08,0x40,0xc0,0x01,0x02,0x03,0x04,0x05,0x06}; for (i = 1; i <= CanDataBuffer[0]; i++) { DLCR0(buffer6) = 1; DTR0_WORD(buffer6,0) = CanDataBuffer; /* <<< 1st data-word to send */ /////////////////////////////////////////////////////////////////////////////////////////
//这里DTR0[6]里就老是0x55和0xAA来回循环///////////
///////////////////////////////////////////////////////////////////////////////////////// TREQR0 = 1 << buffer6; /* transmition request: TREQ6 = 1 */ timeout = 0; while ( TREQR0_TREQ6 /* <<< wait until trx is completed */ && ! CSR0_HALT /* or busoff */ && (timeout++ < TIMEOUT) ); /* or timeout */ LVRC = 0x35; if (timeout == TIMEOUT) /* if timeout... */ TCANR0 = 1 << buffer6; /* ... then cancel Transmit */ PDR6= CanDataBuffer & 0X40; /* Place Byte to UserLEDs */ LVRC = 0x35; }
|