-
Notifications
You must be signed in to change notification settings - Fork 0
/
ADC_Project.production.lst
6477 lines (6258 loc) · 380 KB
/
ADC_Project.production.lst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Microchip MPLAB XC8 Assembler V2.41 build 20230208172133
Sun Jul 23 15:38:48 2023
Microchip MPLAB XC8 C Compiler v2.41 (Free license) build 20230208172133 Og1
1 processor 18F4620
2 fnconf rparam,??,?,0
3 pagewidth 120
4 opt flic
5 psect idataCOMRAM,global,class=CODE,delta=1,noexec
6 psect idataBANK0,global,class=CODE,delta=1,noexec
7 psect smallconst,global,reloc=2,class=SMALLCONST,delta=1,noexec
8 psect cinit,global,reloc=2,class=CODE,delta=1
9 psect bssCOMRAM,global,class=COMRAM,space=1,delta=1,lowdata,noexec
10 psect dataCOMRAM,global,class=COMRAM,space=1,delta=1,lowdata,noexec
11 psect bssBANK0,global,class=BANK0,space=1,delta=1,lowdata,noexec
12 psect dataBANK0,global,class=BANK0,space=1,delta=1,lowdata,noexec
13 psect cstackBANK0,global,class=BANK0,space=1,delta=1,lowdata,noexec
14 psect cstackCOMRAM,global,class=COMRAM,space=1,delta=1,lowdata,noexec
15 psect text0,global,reloc=2,class=CODE,delta=1
16 psect text1,global,reloc=2,class=CODE,delta=1
17 psect text2,global,reloc=2,class=CODE,delta=1
18 psect text3,global,reloc=2,class=CODE,delta=1
19 psect text4,global,reloc=2,class=CODE,delta=1
20 psect text5,global,reloc=2,class=CODE,delta=1
21 psect text6,global,reloc=2,class=CODE,delta=1
22 psect text7,global,reloc=2,class=CODE,delta=1
23 psect text8,global,reloc=2,class=CODE,delta=1
24 psect text9,global,reloc=2,class=CODE,delta=1
25 psect text10,global,reloc=2,class=CODE,delta=1
26 psect text11,global,reloc=2,class=CODE,delta=1
27 psect text12,global,reloc=2,class=CODE,delta=1
28 psect text13,global,reloc=2,class=CODE,delta=1
29 psect text14,global,reloc=2,class=CODE,delta=1,inline
30 psect text15,global,reloc=2,class=CODE,delta=1,inline
31 psect text16,global,reloc=2,class=CODE,delta=1
32 psect text17,global,reloc=2,class=CODE,delta=1
33 psect text18,global,reloc=2,class=CODE,delta=1
34 psect text19,global,reloc=2,class=CODE,delta=1,inline
35 psect intcode,global,reloc=2,class=CODE,delta=1
36 psect intcode_body,global,reloc=2,class=CODE,delta=1
37 psect text21,global,reloc=2,class=CODE,delta=1
38 psect text22,global,reloc=2,class=CODE,delta=1
39 psect text23,global,reloc=2,class=CODE,delta=1
40 psect text24,global,reloc=2,class=CODE,delta=1
41 psect text25,global,reloc=2,class=CODE,delta=1
42 psect text26,global,reloc=2,class=CODE,delta=1
43 psect text27,global,reloc=2,class=CODE,delta=1
44 psect text28,global,reloc=2,class=CODE,delta=1
45 psect text29,global,reloc=2,class=CODE,delta=1
46 psect text30,global,reloc=2,class=CODE,delta=1
47 psect text31,global,reloc=2,class=CODE,delta=1
48 psect text32,global,reloc=2,class=CODE,delta=1
49 psect text33,global,reloc=2,class=CODE,delta=1
50 psect text34,global,reloc=2,class=CODE,delta=1
51 psect text35,global,reloc=2,class=CODE,delta=1
52 psect text36,global,reloc=2,class=CODE,delta=1
53 psect text37,global,reloc=2,class=CODE,delta=1
54 psect text38,global,reloc=2,class=CODE,delta=1
55 psect text39,global,reloc=2,class=CODE,delta=1
56 psect text40,global,reloc=2,class=CODE,delta=1
57 psect intsave_regs,global,class=BIGRAM,space=1,delta=1,noexec
58 psect text41,global,reloc=2,class=CODE,delta=1
59 psect rparam,global,class=COMRAM,space=1,delta=1,noexec
60 psect temp,global,ovrld,common,class=COMRAM,space=1,delta=1
61 psect idloc,global,abs,ovrld,class=IDLOC,space=5,delta=1,noexec
62 psect config,global,abs,ovrld,class=CONFIG,space=4,delta=1,noexec
63 000000
64 ; Generated 09/02/2023 GMT
65 ;
66 ; Copyright © 2023, Microchip Technology Inc. and its subsidiaries ("Microchip")
67 ; All rights reserved.
68 ;
69 ; This software is developed by Microchip Technology Inc. and its subsidiaries ("Microch
+ ip").
70 ;
71 ; Redistribution and use in source and binary forms, with or without modification, are
72 ; permitted provided that the following conditions are met:
73 ;
74 ; 1. Redistributions of source code must retain the above copyright notice, this lis
+ t of
75 ; conditions and the following disclaimer.
76 ;
77 ; 2. Redistributions in binary form must reproduce the above copyright notice, this
+ list
78 ; of conditions and the following disclaimer in the documentation and/or other
79 ; materials provided with the distribution. Publication is not required when
80 ; this file is used in an embedded application.
81 ;
82 ; 3. Microchip's name may not be used to endorse or promote products derived from th
+ is
83 ; software without specific prior written permission.
84 ;
85 ; THIS SOFTWARE IS PROVIDED BY MICROCHIP "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
86 ; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS F
+ OR
87 ; PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MICROCHIP BE LIABLE FOR ANY DIRECT, INDIREC
+ T,
88 ; INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO
89 ; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA OR PROFITS; OR BUSINESS
90 ; INTERRUPTION) HOWSOEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ST
+ RICT
91 ; LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE U
+ SE OF
92 ; THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
93 ;
94 ;
95 ; Code-generator required, PIC18F4620 Definitions
96 ;
97 ; SFR Addresses
98 000000
99 psect idataCOMRAM
100 002056 __pidataCOMRAM:
101 callstack 0
102
103 ;initializer for _lat_registers
104 002056 89 db 137
105 002057 0F db 15
106 002058 8A db 138
107 002059 0F db 15
108 00205A 8B db 139
109 00205B 0F db 15
110 00205C 8C db 140
111 00205D 0F db 15
112 00205E 8D db 141
113 00205F 0F db 15
114
115 ;initializer for _RB7_Flag
116 002060 01 db 1
117
118 ;initializer for _RB6_Flag
119 002061 01 db 1
120
121 ;initializer for _RB5_Flag
122 002062 01 db 1
123
124 ;initializer for _RB4_Flag
125 002063 01 db 1
126
127 psect idataBANK0
128 001F3A __pidataBANK0:
129 callstack 0
130
131 ;initializer for _port_registers
132 001F3A 80 db 128
133 001F3B 0F db 15
134 001F3C 81 db 129
135 001F3D 0F db 15
136 001F3E 82 db 130
137 001F3F 0F db 15
138 001F40 83 db 131
139 001F41 0F db 15
140 001F42 84 db 132
141 001F43 0F db 15
142
143 ;initializer for _tris_registers
144 001F44 92 db 146
145 001F45 0F db 15
146 001F46 93 db 147
147 001F47 0F db 15
148 001F48 94 db 148
149 001F49 0F db 15
150 001F4A 95 db 149
151 001F4B 0F db 15
152 001F4C 96 db 150
153 001F4D 0F db 15
154
155 ;initializer for _lcd_2
156 001F4E 32 db 50
157 001F4F 3A db 58
158 001F50 03 db 3
159 001F51 0B db 11
160 001F52 13 db 19
161 001F53 1B db 27
162 001F54 23 db 35
163 001F55 2B db 43
164 001F56 33 db 51
165 001F57 3B db 59
166
167 ;initializer for _adc_1
168 001F58 2C db low _ADC_DefaultInterruptHandler
169 001F59 20 db high _ADC_DefaultInterruptHandler
170 001F5A 00 db 0
171 001F5B 05 db 5
172 001F5C 05 db 5
173 001F5D 00 db 0
174 001F5E 02 db 2
175
176 ;initializer for _lcd_1
177 001F5F 02 db 2
178 001F60 0A db 10
179 001F61 12 db 18
180 001F62 1A db 26
181 001F63 22 db 34
182 001F64 2A db 42
183
184 psect smallconst
185 001000 __psmallconst:
186 callstack 0
187 001000 00 db 0
188 001001 _btn_values:
189 callstack 0
190 001001 37 db 55
191 001002 38 db 56
192 001003 39 db 57
193 001004 2F db 47
194 001005 34 db 52
195 001006 35 db 53
196 001007 36 db 54
197 001008 2A db 42
198 001009 31 db 49
199 00100A 32 db 50
200 00100B 33 db 51
201 00100C 2D db 45
202 00100D 23 db 35
203 00100E 30 db 48
204 00100F 3D db 61
205 001010 2B db 43
206 001011 __end_of_btn_values:
207 callstack 0
208 000000 _SPBRGH set 4016
209 000000 _SPBRG set 4015
210 000000 _TXREG set 4013
211 000000 _TXSTAbits set 4012
212 000000 _RCREG set 4014
213 000000 _RCSTAbits set 4011
214 000000 _TMR3L set 4018
215 000000 _TMR3H set 4019
216 000000 _TMR1L set 4046
217 000000 _TMR1H set 4047
218 000000 _TMR0L set 4054
219 000000 _TMR0H set 4055
220 000000 _INTCON2bits set 4081
221 000000 _SSPSTATbits set 4039
222 000000 _SSPADD set 4040
223 000000 _SSPCON2bits set 4037
224 000000 _SSPCON1bits set 4038
225 000000 _EECON2 set 4007
226 000000 _CCPR2H set 4028
227 000000 _CCPR2L set 4027
228 000000 _CCPR1H set 4031
229 000000 _CCPR1L set 4030
230 000000 _ADCON1bits set 4033
231 000000 _ADRESL set 4035
232 000000 _ADRESH set 4036
233 000000 _INTCONbits set 4082
234 000000 _TRISD set 3989
235 000000 _TRISC set 3988
236 000000 _TRISB set 3987
237 000000 _TRISE set 3990
238 000000 _PORTBbits set 3969
239 000000 _TRISCbits set 3988
240 000000 _PIE1bits set 3997
241 000000 _ADCON2bits set 4032
242 000000 _ADCON0bits set 4034
243 000000 _PORTE set 3972
244 000000 _PORTD set 3971
245 000000 _PORTC set 3970
246 000000 _PORTB set 3969
247 000000 _PORTA set 3968
248 000000 _LATA set 3977
249 000000 _TRISA set 3986
250 000000 _PIE2bits set 4000
251 000000 _CCP2CONbits set 4026
252 000000 _CCP1CONbits set 4029
253 000000 _PIR1bits set 3998
254 000000 _EECON1bits set 4006
255 000000 _EEDATA set 4008
256 000000 _EEADR set 4009
257 000000 _EEADRH set 4010
258 000000 _T3CONbits set 4017
259 000000 _PIR2bits set 4001
260 000000 _LATE set 3981
261 000000 _LATD set 3980
262 000000 _LATC set 3979
263 000000 _LATB set 3978
264 000000 _TMR2 set 4044
265 000000 _T2CONbits set 4042
266 000000 _T1CONbits set 4045
267 000000 _T0CONbits set 4053
268 000000 _INTCON3bits set 4080
269 000000 _SSPBUF set 4041
270 000000 _BAUDCONbits set 4024
271 001011 STR_1:
272 001011 25 db 37
273 001012 69 db 105 ;'i'
274 001013 00 db 0
275 001014 00 db 0 ; dummy byte at the end
276 000000
277 ; #config settings
278
279 psect cinit
280 001D36 __pcinit:
281 callstack 0
282 001D36 start_initialization:
283 callstack 0
284 001D36 __initialization:
285 callstack 0
286
287 ; Initialize objects allocated to BANK0 (43 bytes)
288 ; load TBLPTR registers with __pidataBANK0
289 001D36 0E3A movlw low __pidataBANK0
290 001D38 6EF6 movwf tblptrl,c
291 001D3A 0E1F movlw high __pidataBANK0
292 001D3C 6EF7 movwf tblptrh,c
293 001D3E 0E00 movlw low (__pidataBANK0 shr (0+16))
294 001D40 6EF8 movwf tblptru,c
295 001D42 EE00 F080 lfsr 0,__pdataBANK0
296 001D46 EE10 F02B lfsr 1,43
297 001D4A copy_data0:
298 001D4A 0009 tblrd *+
299 001D4C CFF5 FFEE movff tablat,postinc0
300 001D50 50E5 movf postdec1,w,c
301 001D52 50E1 movf fsr1l,w,c
302 001D54 E1FA bnz copy_data0
303
304 ; Initialize objects allocated to COMRAM (14 bytes)
305 ; load TBLPTR registers with __pidataCOMRAM
306 001D56 0E56 movlw low __pidataCOMRAM
307 001D58 6EF6 movwf tblptrl,c
308 001D5A 0E20 movlw high __pidataCOMRAM
309 001D5C 6EF7 movwf tblptrh,c
310 001D5E 0E00 movlw low (__pidataCOMRAM shr (0+16))
311 001D60 6EF8 movwf tblptru,c
312 001D62 EE00 F064 lfsr 0,__pdataCOMRAM
313 001D66 EE10 F00E lfsr 1,14
314 001D6A copy_data1:
315 001D6A 0009 tblrd *+
316 001D6C CFF5 FFEE movff tablat,postinc0
317 001D70 50E5 movf postdec1,w,c
318 001D72 50E1 movf fsr1l,w,c
319 001D74 E1FA bnz copy_data1
320
321 ; Clear objects allocated to BANK0 (6 bytes)
322 001D76 0100 movlb 0
323 001D78 6BBA clrf (__pbssBANK0+5)& (0+255),b
324 001D7A 6BB9 clrf (__pbssBANK0+4)& (0+255),b
325 001D7C 6BB8 clrf (__pbssBANK0+3)& (0+255),b
326 001D7E 6BB7 clrf (__pbssBANK0+2)& (0+255),b
327 001D80 6BB6 clrf (__pbssBANK0+1)& (0+255),b
328 001D82 6BB5 clrf __pbssBANK0& (0+255),b
329
330 ; Clear objects allocated to COMRAM (69 bytes)
331 001D84 EE00 F001 lfsr 0,__pbssCOMRAM
332 001D88 0E45 movlw 69
333 001D8A clear_0:
334 001D8A 6AEE clrf postinc0,c
335 001D8C 06E8 decf wreg,f,c
336 001D8E E1FD bnz clear_0
337 001D90 end_of_initialization:
338 callstack 0
339 001D90 __end_of__initialization:
340 callstack 0
341 001D90 9072 bcf int$flags,0,c ;clear compiler interrupt flag (level 1)
342 001D92 9272 bcf int$flags,1,c ;clear compiler interrupt flag (level 2)
343 001D94 0100 movlb 0
344 001D96 EFD4 F00F goto _main ;jump to C main() function
345
346 psect bssCOMRAM
347 000001 __pbssCOMRAM:
348 callstack 0
349 000001 _USART_OverrunErrorHandler:
350 callstack 0
351 000001 ds 2
352 000003 _USART_FramingErrorHandler:
353 callstack 0
354 000003 ds 2
355 000005 _USART_RxDefaultInterruptHandler:
356 callstack 0
357 000005 ds 2
358 000007 _USART_TxDefaultInterruptHandler:
359 callstack 0
360 000007 ds 2
361 000009 _TMR3_InterruptHandler:
362 callstack 0
363 000009 ds 2
364 00000B _timer3_preload:
365 callstack 0
366 00000B ds 2
367 00000D _TMR2_InterruptHandler:
368 callstack 0
369 00000D ds 2
370 00000F _TMR1_InterruptHandler:
371 callstack 0
372 00000F ds 2
373 000011 _timer1_preload:
374 callstack 0
375 000011 ds 2
376 000013 _TMR0_InterruptHandler:
377 callstack 0
378 000013 ds 2
379 000015 _timer0_preload:
380 callstack 0
381 000015 ds 2
382 000017 _RB7_InterruptHandler_LOW:
383 callstack 0
384 000017 ds 2
385 000019 _RB7_InterruptHandler_HIGH:
386 callstack 0
387 000019 ds 2
388 00001B _RB6_InterruptHandler_LOW:
389 callstack 0
390 00001B ds 2
391 00001D _RB6_InterruptHandler_HIGH:
392 callstack 0
393 00001D ds 2
394 00001F _RB5_InterruptHandler_LOW:
395 callstack 0
396 00001F ds 2
397 000021 _RB5_InterruptHandler_HIGH:
398 callstack 0
399 000021 ds 2
400 000023 _RB4_InterruptHandler_LOW:
401 callstack 0
402 000023 ds 2
403 000025 _RB4_InterruptHandler_HIGH:
404 callstack 0
405 000025 ds 2
406 000027 _INT2_InterruptHandler:
407 callstack 0
408 000027 ds 2
409 000029 _INT1_InterruptHandler:
410 callstack 0
411 000029 ds 2
412 00002B _INT0_InterruptHandler:
413 callstack 0
414 00002B ds 2
415 00002D _MSSP_I2C_Report_Receive_Overflow_InterruptHandler:
416 callstack 0
417 00002D ds 2
418 00002F _MSSP_I2C_Report_Write_Collision_InterruptHandler:
419 callstack 0
420 00002F ds 2
421 000031 _MSSP_I2C_DefaultInterruptHandler:
422 callstack 0
423 000031 ds 2
424 000033 CCP_Set_Compare_Mode_Value@F3106:
425 callstack 0
426 000033 ds 2
427 000035 _CCP2_InterruptHandler:
428 callstack 0
429 000035 ds 2
430 000037 _CCP1_InterruptHandler:
431 callstack 0
432 000037 ds 2
433 000039 _ADC_InterruptHandler:
434 callstack 0
435 000039 ds 2
436 00003B _adc_flag:
437 callstack 0
438 00003B ds 1
439 00003C _timer2_preload:
440 callstack 0
441 00003C ds 1
442 00003D relay_turn_off@F3052:
443 callstack 0
444 00003D ds 1
445 00003E relay_turn_on@F3047:
446 callstack 0
447 00003E ds 1
448 00003F relay_initialize@F3042:
449 callstack 0
450 00003F ds 1
451 000040 led_turn_toggle@F3063:
452 callstack 0
453 000040 ds 1
454 000041 led_turn_off@F3058:
455 callstack 0
456 000041 ds 1
457 000042 led_turn_on@F3053:
458 callstack 0
459 000042 ds 1
460 000043 led_initialize@F3048:
461 callstack 0
462 000043 ds 1
463 000044 _adc_result_1:
464 callstack 0
465 000044 ds 2
466
467 psect dataCOMRAM
468 000064 __pdataCOMRAM:
469 callstack 0
470 000064 _lat_registers:
471 callstack 0
472 000064 ds 10
473 00006E _RB7_Flag:
474 callstack 0
475 00006E ds 1
476 00006F _RB6_Flag:
477 callstack 0
478 00006F ds 1
479 000070 _RB5_Flag:
480 callstack 0
481 000070 ds 1
482 000071 _RB4_Flag:
483 callstack 0
484 000071 ds 1
485
486 psect bssBANK0
487 0000B5 __pbssBANK0:
488 callstack 0
489 0000B5 ds 6
490
491 psect dataBANK0
492 000080 __pdataBANK0:
493 callstack 0
494 000080 _port_registers:
495 callstack 0
496 000080 ds 10
497 00008A _tris_registers:
498 callstack 0
499 00008A ds 10
500 000094 _lcd_2:
501 callstack 0
502 000094 ds 10
503 00009E _adc_1:
504 callstack 0
505 00009E ds 7
506 0000A5 _lcd_1:
507 callstack 0
508 0000A5 ds 6
509
510 psect cstackBANK0
511 0000AB __pcstackBANK0:
512 callstack 0
513 0000AB ??_lcd_8bit_send_command:
514 0000AB lcd_4bit_intialize@lcd:
515 callstack 0
516
517 ; 2 bytes @ 0x0
518 0000AB ds 2
519 0000AD ??_lcd_4bit_intialize:
520
521 ; 1 bytes @ 0x2
522 0000AD ds 2
523 0000AF lcd_4bit_intialize@l_data_pins_counter:
524 callstack 0
525 0000AF lcd_8bit_intialize@lcd:
526 callstack 0
527
528 ; 2 bytes @ 0x4
529 0000AF ds 1
530 0000B0 lcd_4bit_intialize@ret:
531 callstack 0
532
533 ; 1 bytes @ 0x5
534 0000B0 ds 1
535 0000B1 ??_lcd_8bit_intialize:
536
537 ; 1 bytes @ 0x6
538 0000B1 ds 2
539 0000B3 lcd_8bit_intialize@l_data_pins_counter:
540 callstack 0
541
542 ; 1 bytes @ 0x8
543 0000B3 ds 1
544 0000B4 lcd_8bit_intialize@ret:
545 callstack 0
546
547 ; 1 bytes @ 0x9
548 0000B4 ds 1
549
550 psect cstackCOMRAM
551 000046 __pcstackCOMRAM:
552 callstack 0
553 000046 RB4_ISR@RB4_Source:
554 callstack 0
555 000046 RB5_ISR@RB5_Source:
556 callstack 0
557 000046 RB6_ISR@RB6_Source:
558 callstack 0
559 000046 RB7_ISR@RB7_Source:
560 callstack 0
561 000046 ADC_GetConversionResult@_adc:
562 callstack 0
563
564 ; 2 bytes @ 0x0
565 000046 ds 2
566 000048 ADC_GetConversionResult@conversion_result:
567 callstack 0
568
569 ; 2 bytes @ 0x2
570 000048 ds 2
571 00004A ??_ADC_GetConversionResult:
572
573 ; 1 bytes @ 0x4
574 00004A ds 3
575 00004D ADC_GetConversionResult@ret:
576 callstack 0
577
578 ; 1 bytes @ 0x7
579 00004D ds 1
580 00004E ??_InterruptManager:
581
582 ; 1 bytes @ 0x8
583 00004E ds 4
584 000052 ??_adc_input_channel_port_config:
585 000052 ADC_StartConversion@_adc:
586 callstack 0
587 000052 select_result_format@_adc:
588 callstack 0
589 000052 configure_voltage_reference@_adc:
590 callstack 0
591 000052 gpio_pin_direction_intialize@_pin_config:
592 callstack 0
593 000052 gpio_pin_write_logic@_pin_config:
594 callstack 0
595
596 ; 2 bytes @ 0xC
597 000052 ds 2
598 000054 ??_gpio_pin_direction_intialize:
599 000054 ADC_StartConversion@ret:
600 callstack 0
601 000054 adc_input_channel_port_config@channel:
602 callstack 0
603 000054 gpio_pin_write_logic@logic:
604 callstack 0
605
606 ; 1 bytes @ 0xE
607 000054 ds 1
608 000055 ??_gpio_pin_write_logic:
609 000055 ADC_Init@_adc:
610 callstack 0
611 000055 ADC_SelectChannel@_adc:
612 callstack 0
613
614 ; 2 bytes @ 0xF
615 000055 ds 2
616 000057 ??_ADC_Init:
617 000057 ADC_SelectChannel@channel:
618 callstack 0
619
620 ; 1 bytes @ 0x11
621 000057 ds 1
622 000058 ??_ADC_SelectChannel:
623 000058 ADC_Init@ret:
624 callstack 0
625
626 ; 1 bytes @ 0x12
627 000058 ds 1
628 000059 ADC_SelectChannel@ret:
629 callstack 0
630
631 ; 1 bytes @ 0x13
632 000059 ds 1
633 00005A gpio_pin_direction_intialize@ret:
634 callstack 0
635 00005A ADC_StartConversion_Interrupt@_adc:
636 callstack 0
637
638 ; 2 bytes @ 0x14
639 00005A ds 1
640 00005B gpio_pin_write_logic@ret:
641 callstack 0
642
643 ; 1 bytes @ 0x15
644 00005B ds 1
645 00005C ADC_StartConversion_Interrupt@channel:
646 callstack 0
647 00005C lcd_send_4bits@lcd:
648 callstack 0
649 00005C lcd_4bit_send_enable_signal@lcd:
650 callstack 0
651 00005C lcd_8bit_send_enable_signal@lcd:
652 callstack 0
653 00005C gpio_pin_intialize@_pin_config:
654 callstack 0
655
656 ; 2 bytes @ 0x16
657 00005C ds 1
658 00005D ADC_StartConversion_Interrupt@ret:
659 callstack 0
660
661 ; 1 bytes @ 0x17
662 00005D ds 1
663 00005E ??_gpio_pin_intialize:
664 00005E lcd_send_4bits@_data_command:
665 callstack 0
666 00005E lcd_4bit_send_enable_signal@ret:
667 callstack 0
668 00005E lcd_8bit_send_enable_signal@ret:
669 callstack 0
670
671 ; 1 bytes @ 0x18
672 00005E ds 1
673 00005F lcd_send_4bits@ret:
674 callstack 0
675 00005F gpio_pin_intialize@ret:
676 callstack 0
677 00005F lcd_8bit_send_command@lcd:
678 callstack 0
679
680 ; 2 bytes @ 0x19
681 00005F ds 1
682 000060 lcd_4bit_send_command@lcd:
683 callstack 0
684
685 ; 2 bytes @ 0x1A
686 000060 ds 1
687 000061 lcd_8bit_send_command@command:
688 callstack 0
689
690 ; 1 bytes @ 0x1B
691 000061 ds 1
692 000062 lcd_4bit_send_command@command:
693 callstack 0
694 000062 lcd_8bit_send_command@ret:
695 callstack 0
696
697 ; 1 bytes @ 0x1C
698 000062 ds 1
699 000063 lcd_4bit_send_command@ret:
700 callstack 0
701 000063 lcd_8bit_send_command@l_pin_counter:
702 callstack 0
703
704 ; 1 bytes @ 0x1D
705 000063 ds 1
706 000064
707 ; 1 bytes @ 0x1E
708 ;;
709 ;;Main: autosize = 0, tempsize = 0, incstack = 0, save=0
710 ;;
711 ;; *************** function _main *****************
712 ;; Defined at:
713 ;; line 38 in file "application.c"
714 ;; Parameters: Size Location Type
715 ;; None
716 ;; Auto vars: Size Location Type
717 ;; ret 1 0 unsigned char
718 ;; Return value: Size Location Type
719 ;; 2 1578[None ] int
720 ;; Registers used:
721 ;; wreg, fsr2l, fsr2h, status,2, status,0, prodl, prodh, cstack
722 ;; Tracked objects:
723 ;; On entry : 0/0
724 ;; On exit : 0/0
725 ;; Unchanged: 0/0
726 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1
+1 BANK12 BANK13 BANK14 BANK15
727 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
728 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
729 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
730 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
731 ;;Total ram usage: 0 bytes
732 ;; Hardware stack levels required when called: 10
733 ;; This function calls:
734 ;; _ADC_StartConversion_Interrupt
735 ;; _application_intialize
736 ;; This function is called by:
737 ;; Startup code after reset
738 ;; This function uses a non-reentrant model
739 ;;
740
741 psect text0
742 001FA8 __ptext0:
743 callstack 0
744 001FA8 _main:
745 callstack 21
746 001FA8
747 ;application.c: 41: application_intialize();
748 001FA8 EC22 F010 call _application_intialize ;wreg free
749 001FAC l6890:
750 001FAC 0E9E movlw low _adc_1
751 001FAE 6E5A movwf ADC_StartConversion_Interrupt@_adc^0,c
752 001FB0 0E00 movlw high _adc_1
753 001FB2 6E5B movwf (ADC_StartConversion_Interrupt@_adc+1)^0,c
754 001FB4 0E00 movlw 0
755 001FB6 6E5C movwf ADC_StartConversion_Interrupt@channel^0,c
756 001FB8 EC14 F00F call _ADC_StartConversion_Interrupt ;wreg free
757 001FBC EFD6 F00F goto l6890
758 001FC0 EF07 F000 goto start
759 001FC4 __end_of_main:
760 callstack 0
761
762 ;; *************** function _application_intialize *****************
763 ;; Defined at:
764 ;; line 52 in file "application.c"
765 ;; Parameters: Size Location Type
766 ;; None
767 ;; Auto vars: Size Location Type
768 ;; ret 1 0 unsigned char
769 ;; Return value: Size Location Type
770 ;; 1 wreg void
771 ;; Registers used:
772 ;; wreg, fsr2l, fsr2h, status,2, status,0, prodl, prodh, cstack
773 ;; Tracked objects:
774 ;; On entry : 0/0
775 ;; On exit : 0/0
776 ;; Unchanged: 0/0
777 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1
+1 BANK12 BANK13 BANK14 BANK15
778 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
779 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
780 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
781 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
782 ;;Total ram usage: 0 bytes
783 ;; Hardware stack levels used: 1
784 ;; Hardware stack levels required when called: 9
785 ;; This function calls:
786 ;; _ADC_Init
787 ;; _ecu_layer_intialize
788 ;; This function is called by:
789 ;; _main
790 ;; This function uses a non-reentrant model
791 ;;
792
793 psect text1
794 002044 __ptext1:
795 callstack 0
796 002044 _application_intialize:
797 callstack 21
798 002044
799 ;application.c: 55: ecu_layer_intialize();
800 002044 ECC5 F00F call _ecu_layer_intialize ;wreg free
801 002048 0E9E movlw low _adc_1
802 00204A 6E55 movwf ADC_Init@_adc^0,c
803 00204C 0E00 movlw high _adc_1
804 00204E 6E56 movwf (ADC_Init@_adc+1)^0,c
805 002050 EC4E F00D call _ADC_Init ;wreg free
806 002054 0012 return ;funcret
807 002056 __end_of_application_intialize:
808 callstack 0
809
810 ;; *************** function _ecu_layer_intialize *****************
811 ;; Defined at:
812 ;; line 96 in file "ECU_Layer/ecu_layer_init.c"
813 ;; Parameters: Size Location Type
814 ;; None
815 ;; Auto vars: Size Location Type
816 ;; ret 1 0 unsigned char
817 ;; Return value: Size Location Type
818 ;; 1 wreg void
819 ;; Registers used:
820 ;; wreg, fsr2l, fsr2h, status,2, status,0, prodl, prodh, cstack
821 ;; Tracked objects:
822 ;; On entry : 0/0
823 ;; On exit : 0/0
824 ;; Unchanged: 0/0
825 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1
+1 BANK12 BANK13 BANK14 BANK15
826 ;; Params: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
827 ;; Locals: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
828 ;; Temps: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
829 ;; Totals: 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
830 ;;Total ram usage: 0 bytes
831 ;; Hardware stack levels used: 1
832 ;; Hardware stack levels required when called: 8
833 ;; This function calls:
834 ;; _lcd_4bit_intialize
835 ;; _lcd_8bit_intialize
836 ;; This function is called by:
837 ;; _application_intialize
838 ;; This function uses a non-reentrant model
839 ;;
840
841 psect text2
842 001F8A __ptext2:
843 callstack 0
844 001F8A _ecu_layer_intialize:
845 callstack 21
846 001F8A 0EA5 movlw low _lcd_1
847 001F8C 0100 movlb 0 ; () banked
848 001F8E 6FAB movwf lcd_4bit_intialize@lcd& (0+255),b
849 001F90 0E00 movlw high _lcd_1
850 001F92 6FAC movwf (lcd_4bit_intialize@lcd+1)& (0+255),b
851 001F94 EC4D F00B call _lcd_4bit_intialize ;wreg free
852 001F98 0E94 movlw low _lcd_2
853 001F9A 0100 movlb 0 ; () banked
854 001F9C 6FAF movwf lcd_8bit_intialize@lcd& (0+255),b
855 001F9E 0E00 movlw high _lcd_2
856 001FA0 6FB0 movwf (lcd_8bit_intialize@lcd+1)& (0+255),b
857 001FA2 ECB0 F00A call _lcd_8bit_intialize ;wreg free
858 001FA6 0012 return ;funcret
859 001FA8 __end_of_ecu_layer_intialize:
860 callstack 0
861
862 ;; *************** function _lcd_8bit_intialize *****************
863 ;; Defined at:
864 ;; line 275 in file "ECU_Layer/Chr_LCD/ecu_chr_lcd.c"
865 ;; Parameters: Size Location Type
866 ;; lcd 2 4[BANK0 ] PTR const struct .
867 ;; -> lcd_2(10),
868 ;; Auto vars: Size Location Type
869 ;; ret 1 9[BANK0 ] unsigned char
870 ;; l_data_pins_ 1 8[BANK0 ] unsigned char
871 ;; Return value: Size Location Type
872 ;; 1 wreg unsigned char
873 ;; Registers used:
874 ;; wreg, fsr2l, fsr2h, status,2, status,0, prodl, prodh, cstack
875 ;; Tracked objects:
876 ;; On entry : 0/0
877 ;; On exit : 0/0
878 ;; Unchanged: 0/0
879 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5 BANK6 BANK7 BANK8 BANK9 BANK10 BANK1
+1 BANK12 BANK13 BANK14 BANK15
880 ;; Params: 0 2 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
881 ;; Locals: 0 2 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
882 ;; Temps: 0 2 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
883 ;; Totals: 0 6 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0
884 ;;Total ram usage: 6 bytes
885 ;; Hardware stack levels used: 1
886 ;; Hardware stack levels required when called: 7
887 ;; This function calls:
888 ;; _gpio_pin_intialize
889 ;; _lcd_8bit_send_command
890 ;; This function is called by:
891 ;; _ecu_layer_intialize
892 ;; This function uses a non-reentrant model
893 ;;
894
895 psect text3
896 001560 __ptext3:
897 callstack 0
898 001560 _lcd_8bit_intialize:
899 callstack 21
900 001560
901 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 278: uint8 l_data_pins_counter = 0;
902 001560 0E00 movlw 0
903 001562 0100 movlb 0 ; () banked
904 001564 6FB3 movwf lcd_8bit_intialize@l_data_pins_counter& (0+255),b
905 001566
906 ; BSR set to: 0
907 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 279: if(((void*)0) == lcd)
908 001566 51AF movf lcd_8bit_intialize@lcd& (0+255),w,b
909 001568 11B0 iorwf (lcd_8bit_intialize@lcd+1)& (0+255),w,b
910 00156A A4D8 btfss status,2,c
911 00156C EFBA F00A goto u5031
912 001570 EFBC F00A goto u5030
913 001574 u5031:
914 001574 EFC0 F00A goto l6284
915 001578 u5030:
916 001578
917 ; BSR set to: 0
918 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 280: {;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 281:
+ ret = (Std_ReturnType)0x00;
919 001578 0E00 movlw 0
920 00157A 6FB4 movwf lcd_8bit_intialize@ret& (0+255),b
921
922 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 282: }
923 00157C EF4B F00B goto l6320
924 001580 l6284:
925
926 ; BSR set to: 0
927 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 284: {;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 285:
+ ret = gpio_pin_intialize(&(lcd->lcd_rs));
928 001580 C0AF F05C movff lcd_8bit_intialize@lcd,gpio_pin_intialize@_pin_config
929 001584 C0B0 F05D movff lcd_8bit_intialize@lcd+1,gpio_pin_intialize@_pin_config+1
930 001588 EC31 F00E call _gpio_pin_intialize ;wreg free
931 00158C 0100 movlb 0 ; () banked
932 00158E 6FB4 movwf lcd_8bit_intialize@ret& (0+255),b
933
934 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 286: ret = gpio_pin_intialize(&(lcd->lcd_en));
935 001590 0E01 movlw 1
936 001592 25AF addwf lcd_8bit_intialize@lcd& (0+255),w,b
937 001594 6E5C movwf gpio_pin_intialize@_pin_config^0,c
938 001596 0E00 movlw 0
939 001598 21B0 addwfc (lcd_8bit_intialize@lcd+1)& (0+255),w,b
940 00159A 6E5D movwf (gpio_pin_intialize@_pin_config+1)^0,c
941 00159C EC31 F00E call _gpio_pin_intialize ;wreg free
942 0015A0 0100 movlb 0 ; () banked
943 0015A2 6FB4 movwf lcd_8bit_intialize@ret& (0+255),b
944 0015A4
945 ; BSR set to: 0
946 ;ECU_Layer/Chr_LCD/ecu_chr_lcd.c: 287: for(l_data_pins_counter = 0; l_data_pins_
+ counter < 8; l_data_pins_counter++)
947 0015A4 0E00 movlw 0
948 0015A6 6FB3 movwf lcd_8bit_intialize@l_data_pins_counter& (0+255),b
949 0015A8 l6292:
950
951 ; BSR set to: 0
952 0015A8 51B3 movf lcd_8bit_intialize@l_data_pins_counter& (0+255),w,b
953 0015AA 25AF addwf lcd_8bit_intialize@lcd& (0+255),w,b
954 0015AC 6FB1 movwf ??_lcd_8bit_intialize& (0+255),b
955 0015AE 0E00 movlw 0
956 0015B0 21B0 addwfc (lcd_8bit_intialize@lcd+1)& (0+255),w,b
957 0015B2 6FB2 movwf (??_lcd_8bit_intialize+1)& (0+255),b
958 0015B4 0E02 movlw 2
959 0015B6 25B1 addwf ??_lcd_8bit_intialize& (0+255),w,b
960 0015B8 6E5C movwf gpio_pin_intialize@_pin_config^0,c
961 0015BA 0E00 movlw 0
962 0015BC 21B2 addwfc (??_lcd_8bit_intialize+1)& (0+255),w,b
963 0015BE 6E5D movwf (gpio_pin_intialize@_pin_config+1)^0,c