版主帮我看看这段程序,把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
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |