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

📄 system.lst

📁 利用凌阳A061单片机实现制作而成的温度控制器
💻 LST
📖 第 1 页 / 共 3 页
字号:
                     <      	.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
                     <      	//========================================================================================
                            	.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;
                            	
                            	.DEFINE TIMER_CLKA_8K   0x0003
                            	.DEFINE TIMER_CLKB_1    0x0030
                            	.DEFINE RUN_TIMERA      0x1000
                            	.DEFINE TIMER_DATA_FOR_8KHZ (0xFFFF-80)
                            	
                            	.DEFINE  P_ADC_MUX_Ctrl 0x702b
                            	.DEFINE P_INT_Ctrl_New  0x702d
                            	.EXTERNAL  LED_No  
00009554                    	.CODE
                            	//============================================================================================
                            	//函数: Clear_WatchDog()
                            	//语法:void Clear_WatchDog(void)
                            	//描述:清看门狗
                            	//参数:无
                            	//返回:无
                            	//============================================================================================
                            	.PUBLIC _System_Initial;
                            	_System_Initial: .PROC
00009554 40 F0 6B 95        	     call L_User_Init_IO;		        //初始化IO口
00009556 40 F0 F6 95        		 call F_Key_Scan_Initial;			//键盘初始化
00009558 40 F0 7D 95        		 call F_ADC_Init;                   //AD初始化
0000955A 40 F0 8C 95        		 call F_SP_INT_IRQ5;                //ADC采样
0000955C 40 F0 BA 95        		 call F_SP_INT_IRQ6		            //LED显示
0000955E 40 92              		 r1 = 0;
0000955F 19 D3 1C 03        		 [LED_No] = r1                      //初始化LED显示位数
00009561 90 9A              	     retf
                            	.ENDP
                            	//============================================================================================
                            	//函数: Clear_WatchDog()
                            	//语法:void Clear_WatchDog(void)
                            	//描述:清看门狗
                            	//参数:无
                            	//返回:无
                            	//============================================================================================
                            	.PUBLIC _Clear_WatchDog;
                            	_Clear_WatchDog:  .PROC
00009562 41 92              		r1 = 0x01;
00009563 19 D3 12 70        	 	[P_Watchdog_Clear] = r1;
00009565 90 9A              	 	retf
                            	.ENDP
                            	
                            	//============================================================================= 
                            	// 函数: System_ServiceLoop();
                            	// 语法: System_ServiceLoop();
                            	// 描述: 程序扫描键盘、按键去抖调度
                            	// 参数: 无
                            	// 返回: 无
                            	//=============================================================================	
                            	
                            	.PUBLIC _System_ServiceLoop;
                            	_System_ServiceLoop:	.PROC
00009566 40 F0 01 96        			call F_Key_Scan_ServiceLoop;	   //扫描键盘
00009568 40 F0 67 96        	        call F_Key_DebounceCnt_Down;	   //按键去抖
0000956A 90 9A              	        RETF;
                            	 .ENDP      
                            	
                            	
                            	//============================================================================================
                            	//函数: L_User_Init_IO
                            	//语法:L_User_Init_IO()
                            	//描述:初始化A口低八位为下拉电阻输入,高八位为同相高电平输出
                            	//      初始化B口低四位为同相高电平输出,
                            	//参数:无
                            	//返回:无
                            	//=============================================================================================
                            	.PUBLIC L_User_Init_IO;                
                            	L_User_Init_IO: .PROC
0000956B 09 93 10 FF        	   	r1 = 0xff10;      
0000956D 19 D3 03 70        	    [P_IOA_Attrib] = r1;    
0000956F 19 D3 02 70        	    [P_IOA_Dir] = r1;
00009571 09 93 00 FF        	    r1 = 0xff00;
00009573 19 D3 00 70        	    [P_IOA_Data] = r1;
00009575 4F 92              	    r1 = 0x000F;      
00009576 19 D3 08 70        	    [P_IOB_Attrib] = r1;    
00009578 19 D3 07 70        	    [P_IOB_Dir] = r1;
0000957A 19 D3 05 70        	    [P_IOB_Data] = r1;
0000957C 90 9A              	    RETF
                            	.ENDP;
                            	//============================================================================================
                            	//函数: ADC_Init()
                            	//语法:void ADC_Init()
                            	//描述:初始化ADC
                            	//参数:无
                            	//返回:无
                            	//=============================================================================================
                            	.PUBLIC  _ADC_Init;
                            	.PUBLIC  F_ADC_Init;
                            	_ADC_Init:    .PROC
                            	F_ADC_Init:
0000957D 44 92              		r1 = 0x0004                  //选择通道LINE_IN为IOA4
0000957E 19 D3 2B 70        		[P_ADC_MUX_Ctrl] = r1
00009580 11 93 15 70        		r1 = [P_ADC_Ctrl]
00009582 41 A2              	    r1 |= 0x0001	                 //允许A/D转换
00009583 19 D3 15 70        	    [P_ADC_Ctrl] = r1 	
00009585 11 93 2A 70        	    r1 = [P_DAC_Ctrl]
00009587 09 B3 E7 FF        	    r1 &= 0xffe7;
00009589 19 D3 2A 70        	    [P_DAC_Ctrl] = r1
0000958B 90 9A              	    retf	 
                            	.ENDP
                            	
                            	//============================================================================================

⌨️ 快捷键说明

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