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 + -
显示快捷键?