📄 spi.asm
字号:
.sym _CMPR6,_CMPR6,30,2,16
.globl _CMPR6
.word 1,_CAPCONB
.word 29984
.sym _CAPCONB,_CAPCONB,30,2,16
.globl _CAPCONB
.word 1,_CAPFIFOB
.word 29986
.sym _CAPFIFOB,_CAPFIFOB,30,2,16
.globl _CAPFIFOB
.word 1,_CAP4FIFO
.word 29987
.sym _CAP4FIFO,_CAP4FIFO,30,2,16
.globl _CAP4FIFO
.word 1,_CAP5FIFO
.word 29988
.sym _CAP5FIFO,_CAP5FIFO,30,2,16
.globl _CAP5FIFO
.word 1,_CAP6FIFO
.word 29989
.sym _CAP6FIFO,_CAP6FIFO,30,2,16
.globl _CAP6FIFO
.word 1,_CAP4FBOT
.word 29991
.sym _CAP4FBOT,_CAP4FBOT,30,2,16
.globl _CAP4FBOT
.word 1,_CAP5FBOT
.word 29992
.sym _CAP5FBOT,_CAP5FBOT,30,2,16
.globl _CAP5FBOT
.word 1,_CAP6FBOT
.word 29993
.sym _CAP6FBOT,_CAP6FBOT,30,2,16
.globl _CAP6FBOT
.word 1,_EVBIMRA
.word 29996
.sym _EVBIMRA,_EVBIMRA,30,2,16
.globl _EVBIMRA
.word 1,_EVBIMRB
.word 29997
.sym _EVBIMRB,_EVBIMRB,30,2,16
.globl _EVBIMRB
.word 1,_EVBIMRC
.word 29998
.sym _EVBIMRC,_EVBIMRC,30,2,16
.globl _EVBIMRC
.word 1,_EVBIFRA
.word 29999
.sym _EVBIFRA,_EVBIFRA,30,2,16
.globl _EVBIFRA
.word 1,_EVBIFRB
.word 30000
.sym _EVBIFRB,_EVBIFRB,30,2,16
.globl _EVBIFRB
.word 1,_EVBIFRC
.word 30001
.sym _EVBIFRC,_EVBIFRC,30,2,16
.globl _EVBIFRC
.word 1,_CANMDER
.word 28928
.sym _CANMDER,_CANMDER,30,2,16
.globl _CANMDER
.word 1,_CANTCR
.word 28929
.sym _CANTCR,_CANTCR,30,2,16
.globl _CANTCR
.word 1,_CANRCR
.word 28930
.sym _CANRCR,_CANRCR,30,2,16
.globl _CANRCR
.word 1,_CANMCR
.word 28931
.sym _CANMCR,_CANMCR,30,2,16
.globl _CANMCR
.word 1,_CANBCR2
.word 28932
.sym _CANBCR2,_CANBCR2,30,2,16
.globl _CANBCR2
.word 1,_CANBCR1
.word 28933
.sym _CANBCR1,_CANBCR1,30,2,16
.globl _CANBCR1
.word 1,_CANESR
.word 28934
.sym _CANESR,_CANESR,30,2,16
.globl _CANESR
.word 1,_CANGSR
.word 28935
.sym _CANGSR,_CANGSR,30,2,16
.globl _CANGSR
.word 1,_CANCEC
.word 28936
.sym _CANCEC,_CANCEC,30,2,16
.globl _CANCEC
.word 1,_CANIFR
.word 28937
.sym _CANIFR,_CANIFR,30,2,16
.globl _CANIFR
.word 1,_CANIMR
.word 28938
.sym _CANIMR,_CANIMR,30,2,16
.globl _CANIMR
.word 1,_CANLAM0H
.word 28939
.sym _CANLAM0H,_CANLAM0H,30,2,16
.globl _CANLAM0H
.word 1,_CANLAM0L
.word 28940
.sym _CANLAM0L,_CANLAM0L,30,2,16
.globl _CANLAM0L
.word 1,_CANLAM1H
.word 28941
.sym _CANLAM1H,_CANLAM1H,30,2,16
.globl _CANLAM1H
.word 1,_CANLAM1L
.word 28942
.sym _CANLAM1L,_CANLAM1L,30,2,16
.globl _CANLAM1L
.word 1,_CANMSGID0L
.word 29184
.sym _CANMSGID0L,_CANMSGID0L,30,2,16
.globl _CANMSGID0L
.word 1,_CANMSGID0H
.word 29185
.sym _CANMSGID0H,_CANMSGID0H,30,2,16
.globl _CANMSGID0H
.word 1,_CANMSGCTRL0
.word 29186
.sym _CANMSGCTRL0,_CANMSGCTRL0,30,2,16
.globl _CANMSGCTRL0
.word 1,_CANMBX0A
.word 29188
.sym _CANMBX0A,_CANMBX0A,30,2,16
.globl _CANMBX0A
.word 1,_CANMBX0B
.word 29189
.sym _CANMBX0B,_CANMBX0B,30,2,16
.globl _CANMBX0B
.word 1,_CANMBX0C
.word 29190
.sym _CANMBX0C,_CANMBX0C,30,2,16
.globl _CANMBX0C
.word 1,_CANMBX0D
.word 29191
.sym _CANMBX0D,_CANMBX0D,30,2,16
.globl _CANMBX0D
.word 1,_CANMSGID1L
.word 29192
.sym _CANMSGID1L,_CANMSGID1L,30,2,16
.globl _CANMSGID1L
.word 1,_CANMSGID1H
.word 29193
.sym _CANMSGID1H,_CANMSGID1H,30,2,16
.globl _CANMSGID1H
.word 1,_CANMSGCTRL1
.word 29194
.sym _CANMSGCTRL1,_CANMSGCTRL1,30,2,16
.globl _CANMSGCTRL1
.word 1,_CANMBX1A
.word 29196
.sym _CANMBX1A,_CANMBX1A,30,2,16
.globl _CANMBX1A
.word 1,_CANMBX1B
.word 29197
.sym _CANMBX1B,_CANMBX1B,30,2,16
.globl _CANMBX1B
.word 1,_CANMBX1C
.word 29198
.sym _CANMBX1C,_CANMBX1C,30,2,16
.globl _CANMBX1C
.word 1,_CANMBX1D
.word 29199
.sym _CANMBX1D,_CANMBX1D,30,2,16
.globl _CANMBX1D
.word 1,_CANMSGID2L
.word 29200
.sym _CANMSGID2L,_CANMSGID2L,30,2,16
.globl _CANMSGID2L
.word 1,_CANMSGID2H
.word 29201
.sym _CANMSGID2H,_CANMSGID2H,30,2,16
.globl _CANMSGID2H
.word 1,_CANMSGCTRL2
.word 29202
.sym _CANMSGCTRL2,_CANMSGCTRL2,30,2,16
.globl _CANMSGCTRL2
.word 1,_CANMBX2A
.word 29204
.sym _CANMBX2A,_CANMBX2A,30,2,16
.globl _CANMBX2A
.word 1,_CANMBX2B
.word 29205
.sym _CANMBX2B,_CANMBX2B,30,2,16
.globl _CANMBX2B
.word 1,_CANMBX2C
.word 29206
.sym _CANMBX2C,_CANMBX2C,30,2,16
.globl _CANMBX2C
.word 1,_CANMBX2D
.word 29207
.sym _CANMBX2D,_CANMBX2D,30,2,16
.globl _CANMBX2D
.word 1,_CANMSGID3L
.word 29208
.sym _CANMSGID3L,_CANMSGID3L,30,2,16
.globl _CANMSGID3L
.word 1,_CANMSGID3H
.word 29209
.sym _CANMSGID3H,_CANMSGID3H,30,2,16
.globl _CANMSGID3H
.word 1,_CANMSGCTRL3
.word 29210
.sym _CANMSGCTRL3,_CANMSGCTRL3,30,2,16
.globl _CANMSGCTRL3
.word 1,_CANMBX3A
.word 29212
.sym _CANMBX3A,_CANMBX3A,30,2,16
.globl _CANMBX3A
.word 1,_CANMBX3B
.word 29213
.sym _CANMBX3B,_CANMBX3B,30,2,16
.globl _CANMBX3B
.word 1,_CANMBX3C
.word 29214
.sym _CANMBX3C,_CANMBX3C,30,2,16
.globl _CANMBX3C
.word 1,_CANMBX3D
.word 29215
.sym _CANMBX3D,_CANMBX3D,30,2,16
.globl _CANMBX3D
.word 1,_CANMSGID4L
.word 29216
.sym _CANMSGID4L,_CANMSGID4L,30,2,16
.globl _CANMSGID4L
.word 1,_CANMSGID4H
.word 29217
.sym _CANMSGID4H,_CANMSGID4H,30,2,16
.globl _CANMSGID4H
.word 1,_CANMSGCTRL4
.word 29218
.sym _CANMSGCTRL4,_CANMSGCTRL4,30,2,16
.globl _CANMSGCTRL4
.word 1,_CANMBX4A
.word 29220
.sym _CANMBX4A,_CANMBX4A,30,2,16
.globl _CANMBX4A
.word 1,_CANMBX4B
.word 29221
.sym _CANMBX4B,_CANMBX4B,30,2,16
.globl _CANMBX4B
.word 1,_CANMBX4C
.word 29222
.sym _CANMBX4C,_CANMBX4C,30,2,16
.globl _CANMBX4C
.word 1,_CANMBX4D
.word 29223
.sym _CANMBX4D,_CANMBX4D,30,2,16
.globl _CANMBX4D
.word 1,_CANMSGID5L
.word 29224
.sym _CANMSGID5L,_CANMSGID5L,30,2,16
.globl _CANMSGID5L
.word 1,_CANMSGID5H
.word 29225
.sym _CANMSGID5H,_CANMSGID5H,30,2,16
.globl _CANMSGID5H
.word 1,_CANMSGCTRL5
.word 29226
.sym _CANMSGCTRL5,_CANMSGCTRL5,30,2,16
.globl _CANMSGCTRL5
.word 1,_CANMBX5A
.word 29228
.sym _CANMBX5A,_CANMBX5A,30,2,16
.globl _CANMBX5A
.word 1,_CANMBX5B
.word 29229
.sym _CANMBX5B,_CANMBX5B,30,2,16
.globl _CANMBX5B
.word 1,_CANMBX5C
.word 29230
.sym _CANMBX5C,_CANMBX5C,30,2,16
.globl _CANMBX5C
.word 1,_CANMBX5D
.word 29231
.sym _CANMBX5D,_CANMBX5D,30,2,16
.globl _CANMBX5D
.globl _port0003
.globl _portFFFF
.globl _portFF0F
.file "SPI.h"
.globl _main
.globl _SystemInit
.globl _SpiInit
.globl _SpiTxReady
.globl _SpiRxReady
.file "spi.c"
.word 1,_t_data
.word 85
.sym _t_data,_t_data,12,2,16
.globl _t_data
.globl _r_data
.globl _read_byte
.globl _write_byte
.text
.sym _main,_main,32,2,0
.globl _main
.func 12
******************************************************
* FUNCTION DEF : _main
******************************************************
_main:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+,AR2
.sym _i,1,14,1,16
.line 3
LACK 0
LARK AR2,1
MAR *0+
SACL *
.line 5
SETC INTM
.line 6
CALL _SystemInit,AR1
.line 7
CALL _SpiInit
L1:
.line 15
CALL _SpiRxReady,AR1
SUBK 1
BZ L3
MAR * ,AR0
L2:
.line 17
LACK 15
SACL *
OUT * ,03h,AR1
.line 18
LACK 17
SACL *+
CALL _read_byte
MAR *-
LDPK _r_data
SACL _r_data
.line 15
CALL _SpiRxReady
SUBK 1
MAR * ,AR0
BNZ L2
L3:
.line 21
CALL _SpiTxReady,AR1
SUBK 1
BZ L5
MAR * ,AR0
L4:
.line 23
LACK 0
SACL *
OUT * ,03h,AR1
.line 24
BLKD _t_data+0,*+
LACK 17
SACL *+
CALL _write_byte
SBRK 2
.line 21
CALL _SpiTxReady
SUBK 1
MAR * ,AR0
BNZ L4
L5:
.line 26
MAR * ,AR1
B L1
.endfunc 38,000000000H,2
.sym _SystemInit,_SystemInit,32,2,0
.globl _SystemInit
.func 40
******************************************************
* FUNCTION DEF : _SystemInit
******************************************************
_SystemInit:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR0
.line 3
LACK 0
SACL *
OUT * ,0ffffh,AR3
.line 4
LDPK _WDCR
LAR AR3,_WDCR
LACK 104
SACL * ,AR4
.line 5
LAR AR4,_SCSR1
LACK 32
SACL * ,AR1
EPI0_2:
.line 6
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 45,000000000H,1
.sym _SpiInit,_SpiInit,32,2,0
.globl _SpiInit
.func 47
******************************************************
* FUNCTION DEF : _SpiInit
******************************************************
_SpiInit:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR3
.line 3
LDPK _MCRB
LAR AR3,_MCRB
LACK 60
SACL * ,AR4
.line 5
LAR AR4,_SPICCR
LACK 7
SACL * ,AR5
.line 6
LAR AR5,_SPICTL
LACK 31
SACL *
.line 7
LAR AR5,_SPIBRR
LACK 79
SACL *
.line 8
LAR AR5,_SPIPRI
LACK 64
SACL * ,AR4
.line 9
LACK 135
SACL * ,AR1
EPI0_3:
.line 10
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 56,000000000H,1
.sym _read_byte,_read_byte,44,2,0
.globl _read_byte
.func 59
******************************************************
* FUNCTION DEF : _read_byte
******************************************************
_read_byte:
LF4 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+,AR3
.sym _addr,-3+LF4,14,9,16
.sym _data,1,12,1,16
.line 2
.line 5
LDPK _SPITXBUF
LAR AR3,_SPITXBUF
SPLK #768,* ,AR2
.line 6
LACK 65280
LARK AR2,-3+LF4
MAR *0+
AND * ,AR3
SACL * ,AR2
.line 7
LAC * ,8,AR3
ANDK 65280
SACL * ,AR4
.line 9
LAR AR4,_SPIRXBUF
LAC * ,AR2
ADRK 4-LF4
SACL *
.line 11
ZALS *
EPI0_4:
.line 12
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 70,000000000H,2
.sym _write_byte,_write_byte,32,2,0
.globl _write_byte
.func 74
******************************************************
* FUNCTION DEF : _write_byte
******************************************************
_write_byte:
LF5 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR3
.sym _addr,-3+LF5,14,9,16
.sym _value,-4+LF5,12,9,16
.line 2
.line 3
LDPK _SPITXBUF
LAR AR3,_SPITXBUF
SPLK #512,* ,AR2
.line 4
LACK 65280
LARK AR2,-3+LF5
MAR *0+
AND * ,AR3
SACL * ,AR2
.line 5
LAC *-,8,AR3
ANDK 65280
SACL * ,AR2
.line 6
LAC * ,AR3
SACL * ,AR1
EPI0_5:
.line 7
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 80,000000000H,1
.sym _SpiTxReady,_SpiTxReady,46,2,0
.globl _SpiTxReady
.func 82
******************************************************
* FUNCTION DEF : _SpiTxReady
******************************************************
_SpiTxReady:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR3
.line 3
LDPK _SPISTS
LAR AR3,_SPISTS
LACK 32
AND *
SUBK 32
BNZ L6
.line 5
LACK 0
B EPI0_6
L6:
.line 9
LACK 1
EPI0_6:
.line 11
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 92,000000000H,1
.sym _SpiRxReady,_SpiRxReady,46,2,0
.globl _SpiRxReady
.func 94
******************************************************
* FUNCTION DEF : _SpiRxReady
******************************************************
_SpiRxReady:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+,AR3
.line 3
LDPK _SPISTS
LAR AR3,_SPISTS
LACK 64
AND *
SUBK 64
BNZ L7
.line 5
LACK 1
B EPI0_7
L7:
.line 9
LACK 0
EPI0_7:
.line 11
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 104,000000000H,1
.sym _PHANTOM,_PHANTOM,32,2,0
.globl _PHANTOM
.func 106
******************************************************
* FUNCTION DEF : _PHANTOM
******************************************************
_PHANTOM:
CALL I$$SAVE
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
EPI0_8:
.line 4
SBRK 1
B I$$REST,AR1 ;and return
.endfunc 109,000000000H,1
.sym _c_int1,_c_int1,32,2,0
.globl _c_int1
.func 111
******************************************************
* FUNCTION DEF : _c_int1
******************************************************
_c_int1:
CALL I$$SAVE
SAR AR1,*
LARK AR0,2
LAR AR0,*0+,AR3
.sym _k,1,14,1,16
.line 4
LDPK _PIVR
LAR AR3,_PIVR
LACK 5
AND *
SUBK 5
.line 8
LAR AR4,_IFR
LACK 1
MAR * ,AR4
SACL *
.line 9
CLRC INTM
EPI0_9:
.line 10
MAR * ,AR1
SBRK 2
B I$$REST,AR1 ;and return
.endfunc 120,000000000H,2
.sym _r_data,_r_data,12,2,16
.globl _r_data
*****************************************************
* UNDEFINED REFERENCES *
*****************************************************
.global I$$SAVE
.global I$$REST
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -