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

📄 system.lst

📁 凌阳单片机的自检程序 包括io检测ad检测睡眠检测等
💻 LST
📖 第 1 页 / 共 2 页
字号:
                     <      	.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
                     <      	//========================================================================================
                            	.include key.inc;
                     <      	//========================================================================================
                     <      	// Progarm: The head file for pcplay.asm
                     <      	// Wrote by: Andy Hsu
                     <      	// Last modified date: 
                     <      	// 		2000/06/23: first version
                     <      	//		2000/07/20: modified
                     <      	//========================================================================================
                     <      	
                     <      	.EXTERNAL  F_Key_Scan_Initial;
                     <      	.EXTERNAL  F_Key_Scan_ServiceLoop;			// 1 scan line +Vcc
                     <      	.EXTERNAL  F_Key_Scan_ServiceLoop_2;		// 2 scan line +Vcc / IOA
                     <      	.EXTERNAL  F_Key_DebounceCnt_Down;
                     <      	.EXTERNAL 	F_SP_GetCh;
                            	
                            	.public R_SpeechType;
000001AF                    	.RAM
000001AF 00 00              	.VAR R_SpeechType;
                            	
00008E23                    	.CODE
                            	.public _System_Initial;
                            	.public	F_System_Initial;
                            	_System_Initial: .PROC
                            	F_System_Initial:
                            	  		//push	BP,BP to [SP];				//add if some parameters in
                            	  		//BP = SP + 1;
                            			//r1 = [BP+3];
                            			//r2 = [BP+4];
                            			
00008E23 40 F0 26 8E        			call	F_User_Init_IO;			// For keyboard scan
                            			 
                            			// Add other general initialization here
                            			
                            			//r1 =0x0001;						// return value
                            			//pop		BP,BP from [SP];		
00008E25 90 9A              			retf;
                            			.ENDP;
                            	
                            	///////////////////////////////////////////////
                            	F_User_Init_IO:
00008E26 40 92              			R1 = 0x0000;
00008E27 19 D3 02 70        	        [P_IOA_Dir] = R1;                    // 
00008E29 19 D3 00 70        	        [P_IOA_Data] = R1;                   // 
00008E2B 40 92              	        R1 = 0x0000;                             
00008E2C 19 D3 03 70        	        [P_IOA_Attrib] = R1;                 // 
00008E2E 90 9A              	        retf; 
                            	.public _System_ServiceLoop;
                            	.public	F_System_ServiceLoop;
                            	_System_ServiceLoop: .PROC                  
                            	F_System_ServiceLoop:
00008E2F 40 F0 36 8D        			call	F_Key_DebounceCnt_Down;		// 
00008E31 40 F0 D0 8C        			call    F_Key_Scan_ServiceLoop;		// 			
00008E33 41 92              			R1=0x0001;                      	// 
00008E34 19 D3 12 70        			[P_Watchdog_Clear]=R1;       		//
00008E36 90 9A              	        retf;
                            	        .ENDP;
                            	        
                            	
                            	.public _Clear_WatchDog;
                            	_Clear_WatchDog: 	.PROC
00008E37 41 92              			R1=0x0001;                      // Clear watch dog
00008E38 19 D3 12 70        			[P_Watchdog_Clear]=R1;   
00008E3A 90 9A              				retf;
                            			.ENDP
                            	
                            	//=========================================//
                            	//函数名称:RunTime2Hz()
                            	//=========================================//
                            	.public _RunTime2Hz; //初始化中断为2HZ定时中断源
                            	_RunTime2Hz:   .proc
00008E3B 44 92              		r1 = 0x0004;
00008E3C 19 D3 10 70        	    [P_INT_Ctrl] = r1; 
00008E3E 41 F1              	    INT IRQ;           //开中断
                            	   	
00008E3F 90 9A              	    retf
                            	 .endp;
                            	//=========================================//
                            	//函数名称:OffTime2Hz()
                            	//========================================//
                            	
                            	.public _OffTime2Hz;
                            	_OffTime2Hz: .proc
00008E40 11 93 10 70        	   r1 = [P_INT_Ctrl]
00008E42 09 B3 FB FF        	   r1 &= 0xfffb;
00008E44 19 D3 10 70        	   [P_INT_Ctrl] = r1;
00008E46 40 92              	   r1 = 0x0000
00008E47 19 D3 A9 01        	   [_sum] = r1;
00008E49 90 9A              	   retf;
                            	 .endp;
                            	 //=======================================//
                            	 //DataBusTest()
                            	 //=======================================//
                            	 .public _DataBusTest;
                            	 _DataBusTest: .proc
00008E4A 40 92              	    r1=0x0000                 //初始化A口为输入端
00008E4B 19 D3 02 70        		[P_IOA_Dir]=r1
00008E4D 19 D3 03 70        		[P_IOA_Attrib]=r1
00008E4F 19 D3 00 70        		[P_IOA_Data]=r1
                            		                          //初始化B口为输出端
00008E51 09 93 FF FF        		r1=0xffff                 
00008E53 19 D3 07 70        		[P_IOB_Dir]=r1
00008E55 19 D3 08 70        		[P_IOB_Attrib]=r1
00008E57 40 92              		r1=0x0000
00008E58 19 D3 05 70        		[P_IOB_Data]=r1
                            	    
00008E5A 09 93 FF FF        	    r1=0xffff                 
00008E5C 19 D3 05 70        		[P_IOB_Data]=r1
                            	  loop1:
00008E5E 00 EE              	    nop;
00008E5F 00 EE              	    nop;
00008E60 00 EE              	    nop;
00008E61 00 EE              	    nop;
00008E62 00 EE              	    nop;  
00008E63 12 95 00 70        	    r2 = [P_IOA_Data]
00008E65 01 45              	    cmp r2,r1
00008E66 01 4E              	    jne exit;
00008E67 4A EE              	    jmp loop1;
                            	exit:  
00008E68 90 9A              	      retf;
                            	      .endp
                            	
0 error(s), 0 warning(s).

⌨️ 快捷键说明

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