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

📄 project.lst

📁 AVR单片机 C语言程序设计经典实用
💻 LST
📖 第 1 页 / 共 5 页
字号:
(0428) 	
(0429) 	sDataToNumber(wLineVoltRMS,5,&stSciBuffer);
    041F E384      LDI	R24,0x34
    0420 E091      LDI	R25,1
    0421 839B      STD	Y+3,R25
    0422 838A      STD	Y+2,R24
    0423 E085      LDI	R24,5
    0424 8388      STD	Y+0,R24
    0425 90200067  LDS	R2,__idata_start+3
    0427 90300068  LDS	R3,0x68
    0429 2444      CLR	R4
    042A FC37      SBRC	R3,7
    042B 9440      COM	R4
    042C 2455      CLR	R5
    042D FC47      SBRC	R4,7
    042E 9450      COM	R5
    042F 0181      MOVW	R16,R2
    0430 0192      MOVW	R18,R4
    0431 D398      RCALL	_sDataToNumber
(0430) 	SciBuffer_Tx_In(&stSciBuffer,' ');
    0432 E220      LDI	R18,0x20
    0433 E304      LDI	R16,0x34
    0434 E011      LDI	R17,1
    0435 DF32      RCALL	_SciBuffer_Tx_In
(0431) 	
(0432) 	sDataToNumber(wLineCaptureTime,5,&stSciBuffer);
    0436 E384      LDI	R24,0x34
    0437 E091      LDI	R25,1
    0438 839B      STD	Y+3,R25
    0439 838A      STD	Y+2,R24
    043A E085      LDI	R24,5
    043B 8388      STD	Y+0,R24
    043C 9020006D  LDS	R2,0x6D
    043E 9030006E  LDS	R3,0x6E
    0440 2444      CLR	R4
    0441 2455      CLR	R5
    0442 0181      MOVW	R16,R2
    0443 0192      MOVW	R18,R4
    0444 D385      RCALL	_sDataToNumber
(0433) 	SciBuffer_Tx_In(&stSciBuffer,'\n');
    0445 E02A      LDI	R18,0xA
    0446 E304      LDI	R16,0x34
    0447 E011      LDI	R17,1
    0448 DF1F      RCALL	_SciBuffer_Tx_In
(0434) 
(0435) 	UART_WRITE_DATA(&stSciBuffer);
    0449 E304      LDI	R16,0x34
    044A E011      LDI	R17,1
    044B DF5A      RCALL	_UART_WRITE_DATA
(0436) }
    044C 9624      ADIW	R28,4
    044D 9508      RET
_D3Command:
  dwTest               --> Y+4
    044E 940E0900  CALL	push_gset2
    0450 9728      SBIW	R28,0x8
(0437) 
(0438) //********************************************************************
(0439) // Function    : D3Command
(0440) // Input       : none
(0441) // Output      : none
(0442) // Description : D3
(0443) //********************************************************************
(0444) void D3Command(void)
(0445) {
(0446) 	INT32U dwTest = 0x12345678;
    0451 E748      LDI	R20,0x78
    0452 E556      LDI	R21,0x56
    0453 E364      LDI	R22,0x34
    0454 E172      LDI	R23,0x12
    0455 01FE      MOVW	R30,R28
    0456 8344      STD	Z+4,R20
    0457 8355      STD	Z+5,R21
    0458 8366      STD	Z+6,R22
    0459 8377      STD	Z+7,R23
(0447) 	
(0448) 	sDataToChar(dwTest,8,&stSciBuffer);
    045A E384      LDI	R24,0x34
    045B E091      LDI	R25,1
    045C 839B      STD	Y+3,R25
    045D 838A      STD	Y+2,R24
    045E E088      LDI	R24,0x8
    045F 8388      STD	Y+0,R24
    0460 01FE      MOVW	R30,R28
    0461 8104      LDD	R16,Z+4
    0462 8115      LDD	R17,Z+5
    0463 8126      LDD	R18,Z+6
    0464 8137      LDD	R19,Z+7
    0465 D380      RCALL	_sDataToChar
(0449) 	SciBuffer_Tx_In(&stSciBuffer,' ');
    0466 E220      LDI	R18,0x20
    0467 E304      LDI	R16,0x34
    0468 E011      LDI	R17,1
    0469 DEFE      RCALL	_SciBuffer_Tx_In
(0450) 	
(0451) 	sDataToChar(dwTest,4,&stSciBuffer);
    046A E384      LDI	R24,0x34
    046B E091      LDI	R25,1
    046C 839B      STD	Y+3,R25
    046D 838A      STD	Y+2,R24
    046E E084      LDI	R24,4
    046F 8388      STD	Y+0,R24
    0470 01FE      MOVW	R30,R28
    0471 8104      LDD	R16,Z+4
    0472 8115      LDD	R17,Z+5
    0473 8126      LDD	R18,Z+6
    0474 8137      LDD	R19,Z+7
    0475 D370      RCALL	_sDataToChar
(0452) 	SciBuffer_Tx_In(&stSciBuffer,' ');
    0476 E220      LDI	R18,0x20
    0477 E304      LDI	R16,0x34
    0478 E011      LDI	R17,1
    0479 DEEE      RCALL	_SciBuffer_Tx_In
(0453) 	
(0454) 	sDataToChar(dwTest,2,&stSciBuffer);
    047A E384      LDI	R24,0x34
    047B E091      LDI	R25,1
    047C 839B      STD	Y+3,R25
    047D 838A      STD	Y+2,R24
    047E E082      LDI	R24,2
    047F 8388      STD	Y+0,R24
    0480 01FE      MOVW	R30,R28
    0481 8104      LDD	R16,Z+4
    0482 8115      LDD	R17,Z+5
    0483 8126      LDD	R18,Z+6
    0484 8137      LDD	R19,Z+7
    0485 D360      RCALL	_sDataToChar
(0455) 	SciBuffer_Tx_In(&stSciBuffer,' ');
    0486 E220      LDI	R18,0x20
    0487 E304      LDI	R16,0x34
    0488 E011      LDI	R17,1
    0489 DEDE      RCALL	_SciBuffer_Tx_In
(0456) 	
(0457) 	sDataToChar(dwTest,1,&stSciBuffer);
    048A E384      LDI	R24,0x34
    048B E091      LDI	R25,1
    048C 839B      STD	Y+3,R25
    048D 838A      STD	Y+2,R24
    048E E081      LDI	R24,1
    048F 8388      STD	Y+0,R24
    0490 01FE      MOVW	R30,R28
    0491 8104      LDD	R16,Z+4
    0492 8115      LDD	R17,Z+5
    0493 8126      LDD	R18,Z+6
    0494 8137      LDD	R19,Z+7
    0495 D350      RCALL	_sDataToChar
(0458) 	SciBuffer_Tx_In(&stSciBuffer,'\n');
    0496 E02A      LDI	R18,0xA
    0497 E304      LDI	R16,0x34
    0498 E011      LDI	R17,1
    0499 DECE      RCALL	_SciBuffer_Tx_In
(0459) 	
(0460) 	UART_WRITE_DATA(&stSciBuffer);
    049A E304      LDI	R16,0x34
    049B E011      LDI	R17,1
    049C DF09      RCALL	_UART_WRITE_DATA
(0461) }
    049D 9628      ADIW	R28,0x8
    049E 940E08E0  CALL	pop_gset2
    04A0 9508      RET
(0462) 
(0463) //********************************************************************
(0464) // Function    : XXCommand
(0465) // Input       : none
(0466) // Output      : none
(0467) // Description : XX
(0468) //********************************************************************
(0469) void XXCommand(void)
(0470) {
(0471) 	sStringToChar("Received XX Command.\n",&stSciBuffer);
_XXCommand:
    04A1 E324      LDI	R18,0x34
    04A2 E031      LDI	R19,1
    04A3 E10E      LDI	R16,0x1E
    04A4 E011      LDI	R17,1
    04A5 D361      RCALL	_sStringToChar
(0472) 	UART_WRITE_DATA(&stSciBuffer);	
    04A6 E304      LDI	R16,0x34
    04A7 E011      LDI	R17,1
(0473) }
    04A8 CEFD      RJMP	_UART_WRITE_DATA
_YYCommand:
  bChar                --> Y+0
    04A9 9723      SBIW	R28,3
(0474) 
(0475) //********************************************************************
(0476) // Function    : YYCommand
(0477) // Input       : none
(0478) // Output      : none
(0479) // Description : YY,MM
(0480) //********************************************************************
(0481) void YYCommand(void)
(0482) {
(0483) 	INT8U bChar[3];
(0484) 	bChar[0] = stSciBuffer.bRxBuffer[2];
    04AA 90200139  LDS	R2,__idata_end+1
    04AC 8228      STD	Y+0,R2
(0485) 	bChar[1] = stSciBuffer.bRxBuffer[3];
    04AD 9020013A  LDS	R2,__idata_end+2
    04AF 8229      STD	Y+1,R2
(0486) 	bChar[2] = stSciBuffer.bRxBuffer[4];
    04B0 9020013B  LDS	R2,__idata_end+3
    04B2 822A      STD	Y+2,R2
(0487) 	sStringToChar("Received YY Command , ",&stSciBuffer);
    04B3 E324      LDI	R18,0x34
    04B4 E031      LDI	R19,1
    04B5 E007      LDI	R16,7
    04B6 E011      LDI	R17,1
    04B7 D34F      RCALL	_sStringToChar
(0488) 	if((bChar[0] == ',') && \
    04B8 8188      LDD	R24,Y+0
    04B9 328C      CPI	R24,0x2C
    04BA F501      BNE	0x04DB
    04BB 8189      LDD	R24,Y+1
    04BC 3380      CPI	R24,0x30
    04BD F0E8      BCS	0x04DB
    04BE E389      LDI	R24,0x39
    04BF 8029      LDD	R2,Y+1
    04C0 1582      CP	R24,R2
    04C1 F0C8      BCS	0x04DB
    04C2 818A      LDD	R24,Y+2
    04C3 3380      CPI	R24,0x30
    04C4 F0B0      BCS	0x04DB
    04C5 E389      LDI	R24,0x39
    04C6 802A      LDD	R2,Y+2
    04C7 1582      CP	R24,R2
    04C8 F090      BCS	0x04DB
(0489) 	   (bChar[1] >= '0') && (bChar[1] <= '9') &&\
(0490) 	   (bChar[2] >= '0') && (bChar[2] <= '9'))
(0491) 	{
(0492) 		sStringToChar("Parameter : ",&stSciBuffer);
    04C9 E324      LDI	R18,0x34
    04CA E031      LDI	R19,1
    04CB EF0A      LDI	R16,0xFA
    04CC E010      LDI	R17,0
    04CD D339      RCALL	_sStringToChar
(0493) 		SciBuffer_Tx_In(&stSciBuffer,bChar[1]);
    04CE 8129      LDD	R18,Y+1
    04CF E304      LDI	R16,0x34
    04D0 E011      LDI	R17,1
    04D1 DE96      RCALL	_SciBuffer_Tx_In
(0494) 		SciBuffer_Tx_In(&stSciBuffer,bChar[2]);
    04D2 812A      LDD	R18,Y+2
    04D3 E304      LDI	R16,0x34
    04D4 E011      LDI	R17,1
    04D5 DE92      RCALL	_SciBuffer_Tx_In
(0495) 		SciBuffer_Tx_In(&stSciBuffer,'\n');
    04D6 E02A      LDI	R18,0xA
    04D7 E304      LDI	R16,0x34
    04D8 E011      LDI	R17,1
    04D9 DE8E      RCALL	_SciBuffer_Tx_In
(0496) 	}
    04DA C005      RJMP	0x04E0
(0497) 	else
(0498) 	{
(0499) 		sStringToChar("Illegal Parameter !\n",&stSciBuffer);
    04DB E324      LDI	R18,0x34
    04DC E031      LDI	R19,1
    04DD EE05      LDI	R16,0xE5
    04DE E010      LDI	R17,0
    04DF D327      RCALL	_sStringToChar
(0500) 	}	
(0501) 	UART_WRITE_DATA(&stSciBuffer);
    04E0 E304      LDI	R16,0x34
    04E1 E011      LDI	R17,1
    04E2 DEC3      RCALL	_UART_WRITE_DATA
(0502) }
    04E3 9623      ADIW	R28,3
    04E4 9508      RET
_ZZCommand:
  bChar                --> Y+0
    04E5 9728      SBIW	R28,0x8
(0503) 
(0504) //********************************************************************
(0505) // Function    : ZZCommand
(0506) // Input       : none
(0507) // Output      : none
(0508) // Description : ZZ,MMM,NNN
(0509) //********************************************************************
(0510) void ZZCommand(void)
(0511) {
(0512) 	INT8U bChar[8];
(0513) 	bChar[0] = stSciBuffer.bRxBuffer[2];
    04E6 90200139  LDS	R2,__idata_end+1
    04E8 8228      STD	Y+0,R2
(0514) 	bChar[1] = stSciBuffer.bRxBuffer[3];
    04E9 9020013A  LDS	R2,__idata_end+2
    04EB 8229      STD	Y+1,R2
(0515) 	bChar[2] = stSciBuffer.bRxBuffer[4];
    04EC 9020013B  LDS	R2,__idata_end+3
    04EE 822A      STD	Y+2,R2
(0516) 	bChar[3] = stSciBuffer.bRxBuffer[5];
    04EF 9020013C  LDS	R2,0x13C
    04F1 822B      STD	Y+3,R2
(0517) 	bChar[4] = stSciBuffer.bRxBuffer[6];
    04F2 9020013D  LDS	R2,0x13D
    04F4 822C      STD	Y+4,R2
(0518) 	bChar[5] = stSciBuffer.bRxBuffer[7];
    04F5 9020013E  LDS	R2,0x13E
    04F7 822D      STD	Y+5,R2
(0519) 	bChar[6] = stSciBuffer.bRxBuffer[8];
    04F8 9020013F  LDS	R2,0x13F
    04FA 822E      STD	Y+6,R2
(0520) 	bChar[7] = stSciBuffer.bRxBuffer[9];
    04FB 90200140  LDS	R2,0x140
    04FD 822F      STD	Y+7,R2
(0521) 	sStringToChar("Received ZZ Command , ",&stSciBuffer);
    04FE E324      LDI	R18,0x34
    04FF E031      LDI	R19,1
    0500 EC0E      LDI	R16,0xCE
    0501 E010      LDI	R17,0
    0502 D304      RCALL	_sStringToChar
(0522) 	if((bChar[0] == ',') && (bChar[4] == ',') && \
    0503 8188      LDD	R24,Y+0
    0504 328C      CPI	R24,0x2C
    0505 F009      BEQ	0x0507
    0506 C062      RJMP	0x0569
    0507 818C      LDD	R24,Y+4
    0508 328C      CPI	R24,0x2C
    0509 F009      BEQ	0x050B
    050A C05E      RJMP	0x0569
    050B 8189      LDD	R24,Y+1
    050C 3380      CPI	R24,0x30
    050D F408      BCC	0x050F
    050E C05A      RJMP	0x0569
    050F E389      LDI	R24,0x39
    0510 8029      LDD	R2,Y+1
    0511 1582      CP	R24,R2
    0512 F408      BCC	0x0514
    0513 C055      RJMP	0x0569
    0514 818A      LDD	R24,Y+2
    0515 3380      CPI	R24,0x30
    0516 F408      BCC	0x0518
    0517 C051      RJMP	0x0569
    0518 E389      LDI	R24,0x39
    0519 802A      LDD	R2,Y+2
    051A 1582      CP	R24,R2
    051B F408      BCC	0x051D
    051C C04C      RJMP	0x0569
    051D 818B      LDD	R24,Y+3
    051E 3380      CPI	R24,0x30
    051F F408      BCC	0x0521
    0520 C048      RJMP	0x0569
    0521 E389      LDI	R24,0x39
    0522 802B      LDD	R2,Y+3
    0523 1582      CP	R24,R2
    0524 F408      BCC	0x0526
    0525 C043      RJMP	0x0569
    0526 818D      LDD	R24,Y+5
    0527 3380      CPI	R24,0x30
    0528 F408      BCC	0x052A
    0529 C03F      RJMP	0x0569
    052A E389      LDI	R24,0x39
    052B 802D      LDD	R2,Y+5
    052C 1582      CP	R24,R2
    052D F408      BCC	0x052F
    052E C03A      RJMP	0x0569
    052F 818E      LDD	R24,Y+6
    0530 3380      CPI	R24,0x30
    0531 F408      BCC	0x0533
    0532 C036      RJMP	0x0569
    0533 E389      LDI	R24,0x39
    0534 802E      LDD	R2,Y+6
    0535 1582      CP	R24,R2
    0536 F190      BCS	0x0569
    0537 818F      LDD	R24,Y+7
    0538 3380      CPI	R24,0x30
    0539 F178      BCS	0x0569
    053A E389      LDI	R24,0x39
    053B 802F      LDD	R2,Y+7
    053C 1582      CP	R24,R2
    053D F158      BCS	0x0569
(0523) 	   (bChar[1] >= '0') && (bChar[1] <= '9') && \
(0524) 	   (bChar[2] >= '0') && (bChar[2] <= '9') && \
(0525) 	   (bChar[3] >= '0') && (bChar[3] <= '9') && \
(0526) 	   (bChar[5] >= '0') && (bChar[5] <= '9') && \
(0527) 	   (bChar[6] >= '0') && (bChar[6] <= '9') && \
(0528) 	   (bChar[7] >= '0') && (bChar[7] <= '9'))
(0529) 	{
(0530) 		sStringToChar("Parameter1 : ",&stSciBuffer);
    053E E324      LDI	R18,0x34
    053F E031      LDI	R19,1
    0540 EC00      LDI	R16,0xC0
    0541 E010      LDI	R17,0
    

⌨️ 快捷键说明

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