AddressByte=(((dword)CAN4RXDSR_ADR[0]<<16)|
(dword)(CAN4RXDSR_ADR[1]<<8)|
(dword)CAN4RXDSR_ADR[2]); //改为两次运算,直接这样用BDM得错误地址
但分开再做是好的,哪位老兄知道为什么? AddressByte=((dword)CAN4RXDSR_ADR[0]<<8)|((dword)CAN4RXDSR_ADR[1]); AddressByte=(AddressByte<<8)|((dword)CAN4RXDSR_ADR[2]); |