📄 system.lst
字号:
<
< //... Define for P_DA_Ctrl ....................
< .DEFINE C_PushPull 0x0000 // b0, (default)
< .DEFINE C_DoubleEnd 0x0001 // b0
< .DEFINE C_DAC_Mode 0x0000 // b1, (default)
< .DEFINE C_PWM_Mode 0x0002 // b1
<
< .DEFINE C_D1_Direct 0x0000 // DAC1 latch
< .DEFINE C_D1_LatchA 0x0008 //
< .DEFINE C_D1_LatchB 0x0010 //
< .DEFINE C_D1_LatchAB 0x0018 //
<
< .DEFINE C_D2_Direct 0x0000 // DAC2 latch
< .DEFINE C_D2_LatchA 0x0020 //
< .DEFINE C_D2_LatchB 0x0040 //
< .DEFINE C_D2_LatchAB 0x00C0 //
<
< //... Define for P_LVD_Ctrl ...................
< .DEFINE C_LVD24V 0x0000 // LVD = 2.4V
< .DEFINE C_LVD28V 0x0001 // LVD = 2.8V
< .DEFINE C_LVD32V 0x0002 // LVD = 3.2V
< .DEFINE C_LVD36V 0x0003 // LVD = 3.6V
<
< //////////////////////////////////////////////////
< // Note: This register will map to the P_INT_Ctrl
< // (0x7010), The SACMvxx.lib use this register to
< // combine with user's interrupt setting
< //////////////////////////////////////////////////
< .EXTERNAL R_InterruptStatus
< //////////////////////////////////////////////////
<
<
< .EXTERNAL F_SP_RampUpDAC1
< .EXTERNAL F_SP_RampDnDAC1
< .EXTERNAL F_SP_RampUpDAC2
< .EXTERNAL F_SP_RampDnDAC2
<
< .EXTERNAL F_SP_InitQueue
< .EXTERNAL F_SP_InitQueue_A2000
< .EXTERNAL F_SP_InitQueue_S480
< .EXTERNAL F_SP_InitQueue_S240
< .EXTERNAL F_SP_InitQueue_MS01
< .EXTERNAL F_SP_InitQueue_DVR
<
< .EXTERNAL F_SP_ReadQueue
< .EXTERNAL F_SP_ReadQueue_A2000
< .EXTERNAL F_SP_ReadQueue_S480
< .EXTERNAL F_SP_ReadQueue_S240
< .EXTERNAL F_SP_ReadQueue_MS01
< .EXTERNAL F_SP_ReadQueue_DVR
<
< .EXTERNAL F_SP_WriteQueue
< .EXTERNAL F_SP_WriteQueue_A2000
< .EXTERNAL F_SP_WriteQueue_S480
< .EXTERNAL F_SP_WriteQueue_S240
< .EXTERNAL F_SP_WriteQueue_MS01
< .EXTERNAL F_SP_WriteQueue_DVR
<
< .EXTERNAL F_SP_TestQueue
< .EXTERNAL F_SP_TestQueue_A2000
< .EXTERNAL F_SP_TestQueue_S480
< .EXTERNAL F_SP_TestQueue_S240
< .EXTERNAL F_SP_TestQueue_MS01
< .EXTERNAL F_SP_TestQueue_DVR
<
< .EXTERNAL F_SP_ReadQueue_NIC // Read queue with no index change
< .EXTERNAL F_SP_ReadQueue_NIC_A2000
< .EXTERNAL F_SP_ReadQueue_NIC_S480
< .EXTERNAL F_SP_ReadQueue_NIC_S240
< .EXTERNAL F_SP_ReadQueue_NIC_MS01
< .EXTERNAL F_SP_ReadQueue_NIC_DVR
<
<
< .EXTERNAL F_SP_SACM_A2000_Init_
< .EXTERNAL F_SP_SACM_S480_Init_
< .EXTERNAL F_SP_SACM_S240_Init_
<
< .EXTERNAL F_SP_SACM_MS01_Init_
< .EXTERNAL F_SP_PlayMode0_
< .EXTERNAL F_SP_PlayMode1_
< .EXTERNAL F_SP_PlayMode2_
< .EXTERNAL F_SP_PlayMode3_
<
< .EXTERNAL F_SP_SACM_DVR_Init_
< .EXTERNAL F_SP_SACM_DVR_Rec_Init_
< .EXTERNAL F_SP_SACM_DVR_Play_Init_
<
< .EXTERNAL F_SP_GetResource
<
< //////////////////////////////////////////////////////////////////
< // Reserve old defintion
< // Note: Some user who use old library may use the old name
< //////////////////////////////////////////////////////////////////
< .EXTERNAL F_SP_Send_PWM // Get RAW data
< .EXTERNAL F_SP_Send_DAC1 //
< .EXTERNAL F_SP_Send_DAC2 //
<
< .EXTERNAL F_STD_Send_DAC1 // reserved old
< .EXTERNAL F_STD_Send_DAC2 // reserved old
<
< .EXTERNAL F_RampUpDAC1 // reserved old
< .EXTERNAL F_RampDnDAC1 // reserved old
< .EXTERNAL F_RampUpDAC2 // reserved old
< .EXTERNAL F_RampDnDAC2 // reserved old
< ///////////////////////////////////////////////////////////////////
<
<
<
< //========================================================================================
< // End of hardware.inc
< //========================================================================================
0000B866 .code
.public _Delay
_Delay: .proc //传入参数为1,延时2.5ms
0000B866 A8 DA push r1,r5 to [sp] //延时时间T = 2.5ms*n
0000B867 08 0B 03 00 bp = sp+3
L_Loop1:
0000B869 01 95 r2 = r1
0000B86A 41 96 r3 = 1
0000B86B 0C 99 12 70 r4 = 0x7012
0000B86D C4 D6 [r4] = r3
0000B86E 40 F0 76 B8 call _ClearWatchdog
L_Loop2:
0000B870 41 24 r2 -= 1
0000B871 42 4E jnz L_Loop2
0000B872 41 22 r1 -= 1
0000B873 4B 4E jnz L_Loop1
0000B874 A8 90 pop r1,r5 from [sp]
0000B875 90 9A retf
.endp
.public _ClearWatchdog
_ClearWatchdog:.proc
0000B876 88 D2 push r1 to [sp]
0000B877 41 92 r1 = 0x0001
0000B878 19 D3 12 70 [0x7012] = r1
0000B87A 88 90 pop r1 from [sp]
0000B87B 90 9A retf
.endp
0 error(s), 0 warning(s).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -