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

📄 int_2.lst

📁 2005年电子设计竞赛悬挂运动控制系统源码
💻 LST
📖 第 1 页 / 共 2 页
字号:
                     <      	.EXTERNAL	F_SP_ReadQueue_NIC_A2000
                     <      	.EXTERNAL	F_SP_ReadQueue_NIC_S480
                     <      	.EXTERNAL	F_SP_ReadQueue_NIC_S240
                     <      	.EXTERNAL	F_SP_ReadQueue_NIC_MS01
                     <      	.EXTERNAL	F_SP_ReadQueue_NIC_DVR
                     <      	
                     <      	
                     <      	.EXTERNAL	F_SP_SACM_A2000_Init_
                     <      	.EXTERNAL	F_SP_SACM_S480_Init_
                     <      	.EXTERNAL	F_SP_SACM_S240_Init_
                     <      	
                     <      	.EXTERNAL	F_SP_SACM_MS01_Init_
                     <      	.EXTERNAL	F_SP_PlayMode0_
                     <      	.EXTERNAL	F_SP_PlayMode1_
                     <      	.EXTERNAL	F_SP_PlayMode2_
                     <      	.EXTERNAL	F_SP_PlayMode3_
                     <      	
                     <      	.EXTERNAL	F_SP_SACM_DVR_Init_
                     <      	.EXTERNAL 	F_SP_SACM_DVR_Rec_Init_
                     <      	.EXTERNAL 	F_SP_SACM_DVR_Play_Init_
                     <      	
                     <      	.EXTERNAL	F_SP_GetResource
                     <      	
                     <      	//////////////////////////////////////////////////////////////////
                     <      	// Reserve old defintion
                     <      	// Note: Some user who use old library may use the old name
                     <      	//////////////////////////////////////////////////////////////////
                     <      	.EXTERNAL	F_SP_Send_PWM					// Get RAW data 
                     <      	.EXTERNAL	F_SP_Send_DAC1 					// 
                     <      	.EXTERNAL	F_SP_Send_DAC2 					//
                     <      	
                     <      	.EXTERNAL	F_STD_Send_DAC1 				// reserved old
                     <      	.EXTERNAL	F_STD_Send_DAC2 				// reserved old
                     <      	
                     <      	.EXTERNAL 	F_RampUpDAC1					// reserved old
                     <      	.EXTERNAL 	F_RampDnDAC1					// reserved old
                     <      	.EXTERNAL 	F_RampUpDAC2					// reserved old
                     <      	.EXTERNAL  	F_RampDnDAC2					// reserved old
                     <      	///////////////////////////////////////////////////////////////////
                     <      	
                     <      	
                     <      		
                     <      	//========================================================================================        
                     <      	// End of hardware.inc
                     <      	//========================================================================================
                            	//扩展的外部变量和外部函数
                            	.external _DeCnt1
                            	.external _DeCnt2
                            	.external _ForTimerA
                            	.external _ForTimerB
                            	.external _ForIRQ5
                            	.external _ForExInt
                            	.external _Out
                            	
00000127                    	.iram
00000127 00 00              	.var My_INT_Ctrl=0		//等同于P_INT_Ctrl
00000000                    	.data
                            	
                            	//---------------------------//
0000C93D                    	.code
                            	//======================================================
                            	//函数:Init_IRQ1_TMA
                            	//语法:汇编格式call _Init_IRQ1_TMA
                            	//	   C格式void Init_IRQ1_TMA()
                            	//描述:初始化内部计数器A(频率:1024Hz 计数初值:DeCnt1)
                            	//参数:无
                            	//返回:无
                            	//======================================================
                            	.public	_Init_IRQ1_TMA
                            	_Init_IRQ1_TMA:
0000C93D 88 D2              		push r1 to [sp]
0000C93E 11 93 27 01        		r1=[My_INT_Ctrl]
0000C940 09 A3 00 10        		r1 |= 0x1000
0000C942 19 D3 27 01        		[My_INT_Ctrl]=r1
0000C944 19 D3 10 70        		[P_INT_Ctrl]=r1
0000C946 71 92              		r1=0x0031			//0x000d=1024Hz  0x0031=Fosc/256
0000C947 19 D3 0B 70        		[P_TimerA_Ctrl]=r1
0000C949 09 93 FF FF        		r1=0xffff
0000C94B 11 23 FE 00        		r1-=[_DeCnt1]
0000C94D 19 D3 0A 70        		[P_TimerA_Data]=r1
0000C94F 49 F1              		irq on
0000C950 88 90              		pop r1 from [sp]
0000C951 90 9A              		retf
                            			
                            	.public	_Init_IRQ2_TMB
                            	_Init_IRQ2_TMB:
0000C952 88 D2              		push r1 to [sp]
0000C953 11 93 27 01        		r1=[My_INT_Ctrl]
0000C955 09 A3 00 04        		r1 |= 0x0400
0000C957 19 D3 27 01        		[My_INT_Ctrl]=r1
0000C959 19 D3 10 70        		[P_INT_Ctrl]=r1
0000C95B 41 92              		r1=0x0001			//0x0001=Fosc/256 0x0004=4096
0000C95C 19 D3 0D 70        		[P_TimerB_Ctrl]=r1
0000C95E 09 93 FF FF        		r1=0xffff
0000C960 11 23 FF 00        		r1-=[_DeCnt2]
0000C962 19 D3 0C 70        		[P_TimerB_Data]=r1
0000C964 49 F1              		irq on
0000C965 88 90              		pop r1 from [sp]
0000C966 90 9A              		retf
                            	
                            	//======================================================
                            	//函数:Close_IRQ1_TMA
                            	//语法:汇编格式call _Close_IRQ1_TMA
                            	//	   C格式void Close_IRQ1_TMA()
                            	//描述:关闭内部计数器A,使电机1停机
                            	//参数:无
                            	//返回:无
                            	//======================================================	
                            	.public _Close_IRQ1_TMA
                            	_Close_IRQ1_TMA:
0000C967 88 D2              		push r1 to [sp]
0000C968 11 93 27 01        		r1=[My_INT_Ctrl]
0000C96A 09 B3 FF EF        		r1 &= 0xefff
0000C96C 19 D3 27 01        		[My_INT_Ctrl]=r1
0000C96E 19 D3 10 70        		[P_INT_Ctrl]=r1
0000C970 88 90              		pop r1 from [sp]
0000C971 90 9A              		retf
                            		
                            	.public _Close_IRQ2_TMB
                            	_Close_IRQ2_TMB:
0000C972 88 D2              		push r1 to [sp]
0000C973 11 93 27 01        		r1=[My_INT_Ctrl]
0000C975 09 B3 FF FB        		r1 &= 0xfbff
0000C977 19 D3 27 01        		[My_INT_Ctrl]=r1
0000C979 19 D3 10 70        		[P_INT_Ctrl]=r1
0000C97B 88 90              		pop r1 from [sp]
0000C97C 90 9A              		retf
                            	
                            	//======================================================
                            	//函数:Init_IRQ3_EXT1
                            	//语法:汇编格式call _Init_IRQ3_EXT1
                            	//	   C格式void Init_IRQ3_EXT1()
                            	//描述:开外部中断1(IOB2激发的中断),用于检测是否偏离黑线
                            	//参数:无
                            	//返回:无
                            	//======================================================		
                            	.public _Init_IRQ3_EXT1
                            	_Init_IRQ3_EXT1:
0000C97D 88 D2              		push r1 to [sp]
0000C97E 40 F1              		INT OFF
0000C97F 11 93 27 01        		r1=[My_INT_Ctrl]
0000C981 09 A3 00 01        		r1 |=0x0100
0000C983 19 D3 27 01        		[My_INT_Ctrl]=r1
0000C985 19 D3 10 70        		[P_INT_Ctrl]=r1
0000C987 88 90              		pop r1 from [sp]
0000C988 49 F1              		irq on
0000C989 90 9A              		retf
                            	
                            	//======================================================
                            	//函数:Close_IRQ3_EXT1
                            	//语法:汇编格式call _Close_IRQ3_EXT1
                            	//	   C格式void Close_IRQ3_EXT1()
                            	//描述:关闭外部中断1(IOB2激发的中断),停止检测
                            	//参数:无
                            	//返回:无
                            	//======================================================	
                            	.public _Close_IRQ3_EXT1
                            	_Close_IRQ3_EXT1:
0000C98A 88 D2              		push r1 to [sp]
0000C98B 11 93 27 01        		r1=[My_INT_Ctrl]
0000C98D 09 B3 FF FE        		r1 &= 0xfeff
0000C98F 19 D3 27 01        		[My_INT_Ctrl]=r1
0000C991 19 D3 10 70        		[P_INT_Ctrl]=r1
0000C993 88 90              		pop r1 from [sp]
0000C994 90 9A              		retf
                            	
                            	//---------------------------//
000085AD                    	.TEXT
                            	//======================================================
                            	//函数:IRQ1
                            	//语法:系统自动调用
                            	//描述:计数中断处理子程序,驱动电机1
                            	//参数:无
                            	//返回:无
                            	//======================================================
                            	.public _IRQ1
                            	_IRQ1:
000085AD 88 D2              		push r1 to [sp]
000085AE 09 93 00 10        		r1=0x1000
000085B0 19 D3 11 70        		[P_INT_Clear]=r1
000085B2 40 F0 0F C1        		call _ForTimerA
                            	//改变计数器A的计数初值P_TimerA_Data,以实现电机的变速
000085B4 09 93 FF FF        		r1=0xffff
000085B6 11 23 FE 00        		r1-=[_DeCnt1]		
000085B8 19 D3 0A 70        		[P_TimerA_Data]=r1
000085BA 88 90              		pop r1 from [sp]
000085BB 98 9A              		reti
                            	
                            	.public _IRQ2
                            	_IRQ2:
000085BC 88 D2              		push r1 to [sp]
000085BD 09 93 00 04        		r1=0x0400
000085BF 19 D3 11 70        		[P_INT_Clear]=r1
000085C1 40 F0 34 C1        		call _ForTimerB
000085C3 09 93 FF FF        		r1=0xffff
000085C5 11 23 FF 00        		r1-=[_DeCnt2]
000085C7 19 D3 0C 70        		[P_TimerB_Data]=r1
000085C9 88 90              		pop r1 from [sp]
000085CA 98 9A              		reti
                            	
                            	//========================================================
                            	//函数:IRQ3
                            	//语法:系统自动调用
                            	//描述:外部中断1(IOB2激发的中断)处理子程序
                            	//	   物体偏离黑线激发的中断,用于校正运动,使沿黑线运动
                            	//参数:无
                            	//返回:2(使out=2)
                            	//========================================================
                            	.public _IRQ3
                            	_IRQ3:
000085CB 88 D2              		push r1 to [sp]
000085CC 09 93 00 01        		r1=0x0100
000085CE 19 D3 11 70        		[P_INT_Clear]=r1
000085D0 42 92              		r1=2
000085D1 19 D3 D6 00        		[_Out]=r1
                            	//	call _ForExInt
000085D3 88 90              		pop r1 from [sp]
000085D4 98 9A              		reti
0 error(s), 0 warning(s).

⌨️ 快捷键说明

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