📄 single.lst
字号:
< .DEFINE C_StrongMode 0x0000; // b5
< .DEFINE C_AutoMode 0x0000; //
<
< //... Define for P_AD_Ctrl ....................
< .DEFINE C_AD 0x0001; //
< .DEFINE C_DA 0x0000; //
< .DEFINE C_MIC 0x0000; //
< .DEFINE C_LINE 0x0002; //
<
< //... 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
<
<
< .EXTERNAL F_SP_Read_INT_Status; // for further use
< .EXTERNAL F_SP_Write_INT_Status; // for further use
< .EXTERNAL F_SP_Set_INT_Vector; // for further use
< .EXTERNAL F_SP_Clear_INT_Vector; // for further use
<
< .EXTERNAL F_SP_Send_Out; //
< .EXTERNAL F_SP_Send_DAC1; //
< .EXTERNAL F_SP_Send_DAC2; //
< .EXTERNAL F_SP_Send_Two_DAC; //
< .EXTERNAL F_SP_Init_HW; //
<
< .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_ReadQueue;
< .EXTERNAL F_SP_WriteQueue;
< .EXTERNAL F_SP_TestQueue;
<
<
<
< .EXTERNAL F_SP_Get_ADC
<
< .EXTERNAL F_SP_Set_P_TimerA_Ctrl
< .EXTERNAL F_SP_Set_P_TimerA_Data
< .EXTERNAL F_SP_Set_P_TimerB_Ctrl
< .EXTERNAL F_SP_Set_P_TimerB_Data
< .EXTERNAL F_SP_Set_P_INT_Ctrl
< .EXTERNAL F_SP_Set_P_INT_Clear
< .EXTERNAL F_SP_Set_P_SystemClock
< .EXTERNAL F_SP_Set_P_DAC_Ctrl
< .EXTERNAL F_SP_Set_P_ADC_Ctrl
<
<
<
< //--------------------------------------------
< SACM_MACRO1: .MACRO
<
< .ENDM
<
< SACM_MACRO2: .MACRO
<
< .ENDM
<
<
<
<
< //.define PC_Play_Enable_A2000 1 // Enable the PC-Play function for SACM-A2000 module
< //.define PC_Play_Enable_S480 1 // Enable the PC-Play function for SACM-S480 module
< //.define PC_Play_Enable_S240 1 // Enable the PC-Play function for SACM-S240 module
< //.define PC_Play_Enable_MS01 1 // Enable the PC-Play function for SACM-MS01 module
<
<
<
< //========================================================================================
< // End of hardware.inc
< //========================================================================================
0000B109 .data
0000B109 BF 00 86 00 address: .dw 0x00bf,0x0086,0x00db,0x00cf, 0x00e6,0x00ed,0x00fc,0x0087,0x00ff,0x00ef;//'0''1''2''3''4''5''6''7''8''9'的代码
DB 00 CF 00
E6 00 ED 00
FC 00 87 00
FF 00 EF 00
0000B113 00 02 00 04 Dig: .dw 0x0200,0x0400,0x1000,0x2000,0x4000,0x8000;
00 10 00 20
00 40 00 80
.public _singleled
_singleled:
0000B119 88 DA push bp to [sp];
0000B11A 08 0B 01 00 bp = sp + 1
loop:
0000B11C 03 92 r1 = [bp+3]
0000B11D 04 96 r3 = [bp+4]
0000B11E 09 05 13 B1 r2 = r1 + Dig;
0000B120 C2 94 r2 = [r2]
0000B121 0B 09 09 B1 r4 = r3 + address
0000B123 C4 98 r4 = [r4]
0000B124 5C 99 r4 = r4 lsl 4;
0000B125 5C 99 r4 = r4 lsl 4;
0000B126 09 93 FF FF r1=0xffff;
0000B128 19 D3 03 70 [P_IOA_Attrib]=r1;
0000B12A 19 D3 02 70 [P_IOA_Dir]=r1;
0000B12C 19 D3 00 70 [P_IOA_Data]=r1
0000B12E 1C D9 00 70 [P_IOA_Data] = r4;
0000B130 09 93 FF FF r1=0xffff;
0000B132 19 D3 08 70 [P_IOB_Attrib]=r1;
0000B134 19 D3 07 70 [P_IOB_Dir]=r1;
0000B136 1A D5 05 70 [P_IOB_Data]=r2;
0000B138 1A D5 05 70 [P_IOB_Data] = r2;
0000B13A 88 98 pop bp from [sp]
0000B13B 90 9A retf;
.end
0 error(s), 0 warning(s).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -