📄 util_mc.lst
字号:
HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-34349 Thu Oct 26 15:45:38 2006
Licensed to: ONE
1 processor 16F877A
2 opt pw 79
3 psect __Z34349RS_,global,delta=1
4 psect text3,local,class=CODE,delta=2
5 psect text4,local,class=CODE,delta=2
6 psect text6,local,class=CODE,delta=2
7 psect text7,local,class=CODE,delta=2
8 psect text8,local,class=CODE,delta=2
9 psect text9,local,class=CODE,delta=2
10 psect text10,local,class=CODE,delta=2
11 psect strings,global,class=STRING,delta=2
12 psect rbss_1,global,class=BANK1,space=1,delta=
+ 1
13 psect temp,global,ovrld,class=BANK0,space=1,de
+ lta=1
14 0000
15 0000
16 0000
17 0000
18 0000
19 0000
20 0000
21 0000
22 0000
23 0000
24
25 psect __Z34349RS_
26 0190
27 0190
28 ;mcp2510.h: 247: extern void mcp_read_can ( uch
+ ar buffer, uchar* ext, unsigned long* can_id,
29 ;mcp2510.h: 257: extern void mcp_write_can (uch
+ ar buffer, uchar ext, unsigned long can_id,
30 ; param _cnt assigned to ?_DelayF+0
31 0000 _DelayF$cnt set ?_DelayF
32
33 psect text3
34 ;util_mc.c: 69: void analogueSetup(void) {
35 0A7F _analogueSetup
36 ;util_mc.c: 70: TRISA0 = 1;
37 0A7F 1683 bsf 3,5
38 0A80 1303 bcf 3,6 ;carry unused
39 0A81 1405 bsf 5,0
40 ;util_mc.c: 74: ADCON1 = 0x00;
41 0A82 019F clrf 31 ;volatile
42 ;util_mc.c: 81: ADCON0 = 0x41;
43 0A83 3041 movlw 65
44 0A84 1283 bcf 3,5
45 0A85 009F movwf 31 ;volatile
46 ;util_mc.c: 82: }
47 0A86 0008 return
48 ;util_mc.c: 99: bank1 uint tc;
49 ;util_mc.c: 109: void timerSetup(void) {
50 0A87 _timerSetup
51 ;util_mc.c: 110: tc = 0;
52 0A87 1683 bsf 3,5
53 0A88 1303 bcf 3,6 ;carry unused
54 0A89 01A3 clrf _tc^(0+128)
55 0A8A 01A4 clrf (_tc+1)^(0+128)
56 ;util_mc.c: 111: TMR0=255;
57 0A8B 30FF movlw -1
58 0A8C 1283 bcf 3,5
59 0A8D 0081 movwf 1 ;volatile
60 ;util_mc.c: 113: T0CS = 0;
61 0A8E 1683 bsf 3,5
62 0A8F 1281 bcf 1,5
63 ;util_mc.c: 114: PSA = 0;
64 0A90 1181 bcf 1,3
65 ;util_mc.c: 115: PS2 = 1; PS1 = 1; PS0 = 1;
66 0A91 1501 bsf 1,2
67 0A92 1481 bsf 1,1
68 0A93 1401 bsf 1,0
69 ;util_mc.c: 117: T0IE = 1;
70 0A94 168B bsf 11,5
71 ;util_mc.c: 118: T0IF = 0;
72 0A95 110B bcf 11,2
73 ;util_mc.c: 119: GIE = 1;
74 0A96 178B bsf 11,7
75 ;util_mc.c: 120: }
76 0A97 1283 bcf 3,5
77 0A98 0008 return
78 ;util_mc.c: 28: void mcp_init_ports(void)
79 ;util_mc.c: 29: {
80 0A99 _mcp_init_ports
81 ;util_mc.c: 31: SPI_mcp_write_bits(0x0D, 0 , 0x
+ FF);
82 0A99 0183 clrf 3 ;select bank 0
83 0A9A 01CF clrf ?_SPI_mcp_write_bits
84 0A9B 30FF movlw -1
85 0A9C 00D0 movwf ?_SPI_mcp_write_bits+1
86 0A9D 300D movlw 13
87 0A9E 120A 158A 21CE fcall _SPI_mcp_write_bits
+ 120A 158A
88 ;util_mc.c: 34: SPI_mcp_write_bits(0x0C, 0x3C,
+ 0xFF );
89 0AA3 303C movlw 60
90 0AA4 00CF movwf ?_SPI_mcp_write_bits
91 0AA5 30FF movlw -1
92 0AA6 00D0 movwf ?_SPI_mcp_write_bits+1
93 0AA7 300C movlw 12
94 0AA8 120A 158A 29CE ljmp _SPI_mcp_write_bits
95 0AAB _DelayF
96 ; _i assigned to ?a_DelayF+0
97 0000 _DelayF$i set ?a_DelayF
98 ;util_mc.c: 23: int i;
99 0AAB 2ABB goto l3
100 0AAC l4
101 ;util_mc.c: 25: for(i=0;i<100;i++);
102 0AAC 01A5 clrf ?a_DelayF
103 0AAD 01A6 clrf ?a_DelayF+1
104 0AAE l6
105 0AAE 0AA5 incf ?a_DelayF
106 0AAF 1903 btfsc 3,2
107 0AB0 0AA6 incf ?a_DelayF+1
108 0AB1 0826 movf ?a_DelayF+1,w
109 0AB2 3A80 xorlw 128
110 0AB3 00F0 movwf btemp
111 0AB4 3080 movlw 128
112 0AB5 0270 subwf btemp,w
113 0AB6 3064 movlw 100
114 ;set bank bits for (((?a_DelayF+0)))
115 0AB7 1903 btfsc 3,2
116 0AB8 0225 subwf ?a_DelayF,w
117 0AB9 1C03 btfss 3,0
118 0ABA 2AAE goto l6
119 0ABB l3
120 0ABB 1283 bcf 3,5
121 0ABC 1303 bcf 3,6 ;carry unused
122 0ABD 0823 movf ?_DelayF,w
123 0ABE 1903 btfsc 3,2
124 0ABF 03A4 decf ?_DelayF+1
125 0AC0 03A3 decf ?_DelayF
126 0AC1 0A23 incf ?_DelayF,w
127 0AC2 1903 btfsc 3,2
128 0AC3 0A24 incf ?_DelayF+1,w
129 0AC4 1903 btfsc 3,2
130 0AC5 0008 return
131 0AC6 2AAC goto l4
132 ;util_mc.c: 37: void setupModule(void) {
133 0AC7 _setupModule
134 ;util_mc.c: 38: TRISB = 0x00;
135 0AC7 1683 bsf 3,5
136 0AC8 1303 bcf 3,6 ;carry unused
137 0AC9 0186 clrf 6 ;volatile
138 ;util_mc.c: 39: TRISA = 0xFF;
139 0ACA 30FF movlw -1
140 0ACB 0085 movwf 5 ;volatile
141 ;util_mc.c: 40: TRISC = 0x00;
142 0ACC 0187 clrf 7 ;volatile
143 ;util_mc.c: 41: PORTC = 0xFF;
144 0ACD 1283 bcf 3,5
145 0ACE 0087 movwf 7 ;volatile
146 ;util_mc.c: 42: PORTB = 0x00;
147 0ACF 0186 clrf 6 ;volatile
148 ;util_mc.c: 43: async_Init();
149 0AD0 120A 158A 20C1 fcall _async_Init
150 ;util_mc.c: 45: printf("Module started\n\r");
151 0AD3 305A movlw low u19
152 0AD4 00C6 movwf ?_printf+1
153 0AD5 3001 movlw high u19
154 0AD6 00C7 movwf ?_printf+2
155 0AD7 120A 158A 2061 fcall _printf
156 ;util_mc.c: 47: SPI_init_hw();
157 0ADA 120A 158A 20DE fcall _SPI_init_hw
+ 120A 158A
158 ;util_mc.c: 49: RC1 = 1;
159 0ADF 1487 bsf 7,1
160 ;util_mc.c: 50: DelayF(100);
161 0AE0 3064 movlw 100
162 0AE1 00A3 movwf ?_DelayF
163 0AE2 01A4 clrf ?_DelayF+1
164 0AE3 22AB fcall _DelayF
165 ;util_mc.c: 51: RC1 = 0;
166 0AE4 1087 bcf 7,1
167 ;util_mc.c: 52: DelayF(100);
168 0AE5 3064 movlw 100
169 0AE6 00A3 movwf ?_DelayF
170 0AE7 01A4 clrf ?_DelayF+1
171 0AE8 22AB fcall _DelayF
172 ;util_mc.c: 53: RC1 = 1;
173 0AE9 1487 bsf 7,1
174 ;util_mc.c: 54: DelayF(200);
175 0AEA 30C8 movlw 200
176 0AEB 00A3 movwf ?_DelayF
177 0AEC 01A4 clrf ?_DelayF+1
178 0AED 22AB fcall _DelayF
179 ;util_mc.c: 56: mcp_reset();
180 0AEE 120A 158A 205E fcall _mcp_reset
+ 120A 158A
181 ;util_mc.c: 59: DelayF(200);
182 0AF3 30C8 movlw 200
183 0AF4 00A3 movwf ?_DelayF
184 0AF5 01A4 clrf ?_DelayF+1
185 0AF6 22AB fcall _DelayF
186 ;util_mc.c: 60: mcp_init();
187 0AF7 120A 158A 2751 fcall _mcp_init
+ 120A 158A
188 ;util_mc.c: 61: mcp_init_ports();
189 0AFC 2299 120A 158A fcall _mcp_init_ports
190 ;util_mc.c: 62: timerSetup();
191 0AFF 2287 fcall _timerSetup
192 ;util_mc.c: 63: analogueSetup();
193 0B00 2A7F ljmp _analogueSetup
194
195 psect text4
196 ;util_mc.c: 88: int getAnalogue(void) {
197 094D _getAnalogue
198 ; _c assigned to ?a_getAnalogue+0
199 0000 _getAnalogue$c set ?a_getAnalogue
200 ;util_mc.c: 89: uint c = 0xffff;
201 094D 30FF movlw 255
202 094E 0183 clrf 3 ;select bank 0
203 094F 00A1 movwf ?a_getAnalogue
204 0950 00A2 movwf ?a_getAnalogue+1
205 ;util_mc.c: 90: ADGO = 1;
206 0951 151F bsf 31,2
207 ;util_mc.c: 91: while (ADGO)
208 0952 295F goto l13
209 0953 l14
210 ;util_mc.c: 92: if (--c == 0)
211 0953 30FF movlw -1
212 0954 07A1 addwf ?a_getAnalogue
213 0955 1C03 btfss 3,0
214 0956 03A2 decf ?a_getAnalogue+1
215 0957 0822 movf ?a_getAnalogue+1,w
216 0958 0421 iorwf ?a_getAnalogue,w
217 0959 1D03 btfss 3,2
218 095A 295F goto l13
219 ;util_mc.c: 93: return -1;
220 095B 30FF movlw 255
221 095C 00F0 movwf btemp
222 095D 00F1 movwf btemp+1
223 095E 0008 return
224 095F l13
225 095F 191F btfsc 31,2
226 0960 2953 goto l14
227 0961 081E movf 30,w ;volatile
228 0962 00F0 movwf btemp
229 0963 01F1 clrf btemp+1
230 ;util_mc.c: 95: }
231 0964 0008 return
232
233 psect text6
234 ;util_mc.c: 126: unsigned int timerValue(void)
+ {
235 08B5 _timerValue
236 ;util_mc.c: 127: static bank1 unsigned int dumm
+ y;
237 08B5 1683 bsf 3,5
238 08B6 1303 bcf 3,6 ;carry unused
239 08B7 0823 movf _tc^(0+128),w
240 08B8 00A1 movwf F711^(0+128)
241 08B9 0824 movf (_tc+1)^(0+128),w
242 08BA 00A2 movwf (F711+1)^(0+128)
243 ;util_mc.c: 129: return tc;
244 08BB 0824 movf (_tc+1)^(0+128),w
245 08BC 00F1 movwf btemp+1
246 08BD 0823 movf _tc^(0+128),w
247 08BE 00F0 movwf btemp
248 ;util_mc.c: 130: }
249 08BF 1283 bcf 3,5
250 08C0 0008 return
251
252 psect text7
253 ;util_mc.c: 142: canStatus canSetup(void) {
254 090D _canSetup
255 ;util_mc.c: 150: SPI_mcp_write_bits(0x60, (0x04
+ +0x60), 0xFF);
256 090D 3064 movlw 100
257 090E 0183 clrf 3 ;select bank 0
258 090F 00CF movwf ?_SPI_mcp_write_bits
259 0910 30FF movlw -1
260 0911 00D0 movwf ?_SPI_mcp_write_bits+1
261 0912 3060 movlw 96
262 0913 120A 158A 21CE fcall _SPI_mcp_write_bits
263 ;util_mc.c: 151: SPI_mcp_write_bits(0x70, 0x60,
+ 0xFF);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -