⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 led.lst

📁 水温控制系统
💻 LST
📖 第 1 页 / 共 2 页
字号:
                     <      	.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
                     <      	//========================================================================================
                            	.EXTERNAL  _guiLED_Value;
0000031B                    	.RAM
                            	.PUBLIC LED_No
0000031B 00 00              	.VAR  LED_No = 0;
                            	
00000000                    	.IRAM
0000ACFE                    	.DATA
0000ACFE 3F 00 06 00        	    C_Address: .DW 0x003f,0x0006,0x005b,0x004f, 0x0066,0x006d,0x007c,0x0007,0x007f,0x006f;//'0''1''2''3''4''5''6''7''8''9'的代码
         5B 00 4F 00
         66 00 6D 00
         7C 00 07 00
         7F 00 6F 00
0000AD08 01 00 02 00        	    C_Dig:     .DW 0x0001,0x0002,0x0008,0x1000,0x2000,0x4000;//选中LED管
         08 00 00 10
         00 20 00 40
00009806                    	.CODE
                            	    
                            	//============================================================================================
                            	//函数: F_Show()
                            	//语法:void F_Show(int A,int B)
                            	//描述:点亮LED
                            	//参数:A,LED的位数(C_Dig),B,LED的显示值
                            	//返回:无
                            	//============================================================================================  
                            	.PUBLIC _LED_Show;
                            	.PUBLIC F_LED_Show;
                            	_LED_Show: .PROC
                            	F_LED_Show:
00009806 A8 DA              	    PUSH r1,r5 TO  [sp];  		    //弹出入口参数共两个入口参数
                            	       
                            	L_Loop:       
00009807 15 9B 1B 03        	    bp  = [LED_No] 
00009809 0D 03 56 03        	    r1  = bp + _guiLED_Value;
0000980B C1 92              	    r1 = [r1];
0000980C 0D 05 08 AD        	    r2 =  bp + C_Dig;             //取LED管的片选地址       
0000980E C2 94              	    r2  = [r2]   
0000980F 09 09 FE AC        	    r4 =  r1 + C_Address          //取显示数据的地址 
00009811 C4 98              	    r4 = [r4]
00009812 5C 99              	    R4 = R4 LSL 4;
00009813 5C 99              	    R4 = R4 LSL 4;
00009814 41 4A              	    cmp bp, 1;
00009815 10 5E              	    je  dot;    
                            	 l:  
00009816 11 93 01 70        	    r1 = [P_IOA_Buffer]
00009818 09 B3 FF 00        	    r1 &= 0x00ff
0000981A 04 A3              	    r1 |=  r4   
0000981B 19 D3 01 70        	    [P_IOA_Buffer] = r1;       
                            	    //r1 = [P_IOB_Data]
                            	    //r1 &= 0xfff0
                            	    //r1 |= r2
0000981D 1A D5 05 70        	    [P_IOB_Data] = r2;            //显示数据  
0000981F 41 0A              	    bp = bp + 1
00009820 43 4A              	    cmp bp,3;
00009821 07 5E              	    je l2;
00009822 1D DB 1B 03        	 l1: [LED_No]  = bp
00009824 A8 90              	     POP r1,r5 FROM [sp]
00009825 90 9A              	     RETF;
00009826 0C A9 00 80        	 dot:  r4 |= 0x8000;   
00009828 53 EE              	       jmp l
00009829 40 9A              	 l2:   bp = 0;
0000982A 49 EE              	       jmp l1
                            	.ENDP
                            	
                            	
                            	
0 error(s), 0 warning(s).

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -