📄 reclama3.lst
字号:
__start:
__text_start:
13 E5CF LDI R28,0x5F
14 E0D4 LDI R29,4
15 BFCD OUT 0x3D,R28
16 BFDE OUT 0x3E,R29
17 51CE SUBI R28,0x1E
18 40D0 SBCI R29,0
19 EA0A LDI R16,0xAA
1A 8308 STD Y+0,R16
1B 2400 CLR R0
1C E6E0 LDI R30,0x60
1D E0F0 LDI R31,0
1E E010 LDI R17,0
1F 36E0 CPI R30,0x60
20 07F1 CPC R31,R17
21 F011 BEQ 0x0024
22 9201 ST R0,Z+
23 CFFB RJMP 0x001F
24 8300 STD Z+0,R16
25 E2E6 LDI R30,0x26
26 E0F0 LDI R31,0
27 E6A0 LDI R26,0x60
28 E0B0 LDI R27,0
29 E010 LDI R17,0
2A E000 LDI R16,0
2B BF0B OUT 0x3B,R16
2C 32E6 CPI R30,0x26
2D 07F1 CPC R31,R17
2E F021 BEQ 0x0033
2F 95C8 LPM
30 9631 ADIW R30,1
31 920D ST R0,X+
32 CFF9 RJMP 0x002C
33 D082 RCALL _main
_exit:
34 CFFF RJMP _exit
FILE: C:\tempAVR\RECLAM~1\delay_fct3.c
(0001) #include <string.h>
(0002) #include <iom8v.h>
(0003) #include <EEPROM.h>
(0004) #include "delay_fct3.h"
(0005) #include "reclama_fct3.h"
(0006)
(0007)
(0008) void clock(void){
(0009) PORTB|=(1<<PORTD2);
_clock:
35 9AC2 SBI 0x18,2
(0010) PORTB&=~(1<<PORTD2);
36 98C2 CBI 0x18,2
37 9508 RET
_delay8_us:
k --> R20
us --> R16
38 934A ST R20,-Y
39 935A ST R21,-Y
(0011) }
(0012) /* ********************* */
(0013) void delay8_us(int us){
(0014) int k;
(0015) for(k=0;k<us;k++) asm( " nop \n"
3A 2744 CLR R20
3B 2755 CLR R21
3C C004 RJMP 0x0041
3D 0000 NOP
3E 0000 NOP
3F 5F4F SUBI R20,0xFF
40 4F5F SBCI R21,0xFF
41 1740 CP R20,R16
42 0751 CPC R21,R17
43 F3CC BLT 0x003D
44 9159 LD R21,Y+
45 9149 LD R20,Y+
46 9508 RET
_delay8_ms:
k --> R20
ms --> R16
47 934A ST R20,-Y
48 935A ST R21,-Y
(0016) " nop ");
(0017) }
(0018) /* ******************** */
(0019) void delay8_ms(int ms){
(0020) int k;
(0021) for(k=0;k<ms;k++){ asm( "ldi R17, $0C \n"
49 2744 CLR R20
4A 2755 CLR R21
4B C00A RJMP 0x0056
4C E01C LDI R17,0xC
4D ED2D LDI R18,0xDD
4E 952A DEC R18
4F F7F1 BNE 0x004E
50 951A DEC R17
51 F7D9 BNE 0x004D
52 0000 NOP
53 0000 NOP
54 5F4F SUBI R20,0xFF
55 4F5F SBCI R21,0xFF
56 1740 CP R20,R16
57 0751 CPC R21,R17
58 F39C BLT 0x004C
59 9159 LD R21,Y+
5A 9149 LD R20,Y+
5B 9508 RET
_fig_dec:
col --> Y,+0
fig --> R12
5C D326 RCALL push_xgset303C
5D 2EC2 MOV R12,R18
5E 0158 MOVW R10,R16
5F 9725 SBIW R28,5
FILE: C:\tempAVR\RECLAM~1\matrice_caractere3.c
(0001) #include "reclama_fct3.h"
(0002)
(0003) struct coloana fig_dec (uc_8 fig){
(0004) struct coloana col;
(0005) switch(fig) {
60 2D4C MOV R20,R12
61 2755 CLR R21
62 3040 CPI R20,0
63 0745 CPC R20,R21
64 F089 BEQ 0x0076
65 3041 CPI R20,1
66 E0E0 LDI R30,0
67 075E CPC R21,R30
68 F0C1 BEQ 0x0081
69 3042 CPI R20,2
6A E0E0 LDI R30,0
6B 075E CPC R21,R30
6C F0F9 BEQ 0x008C
6D 3043 CPI R20,3
6E E0E0 LDI R30,0
6F 075E CPC R21,R30
70 F131 BEQ 0x0097
71 3044 CPI R20,4
72 E0E0 LDI R30,0
73 075E CPC R21,R30
74 F169 BEQ 0x00A2
75 C036 RJMP 0x00AC
(0006) case 0: {col.c[0]=4;col.c[1]=58;col.c[2]=79;col.c[3]=58;col.c[4]=4;break; }
76 E084 LDI R24,4
77 8388 STD Y+0,R24
78 E38A LDI R24,0x3A
79 8389 STD Y+1,R24
7A E48F LDI R24,0x4F
7B 838A STD Y+2,R24
7C E38A LDI R24,0x3A
7D 838B STD Y+3,R24
7E E084 LDI R24,4
7F 838C STD Y+4,R24
80 C02B RJMP 0x00AC
(0007) case 1: {col.c[0]=2;col.c[1]=58;col.c[2]=79;col.c[3]=58;col.c[4]=2;break; }
81 E082 LDI R24,2
82 8388 STD Y+0,R24
83 E38A LDI R24,0x3A
84 8389 STD Y+1,R24
85 E48F LDI R24,0x4F
86 838A STD Y+2,R24
87 E38A LDI R24,0x3A
88 838B STD Y+3,R24
89 E082 LDI R24,2
8A 838C STD Y+4,R24
8B C020 RJMP 0x00AC
(0008) case 2: {col.c[0]=1;col.c[1]=58;col.c[2]=79;col.c[3]=58;col.c[4]=1;break; }
8C E081 LDI R24,1
8D 8388 STD Y+0,R24
8E E38A LDI R24,0x3A
8F 8389 STD Y+1,R24
90 E48F LDI R24,0x4F
91 838A STD Y+2,R24
92 E38A LDI R24,0x3A
93 838B STD Y+3,R24
94 E081 LDI R24,1
95 838C STD Y+4,R24
96 C015 RJMP 0x00AC
(0009) case 3: {col.c[0]=4;col.c[1]=58;col.c[2]=79;col.c[3]=58;col.c[4]=1;break; }
97 E084 LDI R24,4
98 8388 STD Y+0,R24
99 E38A LDI R24,0x3A
9A 8389 STD Y+1,R24
9B E48F LDI R24,0x4F
9C 838A STD Y+2,R24
9D E38A LDI R24,0x3A
9E 838B STD Y+3,R24
9F E081 LDI R24,1
A0 838C STD Y+4,R24
A1 C00A RJMP 0x00AC
(0010) case 4: {col.c[0]=1;col.c[1]=58;col.c[2]=79;col.c[3]=58;col.c[4]=4;break; }
A2 E081 LDI R24,1
A3 8388 STD Y+0,R24
A4 E38A LDI R24,0x3A
A5 8389 STD Y+1,R24
A6 E48F LDI R24,0x4F
A7 838A STD Y+2,R24
A8 E38A LDI R24,0x3A
A9 838B STD Y+3,R24
AA E084 LDI R24,4
AB 838C STD Y+4,R24
(0011)
(0012) }
(0013) return col;
AC 01CE MOVW R24,R28
AD E005 LDI R16,5
AE E010 LDI R17,0
AF 92BA ST R11,-Y
B0 92AA ST R10,-Y
B1 939A ST R25,-Y
B2 938A ST R24,-Y
B3 D2EF RCALL asgnblk
B4 9625 ADIW R28,5
B5 C2D4 RJMP pop_xgset303C
_main:
i --> Y,+1
p1 --> Y,+0
B6 97EF SBIW R28,0x3F
B7 97A5 SBIW R28,0x25
FILE: C:\tempAVR\RECLAM~1\reclama3.c
(0001) #include <iom8v.h>
(0002) #include <string.h>
(0003) #include <stdlib.h>
(0004) #include <eeprom.h>
(0005) #include "delay_fct3.h"
(0006) #include "reclama_fct3.h"
(0007)
(0008)
(0009) void main(void){
(0010) uc_8 i;
(0011) struct poza p1;//,p2,p3,p4,p5;
(0012) init_uc();
B8 D21E RCALL _init_uc
(0013) p1.A[0]=49;p1.B[0]=0;
B9 E381 LDI R24,0x31
BA 8388 STD Y+0,R24
BB 2422 CLR R2
BC 8E29 STD Y+25,R2
(0014) p1.A[1]=2;p1.B[1]=8;
BD E082 LDI R24,2
BE 8389 STD Y+1,R24
BF E088 LDI R24,0x8
C0 8F8A STD Y+26,R24
(0015) p1.A[2]=116;p1.B[2]=127;
C1 E784 LDI R24,0x74
C2 838A STD Y+2,R24
C3 E78F LDI R24,0x7F
C4 8F8B STD Y+27,R24
(0016) p1.A[3]=16;p1.B[3]=127;
C5 E180 LDI R24,0x10
C6 838B STD Y+3,R24
C7 E78F LDI R24,0x7F
C8 8F8C STD Y+28,R24
(0017) p1.A[4]=39;p1.B[4]=1;
C9 E287 LDI R24,0x27
CA 838C STD Y+4,R24
CB E081 LDI R24,1
CC 8F8D STD Y+29,R24
(0018) p1.A[5]=64;p1.B[5]=8;
CD E480 LDI R24,0x40
CE 838D STD Y+5,R24
CF E088 LDI R24,0x8
D0 8F8E STD Y+30,R24
(0019) p1.A[6]=4;p1.B[6]=0;
D1 E084 LDI R24,4
D2 838E STD Y+6,R24
D3 8E2F STD Y+31,R2
(0020) p1.A[7]=0;p1.B[7]=8;
D4 822F STD Y+7,R2
D5 E088 LDI R24,0x8
D6 A388 STD Y+32,R24
(0021) p1.A[8]=16;p1.B[8]=8;
D7 E180 LDI R24,0x10
D8 8788 STD Y+8,R24
D9 E088 LDI R24,0x8
DA A389 STD Y+33,R24
(0022) p1.A[9]=32;p1.B[9]=8;
DB E280 LDI R24,0x20
DC 8789 STD Y+9,R24
DD E088 LDI R24,0x8
DE A38A STD Y+34,R24
(0023) p1.A[10]=64;p1.B[10]=127;
DF E480 LDI R24,0x40
E0 878A STD Y+10,R24
E1 E78F LDI R24,0x7F
E2 A38B STD Y+35,R24
(0024) p1.A[11]=4;p1.B[11]=28;
E3 E084 LDI R24,4
E4 878B STD Y+11,R24
E5 E18C LDI R24,0x1C
E6 A38C STD Y+36,R24
(0025) p1.A[12]=4;p1.B[12]=28;
E7 E084 LDI R24,4
E8 878C STD Y+12,R24
E9 E18C LDI R24,0x1C
EA A38D STD Y+37,R24
(0026) p1.A[13]=4;p1.B[13]=31;
EB E084 LDI R24,4
EC 878D STD Y+13,R24
ED E18F LDI R24,0x1F
EE A38E STD Y+38,R24
(0027) p1.A[14]=4;p1.B[14]=24;
EF E084 LDI R24,4
F0 878E STD Y+14,R24
F1 E188 LDI R24,0x18
F2 A38F STD Y+39,R24
(0028) p1.A[15]=4;p1.B[15]=124;
F3 E084 LDI R24,4
F4 878F STD Y+15,R24
F5 E78C LDI R24,0x7C
F6 A788 STD Y+40,R24
(0029) p1.A[16]=4;p1.B[16]=26;
F7 E084 LDI R24,4
F8 8B88 STD Y+16,R24
F9 E18A LDI R24,0x1A
FA A789 STD Y+41,R24
(0030) p1.A[17]=15;p1.B[17]=26;
FB E08F LDI R24,0xF
FC 8B89 STD Y+17,R24
FD E18A LDI R24,0x1A
FE A78A STD Y+42,R24
(0031) p1.A[18]=4;p1.B[18]=124;
FF E084 LDI R24,4
100 8B8A STD Y+18,R24
101 E78C LDI R24,0x7C
102 A78B STD Y+43,R24
(0032) p1.A[19]=15;p1.B[19]=24;
103 E08F LDI R24,0xF
104 8B8B STD Y+19,R24
105 E188 LDI R24,0x18
106 A78C STD Y+44,R24
(0033) p1.A[20]=4;p1.B[20]=24;
107 E084 LDI R24,4
108 8B8C STD Y+20,R24
109 E188 LDI R24,0x18
10A A78D STD Y+45,R24
(0034) p1.A[21]=64;p1.B[21]=127;
10B E480 LDI R24,0x40
10C 8B8D STD Y+21,R24
10D E78F LDI R24,0x7F
10E A78E STD Y+46,R24
(0035) p1.A[22]=32;p1.B[22]=8;
10F E280 LDI R24,0x20
110 8B8E STD Y+22,R24
111 E088 LDI R24,0x8
112 A78F STD Y+47,R24
(0036) p1.A[23]=16;p1.B[23]=8;
113 E180 LDI R24,0x10
114 8B8F STD Y+23,R24
115 E088 LDI R24,0x8
116 AB88 STD Y+48,R24
(0037) p1.A[24]=0;p1.B[24]=8;
117 8E28 STD Y+24,R2
118 AB89 STD Y+49,R24
(0038)
(0039)
(0040) afisheaza_poza(p1);
119 01CE MOVW R24,R28
11A 01FE MOVW R30,R28
11B 96F2 ADIW R30,0x32
11C E302 LDI R16,0x32
11D E010 LDI R17,0
11E 93FA ST R31,-Y
11F 93EA ST R30,-Y
120 939A ST R25,-Y
121 938A ST R24,-Y
122 D280 RCALL asgnblk
123 018E MOVW R16,R28
124 5C0E SUBI R16,0xCE
125 4F1F SBCI R17,0xFF
126 D1DE RCALL _afisheaza_poza
127 C002 RJMP 0x012A
(0041)
(0042) while(1) {clip(1);}
128 E001 LDI R16,1
129 D1CD RCALL _clip
12A CFFD RJMP 0x0128
12B 96EF ADIW R28,0x3F
12C 96A5 ADIW R28,0x25
12D 9508 RET
_send_octetA:
i --> R20
oct --> R10
12E D240 RCALL push_xgset300C
12F 0158 MOVW R10,R16
FILE: C:\tempAVR\RECLAM~1\reclama_fct3.c
(0001) #include <string.h>
(0002) #include <iom8v.h>
(0003) #include <EEPROM.h>
(0004) #include "reclama_fct3.h"
(0005) #include "delay_fct3.h"
(0006) #define zero 0x00
(0007) #define unu 0x01
(0008) #define doi 0x02
(0009) #define trei 0x03
(0010)
(0011) /* ********************** */
(0012) void send_octetA(struct octet oct){
(0013) uc_8 i;
(0014) for(i=0;i<8;i++) send_bitA(oct.a[i]);
130 2744 CLR R20
131 C007 RJMP 0x0139
132 2FE4 MOV R30,R20
133 27FF CLR R31
134 0DEA ADD R30,R10
135 1DFB ADC R31,R11
136 8100 LDD R16,Z+0
137 D053 RCALL _send_bitA
138 9543 INC R20
139 3048 CPI R20,0x8
13A F3B8 BCS 0x0132
13B C238 RJMP pop_xgset300C
_send_octetB:
i --> R20
oct --> R10
13C D232 RCALL push_xgset300C
13D 0158 MOVW R10,R16
(0015) }
(0016) /* ********************** */
(0017) void send_octetB(struct octet oct){
(0018) uc_8 i;
(0019) for(i=0;i<8;i++) send_bitB(oct.a[i]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -