📄 lcd1602c.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-49394 Wed Jul 11 13:56:54 2007
Licensed to: ONE
1 processor 16F877A
2 opt pw 79
3 psect __Z49394RS_,global,delta=1
4 psect strings,global,class=STRING,delta=2
5 psect const1,local,class=CONST,delta=2
6 psect const2,local,class=CONST,delta=2
7 psect const3,local,class=CONST,delta=2
8 psect const4,local,class=CONST,delta=2
9 psect text2,local,class=CODE,delta=2
10 psect text4,local,class=CODE,delta=2
11 psect text10,local,class=CODE,delta=2
12 0000
13 0000
14 0000
15 0000
16 0000
17 0000
18 0000
19 0000
20 0000
21 0000
22
23 psect __Z49394RS_
24 0190
25 0190
26
27 psect const1
28 0037 0782 addwf 2
29 0038 _dis0
30 0038 3457 retlw 87
31 0039 3465 retlw 101
32 003A 346C retlw 108
33 003B 3463 retlw 99
34 003C 346F retlw 111
35 003D 346D retlw 109
36 003E 3465 retlw 101
37 003F 3400 retlw 0
38
39 psect const2
40 0019 0782 addwf 2
41 001A _dis1
42 001A 3477 retlw 119
43 001B 3477 retlw 119
44 001C 3477 retlw 119
45 001D 342E retlw 46
46 001E 3435 retlw 53
47 001F 3432 retlw 50
48 0020 3437 retlw 55
49 0021 3464 retlw 100
50 0022 347A retlw 122
51 0023 342E retlw 46
52 0024 3463 retlw 99
53 0025 346F retlw 111
54 0026 346D retlw 109
55 0027 3421 retlw 33
56 0028 3400 retlw 0
57
58 psect const3
59 0029 0782 addwf 2
60 002A _dis2
61 002A 3470 retlw 112
62 002B 3465 retlw 101
63 002C 346E retlw 110
64 002D 3467 retlw 103
65 002E 347A retlw 122
66 002F 3468 retlw 104
67 0030 3461 retlw 97
68 0031 346E retlw 110
69 0032 3467 retlw 103
70 0033 346A retlw 106
71 0034 3475 retlw 117
72 0035 346E retlw 110
73 0036 3400 retlw 0
74
75 psect const4
76 0008 0782 addwf 2
77 0009 _dis3
78 0009 3474 retlw 116
79 000A 3465 retlw 101
80 000B 346C retlw 108
81 000C 343A retlw 58
82 000D 3431 retlw 49
83 000E 3433 retlw 51
84 000F 3437 retlw 55
85 0010 3439 retlw 57
86 0011 3435 retlw 53
87 0012 3439 retlw 57
88 0013 3435 retlw 53
89 0014 3433 retlw 51
90 0015 3430 retlw 48
91 0016 3434 retlw 52
92 0017 3437 retlw 55
93 0018 3400 retlw 0
94
95 psect text2
96 06E7 _LCD_write_cmd
97 ;lcd1602c.c: 56: PORTC=command;
98 06E7 0183 clrf 3 ;select bank 0
99 06E8 0825 movf ?_LCD_write_cmd,w
100 06E9 0087 movwf 7 ;volatile
101 ;lcd1602c.c: 57: RA1=0;
102 06EA 1085 bcf 5,1
103 ;lcd1602c.c: 58: RA2=0;
104 06EB 1105 bcf 5,2
105 ;lcd1602c.c: 59: LCD_en_write();
106 06EC 2F57 ljmp _LCD_en_write
107 06ED _LCD_set_xy
108 ; _x assigned to ?a_LCD_set_xy+0
109 0000 _LCD_set_xy$x set ?a_LCD_set_xy
110 ; _address assigned to ?a_LCD_set_xy+1
111 0000 _LCD_set_xy$address set ?a_LCD_set_xy+1
112 ;_x stored from w
113 06ED 0183 clrf 3 ;select bank 0
114 06EE 00A3 movwf ?a_LCD_set_xy
115 ;lcd1602c.c: 104: unsigned char address;
116 06EF 08A2 movf ?_LCD_set_xy
117 06F0 1D03 btfss 3,2
118 06F1 2EF5 goto l10
119 06F2 0823 movf ?a_LCD_set_xy,w
120 06F3 3E80 addlw -128
121 06F4 2EF7 goto L1
122 ;lcd1602c.c: 106: else
123 06F5 l10
124 ;lcd1602c.c: 107: address = 0xc0 + x;
125 06F5 0823 movf ?a_LCD_set_xy,w
126 06F6 3EC0 addlw -64
127 06F7 L1
128 06F7 00A4 movwf ?a_LCD_set_xy+1
129 ;lcd1602c.c: 108: LCD_write_cmd( address );
130 06F8 00A5 movwf ?_LCD_write_cmd
131 06F9 01A6 clrf ?_LCD_write_cmd+1
132 06FA 2EE7 ljmp _LCD_write_cmd
133 06FB _LCD_write_data
134 ;lcd1602c.c: 76: PORTC = data;
135 06FB 0183 clrf 3 ;select bank 0
136 06FC 0822 movf ?_LCD_write_data,w
137 06FD 0087 movwf 7 ;volatile
138 ;lcd1602c.c: 77: RA1=1;
139 06FE 1485 bsf 5,1
140 ;lcd1602c.c: 78: RA2=0;
141 06FF 1105 bcf 5,2
142 ;lcd1602c.c: 79: LCD_en_write();
143 0700 2F57 ljmp _LCD_en_write
144 0701 _LCD_write_string
145 ; _X assigned to ?a_LCD_write_string+0
146 0000 _LCD_write_string$X set ?a_LCD_write_string
147 ;_X stored from w
148 0701 0183 clrf 3 ;select bank 0
149 0702 00A0 movwf ?a_LCD_write_string
150 ;lcd1602c.c: 121: LCD_set_xy( X, Y );
151 0703 0820 movf ?_LCD_write_string,w
152 0704 00A2 movwf ?_LCD_set_xy
153 0705 0820 movf ?a_LCD_write_string,w
154 0706 26ED 120A 118A fcall _LCD_set_xy
155 ;lcd1602c.c: 123: while (*s)
156 0709 2F14 goto l13
157 070A l14
158 ;lcd1602c.c: 124: {
159 070A 0821 movf ?_LCD_write_string+1,w
160 070B 0084 movwf 4
161 070C 1383 bcf 3,7
162 070D 0800 movf 0,w
163 070E 00A2 movwf ?_LCD_write_data
164 070F 01A3 clrf ?_LCD_write_data+1
165 0710 26FB 120A 118A fcall _LCD_write_data
166 ;lcd1602c.c: 126: s ++;
167 0713 0AA1 incf ?_LCD_write_string+1
168 0714 l13
169 ;lcd1602c.c: 127: }
170 0714 0821 movf ?_LCD_write_string+1,w
171 0715 0084 movwf 4
172 0716 1383 bcf 3,7
173 0717 0880 movf 0
174 0718 1903 btfsc 3,2
175 0719 0008 return
176 071A 2F0A goto l14
177 ;lcd1602c.c: 187: void delay_1ms(void)
178 ;lcd1602c.c: 188: {
179 071B _delay_1ms
180 ; _i assigned to ?a_delay_1ms+0
181 0000 _delay_1ms$i set ?a_delay_1ms
182 ;lcd1602c.c: 189: unsigned int i;
183 071B 0183 clrf 3 ;select bank 0
184 071C 01AB clrf ?a_delay_1ms
185 071D 01AC clrf ?a_delay_1ms+1
186 071E l33
187 071E 0AAB incf ?a_delay_1ms
188 071F 1903 btfsc 3,2
189 0720 0AAC incf ?a_delay_1ms+1
190 0721 3003 movlw 3
191 0722 022C subwf ?a_delay_1ms+1,w
192 0723 30E8 movlw 232
193 0724 1903 btfsc 3,2
194 0725 022B subwf ?a_delay_1ms,w
195 0726 1803 btfsc 3,0
196 0727 0008 return
197 0728 2F1E goto l33
198 0729 _delay_nms
199 ; _j assigned to ?a_delay_nms+0
200 0000 _delay_nms$j set ?a_delay_nms
201 ;lcd1602c.c: 195: unsigned int j=0;
202 0729 0183 clrf 3 ;select bank 0
203 072A 01A9 clrf ?a_delay_nms
204 072B 01AA clrf ?a_delay_nms+1
205 ;lcd1602c.c: 196: for (j=0;j<n;j++)
206 072C 01A9 clrf ?a_delay_nms
207 072D 01AA clrf ?a_delay_nms+1
208 072E 2F33 goto l40
209 072F l37
210 ;lcd1602c.c: 197: delay_1ms();
211 072F 271B fcall _delay_1ms
212 0730 0AA9 incf ?a_delay_nms
213 0731 1903 btfsc 3,2
214 0732 0AAA incf ?a_delay_nms+1
215 0733 l40
216 0733 0828 movf ?_delay_nms+1,w
217 0734 022A subwf ?a_delay_nms+1,w
218 0735 1D03 btfss 3,2
219 0736 2F39 goto u95
220 0737 0827 movf ?_delay_nms,w
221 0738 0229 subwf ?a_delay_nms,w
222 0739 u95
223 0739 1803 btfsc 3,0
224 073A 0008 return
225 073B 2F2F goto l37
226 073C _LCD_init
227 ;lcd1602c.c: 32: delay_nms(15);
228 073C 300F movlw 15
229 073D 0183 clrf 3 ;select bank 0
230 073E 00A7 movwf ?_delay_nms
231 073F 01A8 clrf ?_delay_nms+1
232 0740 2729 fcall _delay_nms
233 ;lcd1602c.c: 34: LCD_write_cmd(0x38);
234 0741 3038 movlw 56
235 0742 00A5 movwf ?_LCD_write_cmd
236 0743 01A6 clrf ?_LCD_write_cmd+1
237 0744 26E7 120A 118A fcall _LCD_write_cmd
238 ;lcd1602c.c: 35: LCD_write_cmd(0x0f);
239 0747 300F movlw 15
240 0748 00A5 movwf ?_LCD_write_cmd
241 0749 01A6 clrf ?_LCD_write_cmd+1
242 074A 26E7 120A 118A fcall _LCD_write_cmd
243 ;lcd1602c.c: 36: LCD_write_cmd(0x01);
244 074D 01A5 clrf ?_LCD_write_cmd
245 074E 0AA5 incf ?_LCD_write_cmd
246 074F 01A6 clrf ?_LCD_write_cmd+1
247 0750 26E7 120A 118A fcall _LCD_write_cmd
248 ;lcd1602c.c: 37: LCD_write_cmd(0x06);
249 0753 3006 movlw 6
250 0754 00A5 movwf ?_LCD_write_cmd
251 0755 01A6 clrf ?_LCD_write_cmd+1
252 0756 2EE7 ljmp _LCD_write_cmd
253 0757 _LCD_en_write
254 ;lcd1602c.c: 42: RA3 = 0;
255 0757 0183 clrf 3 ;select bank 0
256 0758 1185 bcf 5,3
257 ;lcd1602c.c: 43: delay_nms(10);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -