📄 sys.lst
字号:
000094C6 09 93 FB FF R1=0xFFFB
000094C8 19 D3 08 70 [P_IOB_Attrib] = R1;
000094CA 19 D3 05 70 [P_IOB_Data] = R1; //下拉输入
000094CC 44 92 R1=0x0004
000094CD 19 D3 09 70 [P_FeedBack]=r1
000094CF 90 9A retf;
//*********************************************************//
//函数:System_ServiceLoop()
//描述:键盘去抖和键盘扫描
//参数:无
//返回:无
//*********************************************************//
.public _System_ServiceLoop;
_System_ServiceLoop: .PROC
000094D0 40 F0 F8 95 call F_Key_DebounceCnt_Down; //键盘去抖
000094D2 40 F0 D5 95 call F_Key_Scan_ServiceLoop; //键盘扫描
000094D4 41 92 R1=0x0001; //
000094D5 19 D3 12 70 [P_Watchdog_Clear]=R1; //
000094D7 90 9A retf;
.ENDP;
//*********************************************************//
//函数:Clear_WatchDog()
//描述:看门狗清0
//参数:无
//返回:无
//*********************************************************//
.public _Clear_WatchDog;
_Clear_WatchDog: .PROC
000094D8 41 92 R1=0x0001;
000094D9 19 D3 12 70 [P_Watchdog_Clear]=R1;
000094DB 90 9A retf;
.ENDP
//=========================================//
//函数名称:中断设置
//========================================//
.public _RunTime2Hz;
_RunTime2Hz: .proc
000094DC 48 F1 irq off
000094DD 44 92 r1 = 0x0004;
000094DE 19 D3 10 70 [P_INT_Ctrl] = r1;
000094E0 41 F1 INT IRQ; //开中断
000094E1 90 9A retf
.endp;
.public _SP_INT_32Hz
_SP_INT_32Hz: .proc
000094E2 48 F1 irq off
000094E3 42 92 R1 = 0x0002;
000094E4 19 D3 0E 70 [P_TimeBase_Setup]=r1
//r1 = [P_INT_Ctrl]
000094E6 42 92 r1 = 0x0002 //开中断IRQ6_TMB1和IRQ6_TMB2
000094E7 19 D3 10 70 [P_INT_Ctrl]= r1
000094E9 49 F1 irq on
000094EA 90 9A retf;
.endp;
.public _Turnoff_INT_32Hz
_Turnoff_INT_32Hz: .proc
000094EB 48 F1 irq off
000094EC 11 93 10 70 r1 = [P_INT_Ctrl]
000094EE 09 B3 FD FF r1 &= 0xfffd;
000094F0 19 D3 10 70 [P_INT_Ctrl] = r1;
000094F2 49 F1 irq on
000094F3 90 9A retf;
.endp;
.public _OffTime2Hz
_OffTime2Hz: .proc
000094F4 11 93 10 70 r1 = [P_INT_Ctrl]
000094F6 09 B3 FB FF r1 &= 0xfffb;
000094F8 19 D3 10 70 [P_INT_Ctrl] = r1;
000094FA 40 92 r1 = 0x0000
000094FB 19 D3 EF 01 [_g_uisum] = r1;
000094FD 90 9A retf;
.endp;
//***************R/C/L通道选择及二极管点亮******************//
.PUBLIC _Rline_on
_Rline_on: .PROC
000094FE 11 93 00 70 R1=[P_IOA_Data]
//选择通道y0,亮红灯
00009500 09 B3 E7 FF R1&=0xFFE7
00009502 09 A3 00 40 R1|=0x4000
00009504 19 D3 00 70 [P_IOA_Data]=r1
00009506 90 9A retf;
.ENDP
.PUBLIC _Cline_on
_Cline_on: .PROC
00009507 11 93 00 70 R1=[P_IOA_Data]
//选择通道y1,亮绿黄灯
00009509 09 B3 EF FF R1&=0xFFEF
0000950B 09 A3 00 20 R1|=0x2000
0000950D 19 D3 00 70 [P_IOA_Data]=r1
0000950F 90 9A retf;
.ENDP
.PUBLIC _Lline_on
_Lline_on: .PROC
00009510 11 93 00 70 R1=[P_IOA_Data]
//选择通道y2,亮绿灯
00009512 09 B3 F7 FF R1&=0xFFF7
00009514 09 A3 00 10 R1|=0x1000
00009516 19 D3 00 70 [P_IOA_Data]=r1
00009518 90 9A retf;
.ENDP
//************************************************//
//***************R/C换档***************************//
.PUBLIC _R_Above1K
_R_Above1K: .PROC
00009519 11 93 00 70 R1=[P_IOA_Data]
//IOA5=0,IOA8=0,IOA6=1,IOA7=1
0000951B 09 B3 DF FE R1&=0xFEDF
0000951D 09 A3 C0 40 R1|=0x40C0
0000951F 19 D3 00 70 [P_IOA_Data]=r1
00009521 90 9A retf;
.ENDP
.PUBLIC _C_Below1K
_C_Below1K: .PROC
00009522 11 93 00 70 R1=[P_IOA_Data]
//IOA9=0,IOA10=1
00009524 09 B3 FF FD R1&=0xFDFF
00009526 09 A3 00 04 R1|=0x0400
00009528 19 D3 00 70 [P_IOA_Data]=r1
0000952A 90 9A retf;
.ENDP
//***********************************************//
.PUBLIC _TmbCount
_TmbCount: .PROC
0000952B 40 92 R1=0x0000
0000952C 19 D3 0C 70 [P_TimerB_Data]=R1;//开始计数
0000952E 47 92 r1 =0x0007 //设置外部时钟源
0000952F 19 D3 0D 70 [P_TimerB_Ctrl]=r1
00009531 90 9A retf;
.ENDP
.PUBLIC _F_Show;
_F_Show: .PROC
00009532 88 DA PUSH BP TO [SP]; //弹出入口参数共两个入口参数
00009533 08 0B 01 00 BP = SP + 1
00009535 03 92 R1 = [BP+3] //取出第一个入口参数
00009536 04 96 R3 = [BP+4] //取出第二个入口参数
00009537 09 05 B5 B6 R2 = R1 + C_Dig; //取LED管的片选地址
00009539 C2 94 R2 = [R2]
0000953A 0B 09 AB B6 R4 = R3 + C_Address //取显示数据的地址
0000953C C4 98 R4 = [R4]
0000953D 04 A5 R2 |= R4
0000953E 11 93 06 70 r1=[P_IOB_Buffer]
00009540 57 B2 r1 &= 0x0017;
00009541 01 A5 r2 |= r1;
00009542 1A D5 05 70 [P_IOB_Data] = R2; //
00009544 88 98 POP BP FROM [SP]
00009545 90 9A RETF;
.ENDP
0 error(s), 0 warning(s).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -