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

📄 alarm.lst

📁 cs5460a做功率表用 cs5460a做功率表用 cs5460a做功率表
💻 LST
📖 第 1 页 / 共 2 页
字号:
  86:task/Alarm.c  **** 						fH_Alarm = OFF;  //取消高报警
 292               	.LM28:
 293 0112 3093 0000 		sts fH_Alarm,r19
 294 0116 03C0      		rjmp .L5
 295               	.L20:
  87:task/Alarm.c  **** 					 }
  88:task/Alarm.c  **** 				 else 
  89:task/Alarm.c  **** 				    {   H_Alarm_step = 3;	}
 297               	.LM29:
 298 0118 83E0      		ldi r24,lo8(3)
 299 011a 8093 0000 		sts H_Alarm_step.0,r24
 300               	.L5:
  90:task/Alarm.c  **** 				 	break;
  91:task/Alarm.c  **** 				 	
  92:task/Alarm.c  **** 			   default:
  93:task/Alarm.c  **** 			   break;					
  94:task/Alarm.c  **** 			 }
  95:task/Alarm.c  **** //---------------------------
  96:task/Alarm.c  **** 		switch(L_Alarm_step) 
 302               	.LM30:
 303 011e 2091 0000 		lds r18,L_Alarm_step.1
 304 0122 822F      		mov r24,r18
 305 0124 9927      		clr r25
 306 0126 8230      		cpi r24,2
 307 0128 9105      		cpc r25,__zero_reg__
 308 012a C9F0      		breq .L30
 309 012c 8330      		cpi r24,3
 310 012e 9105      		cpc r25,__zero_reg__
 311 0130 2CF4      		brge .L42
 312 0132 0097      		sbiw r24,0
 313 0134 61F0      		breq .L25
 314 0136 0197      		sbiw r24,1
 315 0138 71F0      		breq .L27
 316 013a 0895      		ret
 317               	.L42:
 318 013c 8430      		cpi r24,4
 319 013e 9105      		cpc r25,__zero_reg__
 320 0140 31F1      		breq .L35
 321 0142 8430      		cpi r24,4
 322 0144 9105      		cpc r25,__zero_reg__
 323 0146 CCF0      		brlt .L33
 324 0148 0597      		sbiw r24,5
 325 014a 81F1      		breq .L38
 326 014c 0895      		ret
 327               	.L25:
  97:task/Alarm.c  **** 		  { 
  98:task/Alarm.c  **** 			  case 0:
  99:task/Alarm.c  **** 				 if (Display_V < L_Alarm) 
 329               	.LM31:
 330 014e E617      		cp r30,r22
 331 0150 F707      		cpc r31,r23
 332 0152 F0F5      		brsh .L1
 333 0154 25C0      		rjmp .L46
 334               	.L27:
 100:task/Alarm.c  **** 				    {	L_Alarm_step++;	}
 101:task/Alarm.c  **** 					break;
 102:task/Alarm.c  **** 					
 103:task/Alarm.c  **** 			  case 1:
 104:task/Alarm.c  **** 				 if (Display_V  < L_Alarm) 
 336               	.LM32:
 337 0156 E617      		cp r30,r22
 338 0158 F707      		cpc r31,r23
 339 015a 60F4      		brsh .L31
 340 015c 21C0      		rjmp .L46
 341               	.L30:
 105:task/Alarm.c  **** 				    {	L_Alarm_step++;	}			//延时,防抖动
 106:task/Alarm.c  **** 				 else
 107:task/Alarm.c  **** 				    {	L_Alarm_step = 0;  }
 108:task/Alarm.c  **** 					break;
 109:task/Alarm.c  **** 					
 110:task/Alarm.c  **** 			  case 2:
 111:task/Alarm.c  **** 				 if (Display_V  < L_Alarm) 
 343               	.LM33:
 344 015e E617      		cp r30,r22
 345 0160 F707      		cpc r31,r23
 346 0162 40F4      		brsh .L31
 112:task/Alarm.c  **** 				    {
 113:task/Alarm.c  **** 						IO_LowAlarm = OFF;
 348               	.LM34:
 349 0164 9298      		cbi 50-0x20,2
 114:task/Alarm.c  **** 			 			fL_Alarm = ON;
 351               	.LM35:
 352 0166 81E0      		ldi r24,lo8(1)
 353 0168 8093 0000 		sts fL_Alarm,r24
 115:task/Alarm.c  **** 						L_Alarm_step++;
 355               	.LM36:
 356 016c 280F      		add r18,r24
 357               	.L45:
 358 016e 2093 0000 		sts L_Alarm_step.1,r18
 359 0172 0895      		ret
 360               	.L31:
 116:task/Alarm.c  **** 					 } 
 117:task/Alarm.c  **** 				 else 
 118:task/Alarm.c  **** 				    {	L_Alarm_step = 0; }
 362               	.LM37:
 363 0174 1092 0000 		sts L_Alarm_step.1,__zero_reg__
 119:task/Alarm.c  **** 				 	break;
 365               	.LM38:
 366 0178 0895      		ret
 367               	.L33:
 120:task/Alarm.c  **** 				 	
 121:task/Alarm.c  **** 			  case 3:
 122:task/Alarm.c  **** 				 if (Display_V >(L_Alarm+LagVal )) 
 369               	.LM39:
 370 017a 8091 0000 		lds r24,LagVal
 371 017e 9091 0000 		lds r25,(LagVal)+1
 372 0182 680F      		add r22,r24
 373 0184 791F      		adc r23,r25
 374 0186 6E17      		cp r22,r30
 375 0188 7F07      		cpc r23,r31
 376 018a 10F5      		brsh .L1
 377 018c 09C0      		rjmp .L46
 378               	.L35:
 123:task/Alarm.c  **** 				    {	L_Alarm_step++;   }
 124:task/Alarm.c  **** 				 	break;
 125:task/Alarm.c  **** 				 	
 126:task/Alarm.c  **** 			  case 4:
 127:task/Alarm.c  **** 				 if (Display_V >(L_Alarm+LagVal )) 
 380               	.LM40:
 381 018e 8091 0000 		lds r24,LagVal
 382 0192 9091 0000 		lds r25,(LagVal)+1
 383 0196 680F      		add r22,r24
 384 0198 791F      		adc r23,r25
 385 019a 6E17      		cp r22,r30
 386 019c 7F07      		cpc r23,r31
 387 019e 10F4      		brsh .L36
 388               	.L46:
 128:task/Alarm.c  **** 				    {	L_Alarm_step++;   }				//延时,防抖动
 390               	.LM41:
 391 01a0 2F5F      		subi r18,lo8(-(1))
 392 01a2 E5CF      		rjmp .L45
 393               	.L36:
 129:task/Alarm.c  **** 				 else 
 130:task/Alarm.c  **** 				    {   L_Alarm_step = 3; }
 395               	.LM42:
 396 01a4 83E0      		ldi r24,lo8(3)
 397 01a6 8093 0000 		sts L_Alarm_step.1,r24
 131:task/Alarm.c  **** 				 	break;
 399               	.LM43:
 400 01aa 0895      		ret
 401               	.L38:
 132:task/Alarm.c  **** 				 	
 133:task/Alarm.c  **** 			  case 5:
 134:task/Alarm.c  **** 				 if (Display_V >(L_Alarm+LagVal )) 
 403               	.LM44:
 404 01ac 8091 0000 		lds r24,LagVal
 405 01b0 9091 0000 		lds r25,(LagVal)+1
 406 01b4 680F      		add r22,r24
 407 01b6 791F      		adc r23,r25
 408 01b8 6E17      		cp r22,r30
 409 01ba 7F07      		cpc r23,r31
 410 01bc 30F4      		brsh .L39
 135:task/Alarm.c  **** 				    {							
 136:task/Alarm.c  **** 						L_Alarm_step = 0;	
 412               	.LM45:
 413 01be 1092 0000 		sts L_Alarm_step.1,__zero_reg__
 137:task/Alarm.c  **** 						IO_LowAlarm = ON;
 415               	.LM46:
 416 01c2 929A      		sbi 50-0x20,2
 138:task/Alarm.c  **** 						fL_Alarm = OFF;  //取消低报警
 418               	.LM47:
 419 01c4 1092 0000 		sts fL_Alarm,__zero_reg__
 420 01c8 0895      		ret
 421               	.L39:
 139:task/Alarm.c  **** 					} 
 140:task/Alarm.c  **** 				  else 
 141:task/Alarm.c  **** 				   {	L_Alarm_step = 3; }
 423               	.LM48:
 424 01ca 83E0      		ldi r24,lo8(3)
 425 01cc 8093 0000 		sts L_Alarm_step.1,r24
 426               	.L1:
 427 01d0 0895      		ret
 428               	/* epilogue: frame size=0 */
 429               	/* epilogue: noreturn */
 430               	/* epilogue end (size=0) */
 431               	/* function WatchDataTask size 237 (237) */
 438               	.Lscope0:
 440               	.global	CountLag
 442               	CountLag:
 142:task/Alarm.c  **** 				 break;
 143:task/Alarm.c  **** 				 	
 144:task/Alarm.c  **** 			  default:
 145:task/Alarm.c  **** 			  break;					
 146:task/Alarm.c  **** 		   } 
 147:task/Alarm.c  **** 	}
 148:task/Alarm.c  **** }	
 149:task/Alarm.c  **** 
 150:task/Alarm.c  **** //---------------------------------------------------
 151:task/Alarm.c  **** void		CountLag(void)
 152:task/Alarm.c  **** {
 444               	.LM49:
 445               	/* prologue: frame size=0 */
 446               	/* prologue end (size=0) */
 153:task/Alarm.c  **** 		LagVal = (uint32) PtVal * 5;		 //回滞量是额定值的5%
 448               	.LM50:
 449 01d2 8091 0000 		lds r24,PtVal
 450 01d6 9091 0000 		lds r25,(PtVal)+1
 451 01da 9C01      		movw r18,r24
 452 01dc 4427      		clr r20
 453 01de 5527      		clr r21
 454 01e0 DA01      		movw r26,r20
 455 01e2 C901      		movw r24,r18
 456 01e4 62E0      		ldi r22,2
 457 01e6 880F      	1:	lsl r24
 458 01e8 991F      		rol r25
 459 01ea AA1F      		rol r26
 460 01ec BB1F      		rol r27
 461 01ee 6A95      		dec r22
 462 01f0 D1F7      		brne 1b
 463 01f2 820F      		add r24,r18
 464 01f4 931F      		adc r25,r19
 465 01f6 A41F      		adc r26,r20
 466 01f8 B51F      		adc r27,r21
 467 01fa 9093 0000 		sts (LagVal)+1,r25
 468 01fe 8093 0000 		sts LagVal,r24
 469               	/* epilogue: frame size=0 */
 470 0202 0895      		ret
 471               	/* epilogue end (size=1) */
 472               	/* function CountLag size 25 (24) */
 474               	.Lscope1:
 475               		.comm fH_Alarm,1,1
 476               		.comm fL_Alarm,1,1
 477               		.lcomm LagVal,2
 482               		.text
 484               	Letext:
 485               	/* File "task/Alarm.c": code  262 = 0x0106 ( 261), prologues   0, epilogues   1 */
DEFINED SYMBOLS
                            *ABS*:00000000 Alarm.c
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:3      *ABS*:0000003f __SREG__
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:4      *ABS*:0000003e __SP_H__
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:5      *ABS*:0000003d __SP_L__
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:6      *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:7      *ABS*:00000001 __zero_reg__
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:105    .data:00000000 SwitchOutDelay
                             .bss:00000000 H_Alarm_step.0
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:108    .bss:00000001 L_Alarm_step.1
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:114    .text:00000000 WatchDataTask
                            *COM*:00000001 fH_Alarm
                            *COM*:00000001 fL_Alarm
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:109    .bss:00000002 LagVal
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:442    .text:000001d2 CountLag
C:\DOCUME~1\zgh\LOCALS~1\Temp/cci6aaaa.s:484    .text:00000204 Letext

UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
Ps
__udivmodsi4
Rest5460A_Time
H_Alarm
L_Alarm
AlarmSwitch
PtVal

⌨️ 快捷键说明

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