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

📄 system.lst

📁 水温控制系统
💻 LST
📖 第 1 页 / 共 3 页
字号:
                            	_ADC_Init:    .PROC
                            	F_ADC_Init:
00009587 44 92              		r1 = 0x0004                  //选择通道LINE_IN为IOA4
00009588 19 D3 2B 70        		[P_ADC_MUX_Ctrl] = r1
0000958A 11 93 15 70        		r1 = [P_ADC_Ctrl]
0000958C 41 A2              	    r1 |= 0x0001	                 //允许A/D转换
0000958D 19 D3 15 70        	    [P_ADC_Ctrl] = r1 	
0000958F 11 93 2A 70        	    r1 = [P_DAC_Ctrl]
00009591 09 B3 E7 FF        	    r1 &= 0xffe7;
00009593 19 D3 2A 70        	    [P_DAC_Ctrl] = r1
00009595 90 9A              	    retf	 
                            	.ENDP
                            	
                            	//============================================================================================
                            	//函数: SP_INT_IRQ5()
                            	//语法:void SP_INT_IRQ5(void)
                            	//描述:初始化中断为2HZ定时中断源,用来确定ADC采样时间定时.1秒钟采样一次.
                            	//参数:无
                            	//返回:无
                            	//=============================================================================================
                            	.PUBLIC _SP_INT_IRQ5;  		       //初始化中断为2HZ定时中断源
                            	.PUBLIC F_SP_INT_IRQ5;  		   
                            	
                            	_SP_INT_IRQ5: .PROC
                            	F_SP_INT_IRQ5:   
00009596 11 93 2D 70        	    r1 =  [P_INT_Ctrl_New];     
00009598 44 A2              		r1 =  r1 |0x0004;
00009599 19 D3 2D 70        	    [P_INT_Ctrl_New] = r1; 
0000959B 49 F1              	    irq on;          		       //开中断
0000959C 90 9A              	    retf
                            	.ENDP;
                            	
                            	//============================================================================================
                            	//函数: turn_off_IRQ5()
                            	//语法:void SP_INT_IRQ5(void)
                            	//描述:初始化中断为2HZ定时中断源
                            	//参数:无
                            	//返回:无
                            	//=============================================================================================
                            	.PUBLIC _turn_off_IRQ5;  		       //初始化中断为2HZ定时中断源
                            	 _turn_off_IRQ5:  .PROC
0000959D 11 93 2D 70        	     r1 =  [P_INT_Ctrl_New];
0000959F 09 B3 FB FF        		 r1 &=  0xfffb;
000095A1 19 D3 2D 70        	     [P_INT_Ctrl_New] = r1;     
000095A3 90 9A              	      retf;
                            	 .ENDP    
                            	//============================================================================================
                            	//函数: UART_Init()
                            	//语法:void UART_Init(void)
                            	//描述:通过串行通讯传输采样温度值
                            	//参数:无
                            	//返回:无
                            	//=============================================================================================
                            	.PUBLIC _UART_Init;
                            	.PUBLIC F_UART_Init
                            	_UART_Init:  .PROC
                            	F_UART_Init:
                            	
000095A4 11 93 08 70        	    r1 = [P_IOB_Attrib]              //设置IOB7为输入IOB10为输出
000095A6 09 A3 80 04        	    r1 = r1 | 0x0480;	                
000095A8 19 D3 08 70        		[P_IOB_Attrib] = R1;
000095AA 11 93 07 70        		r1 = [P_IOB_Dir]
000095AC 09 A3 00 04        		r1 = r1 | 0x0400;
000095AE 19 D3 07 70        		[P_IOB_Dir] = R1;
000095B0 11 93 05 70        		r1 = [P_IOB_Data] 
000095B2 09 B3 B7 FF        		r1 = r1 & 0xffb7;		
000095B4 19 D3 05 70        		[P_IOB_Data] = R1;
                            		
000095B6 09 93 6B 00        	   	R1 = 0x006b;	     	         //设置波特率为115.2Kbps
000095B8 19 D3 24 70        	    [P_UART_BaudScalarLow] = R1;
000095BA 40 92              		R1 = 0x0000;
000095BB 19 D3 25 70        	    [P_UART_BaudScalarHigh] = R1;
000095BD 40 92              		R1 = 0x0000;                     
000095BE 0C 99 C0 00        		R4 = 0x00C0;		             //使能输入和输出
000095C0 19 D3 21 70        		[P_UART_Command1] = R1;
000095C2 1C D9 22 70        		[P_UART_Command2] = R4;	
                            	.ENDP
                            	//============================================================================================
                            	//函数: SP_INT_IRQ6()
                            	//语法:void SP_INT_IRQ6(void)
                            	//描述:初始化中断IRQ6
                            	//参数:无
                            	//返回:无
                            	//=============================================================================================
                            	.PUBLIC _SP_INT_IRQ6;    	      //128hz
                            	.PUBLIC F_SP_INT_IRQ6;    	      //128hz
                            	_SP_INT_IRQ6:   .PROC
                            	 F_SP_INT_IRQ6:
000095C4 40 92              	     r1 = 0x0000;
000095C5 19 D3 0E 70        	     [P_TimeBase_Setup]=r1        //128hz
000095C7 11 93 2D 70        	     r1 =  [P_INT_Ctrl_New];
000095C9 41 A2              		 r1 =  r1 |0x0001;           //开中断IRQ6   			         
000095CA 19 D3 2D 70        		 [P_INT_Ctrl_New]= r1 
000095CC 49 F1              		 irq on;	 
000095CD 90 9A              	     RETF;
                            	.ENDP
                            	
                            	//============================================================================================
                            	//函数: turn_off_timerA
                            	//语法:turn_off_timerA
                            	//描述:关闭定时器B
                            	//参数:无
                            	//返回:无
                            	//============================================================================================
                            	.PUBLIC _turn_off_timerB
                            	_turn_off_timerB:  .PROC
000095CE 11 93 2D 70        		 r1 =  [P_INT_Ctrl_New];
000095D0 09 B3 FF FB        		 r1 &=  0xfbff;
000095D2 19 D3 2D 70        	     [P_INT_Ctrl_New] = r1;     
000095D4 90 9A              	      retf;
                            	 .ENDP
                            	//============================================================================================
                            	//函数: turn_on_relay;
                            	//语法:void turn_on_relay;
                            	//描述:打开继电器
                            	//参数:无
                            	//返回:无
                            	//============================================================================================
                            	.PUBLIC _turn_on_relay;
                            	.PUBLIC F_turn_on_relay;
                            	_turn_on_relay: .PROC
                            	F_turn_on_relay:
000095D5 11 93 01 70        		r1 = [P_IOA_Buffer]
000095D7 50 A2              		r1 |= 0x0010;
000095D8 19 D3 01 70        		[P_IOA_Buffer] = r1;
000095DA 90 9A              		retf
                            	.ENDP
                            	//============================================================================================
                            	//函数: turn_off_relay;
                            	//语法:void turn_off_relay;
                            	//描述:关闭继电器
                            	//参数:无
                            	//返回:无
                            	//============================================================================================
                            	.PUBLIC _turn_off_relay;
                            	.PUBLIC F_turn_off_relay;
                            	_turn_off_relay: .PROC
                            	F_turn_off_relay:
000095DB 11 93 01 70        		r1 = [P_IOA_Buffer]
000095DD 09 B3 EF FF        		r1 &= 0xffef;
000095DF 19 D3 01 70        		[P_IOA_Buffer] = r1;
000095E1 90 9A              		retf
                            	.ENDP
                            	//============================================================================================
                            	//函数: SP_INT_TIMEA()
                            	//语法:void SP_INT_TIMEA(void)
                            	//描述:初始化中断为1s定时中断源
                            	//参数:无
                            	//返回:无
                            	//============================================================================================
                            	.PUBLIC _SP_INT_TIMEB;
                            	_SP_INT_TIMEB: .PROC
                            		//r1 = 0x0000;                    //CPU选频
                            	    //[P_SystemClock] = r1;
000095E2 09 93 AF FF        	    r1 = TIMER_DATA_FOR_8KHZ 
000095E4 19 D3 0C 70        		[P_TimerB_Data] = r1;
000095E6 43 92              		r1 = TIMER_CLKA_8K 
000095E7 19 D3 0D 70        		[P_TimerB_Ctrl]=r1;                
000095E9 11 93 2D 70        		r1 = [P_INT_Ctrl_New];
000095EB 09 A3 00 04        		r1 |= 0x0400                       //IRQ1_TMA
000095ED 19 D3 2D 70        		[P_INT_Ctrl_New] = r1;             //开TimeA 中断
000095EF 49 F1              		IRQ ON;
000095F0 90 9A              	    RETF
                            	   .ENDP
0 error(s), 0 warning(s).

⌨️ 快捷键说明

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