📄 max7219led.asm
字号:
;*********************************************************************
;用户寄存器定义
;*********************************************************************
SPI_DATA .usect ".data0",1
SPI_CON .usect ".data0",1
DP_USER .set 4
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Global symbol declarations
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.def _7219start
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Address definitions
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.include f2407.h
.include max7219led.h
;.include max7219ledbek.h
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Setup the software stack
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stk_len .set 100 ;stack length
stk .usect "stack",stk_len ;reserve space for stack
;*********************************************************************
; M A I N R O U T I N E *
;*********************************************************************
.text
_7219start:
; POPD *+
; SAR AR0,*+
; SAR AR6,*+
; SAR AR7,*+
; SAR AR1,*
; LAR AR0,#03H
; LAR AR0,*0+
LAR AR1, #stk ;AR1 is the stack pointer
CALL SYSTEM_INIT
CALL IO_INIT
CALL SPI_INIT
SETC XF
LDP #DP_USER
SPLK #SHUT_DOWN_ON,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #SCAN_LIMIT_3,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #INTENSITY_CTRL_F,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
;SPLK #CODE_0_7,SPI_CON
SPLK #NO_CODE_DIG0_7,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #DISPLAY_TEST_ON,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #DISPLAY_TEST_OFF,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #LED_0_NOCODE_BLANK,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #LED_1_NOCODE_BLANK,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #LED_2_NOCODE_BLANK,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #LED_3_NOCODE_BLANK,SPI_CON
CALL SEND_LED_CTRL
LOOP_AK: CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_0,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_1,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_2,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_3,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_4,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_5,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_6,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_7,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_8,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_9,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_A,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_C,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_E,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_F,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_H,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_L,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_P,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_0_NOCODE_Q,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
;**********************************************************
LDP #DP_USER
SPLK #LED_0_NOCODE_BLANK,SPI_CON
CALL SEND_LED_CTRL
LDP #DP_USER
SPLK #LED_1_NOCODE_0,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_1,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_2,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_3,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_4,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_5,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_6,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_7,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_8,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_9,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_A,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_C,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_E,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
LDP #DP_USER
SPLK #LED_1_NOCODE_F,SPI_CON
CALL SEND_LED_CTRL
CALL DELAY_LONG
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -