kongzhiyuyin2.lst

来自「本人开发的利用WT-588D语音芯片做的机器人语音控制程序。使用AVR 16单片」· LST 代码 · 共 119 行

LST
119
字号
__start:
__text_start:
      72 EFCF      LDI	R28,0xFF
      73 E2D1      LDI	R29,0x21
      74 BFCD      OUT	0x3D,R28
      75 BFDE      OUT	0x3E,R29
      76 51CE      SUBI	R28,0x1E
      77 40D0      SBCI	R29,0
      78 EA0A      LDI	R16,0xAA
      79 8308      STD	Y+0,R16
      7A 2400      CLR	R0
      7B E0E0      LDI	R30,0
      7C E0F2      LDI	R31,2
      7D E012      LDI	R17,2
      7E 30E0      CPI	R30,0
      7F 07F1      CPC	R31,R17
      80 F011      BEQ	0x0083
      81 9201      ST	R0,Z+
      82 CFFB      RJMP	0x007E
      83 8300      STD	Z+0,R16
      84 EEE4      LDI	R30,0xE4
      85 E0F0      LDI	R31,0
      86 E0A0      LDI	R26,0
      87 E0B2      LDI	R27,2
      88 E010      LDI	R17,0
      89 E000      LDI	R16,0
      8A BF0B      OUT	0x3B,R16
      8B 3EE4      CPI	R30,0xE4
      8C 07F1      CPC	R31,R17
      8D F021      BEQ	0x0092
      8E 95C8      LPM
      8F 9631      ADIW	R30,1
      90 920D      ST	R0,X+
      91 CFF9      RJMP	0x008B
      92 940E 00AC CALL	_main
_exit:
      94 CFFF      RJMP	_exit
_delayms:
  i                    --> R20
  j                    --> R22
  n                    --> R16
      95 940E 00BE CALL	push_xgsetF000
FILE: d:\MYDOCU~1\新建文~4\AVRtest\控制语音\kongzhiyuyin2.c
(0001) #include<iom16v.h>
(0002) #include<macros.h>
(0003) void delayms(unsigned char  n  )
(0004) {  unsigned int  i,j;
(0005)    for(i=0;i<n;i++)
      97 2744      CLR	R20
      98 2755      CLR	R21
      99 C00B      RJMP	0x00A5
(0006)    {  for(j=0;j<2282;j++);
      9A 2766      CLR	R22
      9B 2777      CLR	R23
      9C C002      RJMP	0x009F
      9D 5F6F      SUBI	R22,0xFF
      9E 4F7F      SBCI	R23,0xFF
      9F 3E6A      CPI	R22,0xEA
      A0 E0E8      LDI	R30,0x8
      A1 077E      CPC	R23,R30
      A2 F3D0      BCS	0x009D
      A3 5F4F      SUBI	R20,0xFF
      A4 4F5F      SBCI	R21,0xFF
      A5 2E20      MOV	R2,R16
      A6 2433      CLR	R3
      A7 1542      CP	R20,R2
      A8 0553      CPC	R21,R3
      A9 F380      BCS	0x009A
      AA 940C 00C3 JMP	pop_xgsetF000
(0007)    }
(0008)    
(0009) }
(0010) 
(0011) void main()
(0012) { while(1)
_main:
      AC C00F      RJMP	0x00BC
(0013)    {  DDRB=0XFF;
      AD EF8F      LDI	R24,0xFF
      AE BB87      OUT	0x17,R24
(0014)      // PORTB=0XFF;
(0015)       PORTB&=~BIT(0);
      AF 98C0      CBI	0x18,0
(0016) 	  //PORTB=BIT(1)|BIT(2);
(0017) 	  delayms(30000);
      B0 E300      LDI	R16,0x30
      B1 DFE3      RCALL	_delayms
(0018) 	  PORTB=BIT(0)|BIT(2);
      B2 E085      LDI	R24,5
      B3 BB88      OUT	0x18,R24
(0019) 	  PORTB&=~BIT(1);
      B4 98C1      CBI	0x18,1
(0020) 	  delayms(30000);
      B5 E300      LDI	R16,0x30
      B6 DFDE      RCALL	_delayms
(0021) 	  PORTB=BIT(1)|BIT(0);
      B7 E083      LDI	R24,3
      B8 BB88      OUT	0x18,R24
(0022) 	  PORTB&=~BIT(2);
      B9 98C2      CBI	0x18,2
(0023) 	  delayms(3000);
FILE: <library>
      BA EB08      LDI	R16,0xB8
      BB DFD9      RCALL	_delayms
      BC CFF0      RJMP	0x00AD
      BD 9508      RET
push_xgsetF000:
      BE 937A      ST	R23,-Y
      BF 936A      ST	R22,-Y
      C0 935A      ST	R21,-Y
      C1 934A      ST	R20,-Y
      C2 9508      RET
pop_xgsetF000:
      C3 9149      LD	R20,Y+
      C4 9159      LD	R21,Y+
      C5 9169      LD	R22,Y+
      C6 9179      LD	R23,Y+
      C7 9508      RET

⌨️ 快捷键说明

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