📄 myc.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL2
Wed Mar 26 10:09:23 2008
1 processor 16F630
2 opt pw 79
3 psect __Z49231UD_,global,delta=1
4 psect rdata_0,global,class=BANK0,space=1,delta
+ =1
5 psect idata_0,global,class=CODE,delta=2
6 psect text0,local,class=CODE,delta=2
7 psect text1,local,class=CODE,delta=2
8 psect text2,local,class=CODE,delta=2
9 psect text3,local,class=CODE,delta=2
10 psect text4,local,class=CODE,delta=2
11 psect text5,local,class=CODE,delta=2
12 psect text6,local,class=CODE,delta=2
13 psect text7,local,class=CODE,delta=2
14 psect intcode,global,class=CODE,delta=2
15 psect intsave_0,global,ovrld,class=BANK0,space
+ =1,delta=1
16 psect intret,global,class=CODE,delta=2
17 psect intentry,global,class=CODE,delta=2
18 psect intsave,global,class=BANK0,space=1,delta
+ =1
19 psect text8,local,class=CODE,delta=2
20 psect strings,global,class=STRING,delta=2
21 psect rbit_0,global,bit,class=BANK0,space=1,de
+ lta=1
22 psect rbss_0,global,class=BANK0,space=1,delta=
+ 1
23 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
24 0000
25 0000
26 0000
27 0000
28 0000
29 0000
30 0000
31 0000
32 0000
33 0000
34
35 psect rdata_0
36 0032 _DeviceAddr
37 0032 ds 1
38 0033 ds 1
39 0034 ds 1
40 0035 ds 1
41 0036 ds 1
42 0037 ds 1
43 0038 ds 1
44 0039 ds 1
45 003A ds 1
46
47 psect idata_0
48 03F6 3431 retlw 49
49 03F7 3430 retlw 48
50 03F8 3431 retlw 49
51 03F9 3430 retlw 48
52 03FA 3466 retlw 102
53 03FB 3466 retlw 102
54 03FC 3466 retlw 102
55 03FD 3466 retlw 102
56 03FE 3400 retlw 0
57
58 psect text0
59 01EA _delay_150us
60 ; _t assigned to ?a_delay_150us+0
61 0000 _delay_150us$t set ?a_delay_150us
62 ; _j assigned to ?a_delay_150us+1
63 0000 _delay_150us$j set ?a_delay_150us+1
64 ; _k assigned to ?a_delay_150us+2
65 0000 _delay_150us$k set ?a_delay_150us+2
66 ;_t stored from w
67 01EA 1283 bcf 3,5
68 01EB 00AF movwf ?a_delay_150us
69 ;myc.c: 37: unsigned char j;
70 01EC 00B1 movwf ?a_delay_150us+2
71 01ED 08B1 movf ?a_delay_150us+2
72 01EE 1903 btfsc 3,2
73 01EF 0008 return
74 01F0 l2
75 ;myc.c: 39: for(j=50;--j;);
76 01F0 3032 movlw 50
77 01F1 00B0 movwf ?a_delay_150us+1
78 01F2 l8
79 01F2 0BB0 decfsz ?a_delay_150us+1
80 01F3 29F2 goto l8
81 01F4 0BB1 decfsz ?a_delay_150us+2
82 01F5 29F0 goto l2
83 01F6 0008 return
84
85 psect text1
86 ;myc.c: 41: void delay_50us(unsigned char t)
87 ;myc.c: 42: {
88 01F7 _delay_50us
89 ; _t assigned to ?a_delay_50us+0
90 0000 _delay_50us$t set ?a_delay_50us
91 ; _i assigned to ?a_delay_50us+1
92 0000 _delay_50us$i set ?a_delay_50us+1
93 ; _k assigned to ?a_delay_50us+2
94 0000 _delay_50us$k set ?a_delay_50us+2
95 ;_t stored from w
96 01F7 1283 bcf 3,5
97 01F8 00AF movwf ?a_delay_50us
98 ;myc.c: 43: unsigned char k;
99 01F9 00B1 movwf ?a_delay_50us+2
100 01FA 08B1 movf ?a_delay_50us+2
101 01FB 1903 btfsc 3,2
102 01FC 0008 return
103 01FD l10
104 ;myc.c: 46: for(i=14;--i;);
105 01FD 300E movlw 14
106 01FE 00B0 movwf ?a_delay_50us+1
107 01FF l16
108 01FF 0BB0 decfsz ?a_delay_50us+1
109 0200 29FF goto l16
110 0201 0BB1 decfsz ?a_delay_50us+2
111 0202 29FD goto l10
112 0203 0008 return
113
114 psect text2
115 ;myc.c: 49: void Convert()
116 ;myc.c: 50: {
117 0213 _Convert
118 ; _i assigned to ?a_Convert+0
119 0000 _Convert$i set ?a_Convert
120 ;myc.c: 51: unsigned char i;
121 0213 1283 bcf 3,5
122 0214 01A8 clrf ?a_Convert
123 0215 l18
124 ;myc.c: 53: if(DeviceAddr[i]=='0')
125 0215 0828 movf ?a_Convert,w
126 0216 3E32 addlw _DeviceAddr
127 0217 0084 movwf 4
128 0218 0800 movf 0,w
129 0219 3A30 xorlw 48
130 021A 1D03 btfss 3,2
131 021B 2A20 goto l21
132 ;myc.c: 54: { AddrH<<=2;
133 021C 1003 bcf 3,0
134 021D 0DA2 rlf _AddrH
135 021E 1003 bcf 3,0
136 021F 0DA2 rlf _AddrH
137 0220 l21
138 ;myc.c: 55: AddrH|=0;
139 0220 0828 movf ?a_Convert,w
140 0221 3E32 addlw _DeviceAddr
141 0222 0084 movwf 4
142 0223 0800 movf 0,w
143 0224 3A31 xorlw 49
144 0225 1D03 btfss 3,2
145 0226 2A2D goto l22
146 ;myc.c: 58: {
147 0227 1003 bcf 3,0
148 0228 0DA2 rlf _AddrH
149 0229 1003 bcf 3,0
150 022A 0DA2 rlf _AddrH
151 ;myc.c: 60: AddrH|=3;
152 022B 3003 movlw 3
153 022C 04A2 iorwf _AddrH
154 022D l22
155 ;myc.c: 61: }
156 022D 0828 movf ?a_Convert,w
157 022E 3E32 addlw _DeviceAddr
158 022F 0084 movwf 4
159 0230 0800 movf 0,w
160 0231 3A66 xorlw 102
161 0232 1D03 btfss 3,2
162 0233 2A39 goto l23
163 ;myc.c: 63: {
164 0234 1003 bcf 3,0
165 0235 0DA2 rlf _AddrH
166 0236 1003 bcf 3,0
167 0237 0DA2 rlf _AddrH
168 ;myc.c: 65: AddrH|=1;
169 0238 1422 bsf _AddrH,0
170 0239 l23
171 ;myc.c: 66: }
172 0239 0AA8 incf ?a_Convert
173 023A 3004 movlw 4
174 023B 0228 subwf ?a_Convert,w
175 023C 1C03 btfss 3,0
176 023D 2A15 goto l18
177 ;myc.c: 68: for(i=4;i<8;i++){
178 023E 3004 movlw 4
179 023F 00A8 movwf ?a_Convert
180 0240 l24
181 ;myc.c: 69: if(DeviceAddr[i]=='0')
182 0240 0828 movf ?a_Convert,w
183 0241 3E32 addlw _DeviceAddr
184 0242 0084 movwf 4
185 0243 0800 movf 0,w
186 0244 3A30 xorlw 48
187 0245 1D03 btfss 3,2
188 0246 2A4B goto l27
189 ;myc.c: 70: {
190 0247 1003 bcf 3,0
191 0248 0DA3 rlf _AddrL
192 0249 1003 bcf 3,0
193 024A 0DA3 rlf _AddrL
194 024B l27
195 ;myc.c: 72: AddrL|=0;
196 024B 0828 movf ?a_Convert,w
197 024C 3E32 addlw _DeviceAddr
198 024D 0084 movwf 4
199 024E 0800 movf 0,w
200 024F 3A31 xorlw 49
201 0250 1D03 btfss 3,2
202 0251 2A58 goto l28
203 ;myc.c: 75: {
204 0252 1003 bcf 3,0
205 0253 0DA3 rlf _AddrL
206 0254 1003 bcf 3,0
207 0255 0DA3 rlf _AddrL
208 ;myc.c: 77: AddrL|=3;
209 0256 3003 movlw 3
210 0257 04A3 iorwf _AddrL
211 0258 l28
212 ;myc.c: 78: }
213 0258 0828 movf ?a_Convert,w
214 0259 3E32 addlw _DeviceAddr
215 025A 0084 movwf 4
216 025B 0800 movf 0,w
217 025C 3A66 xorlw 102
218 025D 1D03 btfss 3,2
219 025E 2A64 goto l29
220 ;myc.c: 80: {
221 025F 1003 bcf 3,0
222 0260 0DA3 rlf _AddrL
223 0261 1003 bcf 3,0
224 0262 0DA3 rlf _AddrL
225 ;myc.c: 82: AddrL|=1;
226 0263 1423 bsf _AddrL,0
227 0264 l29
228 ;myc.c: 83: }
229 0264 0AA8 incf ?a_Convert
230 0265 3008 movlw 8
231 0266 0228 subwf ?a_Convert,w
232 0267 1803 btfsc 3,0
233 0268 0008 return
234 0269 2A40 goto l24
235
236 psect text3
237 026A _Send
238 ; _DAddr assigned to ?a_Send+0
239 0000 _Send$DAddr set ?a_Send
240 ; _temp assigned to ?a_Send+1
241 0000 _Send$temp set ?a_Send+1
242 ; _i assigned to ?a_Send+2
243 0000 _Send$i set ?a_Send+2
244 ;_DAddr stored from w
245 026A 1283 bcf 3,5
246 026B 00A9 movwf ?a_Send
247 ;myc.c: 88: DOUT=1;
248 026C 1607 bsf 7,4
249 ;myc.c: 89: delay_150us(2);
250 026D 3002 movlw 2
251 026E 1283 bcf 3,5
252 026F 21EA call _delay_150us
253 ;myc.c: 90: DOUT=0;
254 0270 1207 bcf 7,4
255 ;myc.c: 91: delay_150us(60);
256 0271 303C movlw 60
257 0272 21EA call _delay_150us
258 ;myc.c: 92: for(i=0;i<8;i++)
259 0273 01AB clrf ?a_Send+2
260 0274 l31
261 ;myc.c: 93: { temp=*DAddr++;
262 0274 0829 movf ?a_Send,w
263 0275 0084 movwf 4
264 0276 0800 movf 0,w
265 0277 00AA movwf ?a_Send+1
266 0278 0AA9 incf ?a_Send
267 ;myc.c: 94: if(temp=='1')
268 0279 3A31 xorlw 49
269 027A 1D03 btfss 3,2
270 027B 2A89 goto l34
271 ;myc.c: 95: { DOUT=1;
272 027C 1607 bsf 7,4
273 ;myc.c: 96: delay_150us(6);
274 027D 3006 movlw 6
275 027E 1283 bcf 3,5
276 027F 21EA call _delay_150us
277 ;myc.c: 97: DOUT=0;
278 0280 1207 bcf 7,4
279 ;myc.c: 98: delay_150us(2);
280 0281 3002 movlw 2
281 0282 21EA call _delay_150us
282 ;myc.c: 99: DOUT=1;
283 0283 1607 bsf 7,4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -