版主帮我看看这段程序,把MSCAN08中接收到的数据放到DATA中,接收32个数据 其中第一个数据RXIDR0为00,第二个RXIDR0为$08,第三个RXIDR0为$10,第四个RXIDR0为$18。下面是程序,怎么DATA中的数据不是接收到的数据。
DATA EQU $004C RXIDR0 EQU $0540 RXIDR1 EQU $0541 RXIDR2 EQU $0542 RXIDR3 EQU $0543 RXDSR0 EQU $0544 RXDSR1 EQU $0545 RXDSR2 EQU $0546 RXDSR3 EQU $0547 RXDSR4 EQU $0548 RXDSR5 EQU $0549 RXDSR6 EQU $054A RXDSR7 EQU $054B RXDLR EQU $054C
LoadBuffer: LDA RXIDR0 LDX RXDLR Data_Load: LDA RXDSR0,X ; (RXDSR0+X) --> A PSHX PSHA LDA RXIDR0 ; RXIDR0 --> A ADD ,X ; A+X --> A TAX ; X = A = RXIDR0 + X PULA STA DATA,X ; A --> (DATA+X) PULX DBNZX Data_Load |