Rev 100 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed
| Rev 100 | Rev 103 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | MP2COD 4.02, COFF to COD File Converter |
1 | MP2COD 4.02, COFF to COD File Converter |
| 2 | Copyright (c) 2006 Microchip Technology Inc. |
2 | Copyright (c) 2006 Microchip Technology Inc. |
| 3 | Listing File Generated: Wed Nov 15 |
3 | Listing File Generated: Wed Nov 15 10:03:00 2006 |
| 4 | 4 | ||
| 5 | 5 | ||
| 6 | Address Value Disassembly Source File |
6 | Address Value Disassembly Source File |
| 7 | ------- ------- ----------------------- ------------------------------------------------------------------------------- ----- |
7 | ------- ------- ----------------------- ------------------------------------------------------------------------------- ----- |
| 8 | /********************************************************************* F:\MCP\projects\CAN\canBase\Source\Tick.c |
8 | /********************************************************************* F:\MCP\projects\CAN\canBase\Source\Tick.c |
| Line 69... | Line 69... | ||
| 69 | */ F:\MCP\projects\CAN\canBase\Source\Tick.c |
69 | */ F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 70 | #define PERIOD (INSTR_FREQ/256/1000)*TICK_PERIOD_MS F:\MCP\projects\CAN\canBase\Source\Tick.c |
70 | #define PERIOD (INSTR_FREQ/256/1000)*TICK_PERIOD_MS F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 71 | void tickInit(void) F:\MCP\projects\CAN\canBase\Source\Tick.c |
71 | void tickInit(void) F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 72 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
72 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 73 | // Start the timer. F:\MCP\projects\CAN\canBase\Source\Tick.c |
73 | // Start the timer. F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 74 |
|
74 | 001846 0e79 MOVLW 0x79 TMR0L = TICK_COUNTER_LOW; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 75 |
|
75 | 001848 6ed6 MOVWF 0xd6,0x0 |
| 76 |
|
76 | 00184a 0efe MOVLW 0xfe TMR0H = TICK_COUNTER_HIGH; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 77 |
|
77 | 00184c 6ed7 MOVWF 0xd7,0x0 |
| 78 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
78 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 79 | // 16-BIT, internal timer, PSA set to 1:256 F:\MCP\projects\CAN\canBase\Source\Tick.c |
79 | // 16-BIT, internal timer, PSA set to 1:256 F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 80 |
|
80 | 00184e 0e07 MOVLW 0x7 T0CON = 0b00000000 | TIMER_PRESCALE; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 81 |
|
81 | 001850 6ed5 MOVWF 0xd5,0x0 |
| 82 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
82 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 83 | // Start the timer. F:\MCP\projects\CAN\canBase\Source\Tick.c |
83 | // Start the timer. F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 84 |
|
84 | 001852 8ed5 BSF 0xd5,0x7,0x0 T0CONbits.TMR0ON = 1; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 85 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
85 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 86 |
|
86 | 001854 84f2 BSF 0xf2,0x2,0x0 INTCONbits.TMR0IF = 1; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 87 |
|
87 | 001856 8af2 BSF 0xf2,0x5,0x0 INTCONbits.TMR0IE = 1; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 88 |
|
88 | 001858 0012 RETURN 0x0 } F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 89 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
89 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 90 | /* F:\MCP\projects\CAN\canBase\Source\Tick.c |
90 | /* F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 91 | * Function: TickGet F:\MCP\projects\CAN\canBase\Source\Tick.c |
91 | * Function: TickGet F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 92 | * F:\MCP\projects\CAN\canBase\Source\Tick.c |
92 | * F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 93 | * Input: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
93 | * Input: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
| Line 96... | Line 96... | ||
| 96 | * Affects: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
96 | * Affects: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 97 | * Depends: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
97 | * Depends: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 98 | */ F:\MCP\projects\CAN\canBase\Source\Tick.c |
98 | */ F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 99 | TICK tickGet(void) F:\MCP\projects\CAN\canBase\Source\Tick.c |
99 | TICK tickGet(void) F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 100 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
100 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 101 |
|
101 | 00185a c075 MOVFF 0x75,0x12 return TickCount; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 102 |
|
102 | 00185c f012 |
| 103 |
|
103 | 00185e c076 MOVFF 0x76,0x13 |
| 104 |
|
104 | 001860 f013 |
| 105 |
|
105 | 001862 c077 MOVFF 0x77,0x14 |
| 106 |
|
106 | 001864 f014 |
| 107 |
|
107 | 001866 c078 MOVFF 0x78,0x15 |
| 108 |
|
108 | 001868 f015 |
| 109 |
|
109 | 00186a d000 BRA 0x186c |
| 110 |
|
110 | 00186c 0012 RETURN 0x0 } F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 111 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
111 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 112 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
112 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 113 | /* F:\MCP\projects\CAN\canBase\Source\Tick.c |
113 | /* F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 114 | * Function: tickUpdate F:\MCP\projects\CAN\canBase\Source\Tick.c |
114 | * Function: tickUpdate F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 115 | * F:\MCP\projects\CAN\canBase\Source\Tick.c |
115 | * F:\MCP\projects\CAN\canBase\Source\Tick.c |
| Line 119... | Line 119... | ||
| 119 | * Affects: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
119 | * Affects: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 120 | * Depends: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
120 | * Depends: none F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 121 | */ F:\MCP\projects\CAN\canBase\Source\Tick.c |
121 | */ F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 122 | void tickUpdate(void) F:\MCP\projects\CAN\canBase\Source\Tick.c |
122 | void tickUpdate(void) F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 123 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
123 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 124 |
|
124 | 00186e a4f2 BTFSS 0xf2,0x2,0x0 if(INTCONbits.TMR0IF) F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 125 |
|
125 | 001870 d00b BRA 0x1888 |
| 126 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
126 | { F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 127 |
|
127 | 001872 0efe MOVLW 0xfe TMR0H = TICK_COUNTER_HIGH; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 128 |
|
128 | 001874 6ed7 MOVWF 0xd7,0x0 |
| 129 |
|
129 | 001876 0e79 MOVLW 0x79 TMR0L = TICK_COUNTER_LOW; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 130 |
|
130 | 001878 6ed6 MOVWF 0xd6,0x0 |
| 131 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
131 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 132 |
|
132 | 00187a 0100 MOVLB 0x0 TickCount++; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 133 |
|
133 | 00187c 2b75 INCF 0x75,0x1,0x1 |
| 134 |
|
134 | 00187e 0e00 MOVLW 0x0 |
| 135 |
|
135 | 001880 2376 ADDWFC 0x76,0x1,0x1 |
| 136 |
|
136 | 001882 2377 ADDWFC 0x77,0x1,0x1 |
| 137 |
|
137 | 001884 2378 ADDWFC 0x78,0x1,0x1 |
| 138 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
138 | F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 139 |
|
139 | 001886 94f2 BCF 0xf2,0x2,0x0 INTCONbits.TMR0IF = 0; F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 140 | } F:\MCP\projects\CAN\canBase\Source\Tick.c |
140 | } F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 141 |
|
141 | 001888 0012 RETURN 0x0 } F:\MCP\projects\CAN\canBase\Source\Tick.c |
| 142 | /********************************************************************* F:\MCP\projects\CAN\canBase\Source\CAN.c |
142 | /********************************************************************* F:\MCP\projects\CAN\canBase\Source\CAN.c |
| 143 | * F:\MCP\projects\CAN\canBase\Source\CAN.c |
143 | * F:\MCP\projects\CAN\canBase\Source\CAN.c |
| 144 | * CAN module F:\MCP\projects\CAN\canBase\Source\CAN.c |
144 | * CAN module F:\MCP\projects\CAN\canBase\Source\CAN.c |
| 145 | * F:\MCP\projects\CAN\canBase\Source\CAN.c |
145 | * F:\MCP\projects\CAN\canBase\Source\CAN.c |
| 146 | ********************************************************************* F:\MCP\projects\CAN\canBase\Source\CAN.c |
146 | ********************************************************************* F:\MCP\projects\CAN\canBase\Source\CAN.c |
| Line 804... | Line 804... | ||
| 804 | * F:\MCP\projects\CAN\canBase\Source\Main.c |
804 | * F:\MCP\projects\CAN\canBase\Source\Main.c |
| 805 | * Main application F:\MCP\projects\CAN\canBase\Source\Main.c |
805 | * Main application F:\MCP\projects\CAN\canBase\Source\Main.c |
| 806 | * F:\MCP\projects\CAN\canBase\Source\Main.c |
806 | * F:\MCP\projects\CAN\canBase\Source\Main.c |
| 807 | ********************************************************************* F:\MCP\projects\CAN\canBase\Source\Main.c |
807 | ********************************************************************* F:\MCP\projects\CAN\canBase\Source\Main.c |
| 808 | * FileName: $HeadURL: http://svn.arune.se/svn/HomeAutomation/trunk/EmbeddedSoftware/PIC/canBase/Source/Main.c $ F:\MCP\projects\CAN\canBase\Source\Main.c |
808 | * FileName: $HeadURL: http://svn.arune.se/svn/HomeAutomation/trunk/EmbeddedSoftware/PIC/canBase/Source/Main.c $ F:\MCP\projects\CAN\canBase\Source\Main.c |
| 809 | * Last changed: $LastChangedDate: 2006-11- |
809 | * Last changed: $LastChangedDate: 2006-11-15 09:40:52 +0100 (on, 15 nov 2006) $ F:\MCP\projects\CAN\canBase\Source\Main.c |
| 810 | * By: $LastChangedBy: johboh $ F:\MCP\projects\CAN\canBase\Source\Main.c |
810 | * By: $LastChangedBy: johboh $ F:\MCP\projects\CAN\canBase\Source\Main.c |
| 811 | * Revision: $Revision: |
811 | * Revision: $Revision: 100 $ F:\MCP\projects\CAN\canBase\Source\Main.c |
| 812 | ********************************************************************/ F:\MCP\projects\CAN\canBase\Source\Main.c |
812 | ********************************************************************/ F:\MCP\projects\CAN\canBase\Source\Main.c |
| 813 | F:\MCP\projects\CAN\canBase\Source\Main.c |
813 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 814 | F:\MCP\projects\CAN\canBase\Source\Main.c |
814 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 815 | #include <compiler.h> F:\MCP\projects\CAN\canBase\Source\Main.c |
815 | #include <compiler.h> F:\MCP\projects\CAN\canBase\Source\Main.c |
| 816 | #include <stackTasks.h> F:\MCP\projects\CAN\canBase\Source\Main.c |
816 | #include <stackTasks.h> F:\MCP\projects\CAN\canBase\Source\Main.c |
| Line 845... | Line 845... | ||
| 845 | #ifdef USE_CAN F:\MCP\projects\CAN\canBase\Source\Main.c |
845 | #ifdef USE_CAN F:\MCP\projects\CAN\canBase\Source\Main.c |
| 846 | 00141e ec22 CALL 0x1044,0x0 canInit(); F:\MCP\projects\CAN\canBase\Source\Main.c |
846 | 00141e ec22 CALL 0x1044,0x0 canInit(); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 847 | 001420 f008 |
847 | 001420 f008 |
| 848 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
848 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
| 849 | F:\MCP\projects\CAN\canBase\Source\Main.c |
849 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 850 | 001422 |
850 | 001422 ec23 CALL 0x1846,0x0 tickInit(); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 851 | 001424 |
851 | 001424 f00c |
| 852 | F:\MCP\projects\CAN\canBase\Source\Main.c |
852 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 853 | // Read ID and NID if exist. F:\MCP\projects\CAN\canBase\Source\Main.c |
853 | // Read ID and NID if exist. F:\MCP\projects\CAN\canBase\Source\Main.c |
| 854 | 001426 0e00 MOVLW 0x0 if (EERead(NODE_ID_EE)==NODE_HAS_ID) F:\MCP\projects\CAN\canBase\Source\Main.c |
854 | 001426 0e00 MOVLW 0x0 if (EERead(NODE_ID_EE)==NODE_HAS_ID) F:\MCP\projects\CAN\canBase\Source\Main.c |
| 855 | 001428 6ee6 MOVWF 0xe6,0x0 |
855 | 001428 6ee6 MOVWF 0xe6,0x0 |
| 856 | 00142a 6ae6 CLRF 0xe6,0x0 |
856 | 00142a 6ae6 CLRF 0xe6,0x0 |
| 857 | 00142c |
857 | 00142c ec7e CALL 0x16fc,0x0 |
| 858 | 00142e f00b |
858 | 00142e f00b |
| 859 | 001430 52e5 MOVF 0xe5,0x1,0x0 |
859 | 001430 52e5 MOVF 0xe5,0x1,0x0 |
| 860 | 001432 52e5 MOVF 0xe5,0x1,0x0 |
860 | 001432 52e5 MOVF 0xe5,0x1,0x0 |
| 861 | 001434 082a SUBLW 0x2a |
861 | 001434 082a SUBLW 0x2a |
| 862 | 001436 e12b BNZ 0x148e |
862 | 001436 e12b BNZ 0x148e |
| 863 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
863 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
| 864 | 001438 0e01 MOVLW 0x1 MY_ID=(((WORD)EERead(NODE_ID_EE + 1))<<8)+EERead(NODE_ID_EE + 2); F:\MCP\projects\CAN\canBase\Source\Main.c |
864 | 001438 0e01 MOVLW 0x1 MY_ID=(((WORD)EERead(NODE_ID_EE + 1))<<8)+EERead(NODE_ID_EE + 2); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 865 | 00143a 6ee6 MOVWF 0xe6,0x0 |
865 | 00143a 6ee6 MOVWF 0xe6,0x0 |
| 866 | 00143c 6ae6 CLRF 0xe6,0x0 |
866 | 00143c 6ae6 CLRF 0xe6,0x0 |
| 867 | 00143e |
867 | 00143e ec7e CALL 0x16fc,0x0 |
| 868 | 001440 f00b |
868 | 001440 f00b |
| 869 | 001442 52e5 MOVF 0xe5,0x1,0x0 |
869 | 001442 52e5 MOVF 0xe5,0x1,0x0 |
| 870 | 001444 52e5 MOVF 0xe5,0x1,0x0 |
870 | 001444 52e5 MOVF 0xe5,0x1,0x0 |
| 871 | 001446 6e00 MOVWF 0x0,0x0 |
871 | 001446 6e00 MOVWF 0x0,0x0 |
| 872 | 001448 c000 MOVFF 0x0,0x1 |
872 | 001448 c000 MOVFF 0x0,0x1 |
| Line 877... | Line 877... | ||
| 877 | 001452 c001 MOVFF 0x1,0xfe6 |
877 | 001452 c001 MOVFF 0x1,0xfe6 |
| 878 | 001454 ffe6 |
878 | 001454 ffe6 |
| 879 | 001456 0e02 MOVLW 0x2 |
879 | 001456 0e02 MOVLW 0x2 |
| 880 | 001458 6ee6 MOVWF 0xe6,0x0 |
880 | 001458 6ee6 MOVWF 0xe6,0x0 |
| 881 | 00145a 6ae6 CLRF 0xe6,0x0 |
881 | 00145a 6ae6 CLRF 0xe6,0x0 |
| 882 | 00145c |
882 | 00145c ec7e CALL 0x16fc,0x0 |
| 883 | 00145e f00b |
883 | 00145e f00b |
| 884 | 001460 52e5 MOVF 0xe5,0x1,0x0 |
884 | 001460 52e5 MOVF 0xe5,0x1,0x0 |
| 885 | 001462 52e5 MOVF 0xe5,0x1,0x0 |
885 | 001462 52e5 MOVF 0xe5,0x1,0x0 |
| 886 | 001464 52e5 MOVF 0xe5,0x1,0x0 |
886 | 001464 52e5 MOVF 0xe5,0x1,0x0 |
| 887 | 001466 cfe7 MOVFF 0xfe7,0x1 |
887 | 001466 cfe7 MOVFF 0xfe7,0x1 |
| Line 896... | Line 896... | ||
| 896 | 001478 2001 ADDWFC 0x1,0x0,0x0 |
896 | 001478 2001 ADDWFC 0x1,0x0,0x0 |
| 897 | 00147a 6f61 MOVWF 0x61,0x1 |
897 | 00147a 6f61 MOVWF 0x61,0x1 |
| 898 | 00147c 0e03 MOVLW 0x3 MY_NID=EERead(NODE_ID_EE + 3); F:\MCP\projects\CAN\canBase\Source\Main.c |
898 | 00147c 0e03 MOVLW 0x3 MY_NID=EERead(NODE_ID_EE + 3); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 899 | 00147e 6ee6 MOVWF 0xe6,0x0 |
899 | 00147e 6ee6 MOVWF 0xe6,0x0 |
| 900 | 001480 6ae6 CLRF 0xe6,0x0 |
900 | 001480 6ae6 CLRF 0xe6,0x0 |
| 901 | 001482 |
901 | 001482 ec7e CALL 0x16fc,0x0 |
| 902 | 001484 f00b |
902 | 001484 f00b |
| 903 | 001486 52e5 MOVF 0xe5,0x1,0x0 |
903 | 001486 52e5 MOVF 0xe5,0x1,0x0 |
| 904 | 001488 52e5 MOVF 0xe5,0x1,0x0 |
904 | 001488 52e5 MOVF 0xe5,0x1,0x0 |
| 905 | 00148a 0100 MOVLB 0x0 |
905 | 00148a 0100 MOVLB 0x0 |
| 906 | 00148c 6f62 MOVWF 0x62,0x1 |
906 | 00148c 6f62 MOVWF 0x62,0x1 |
| Line 962... | Line 962... | ||
| 962 | F:\MCP\projects\CAN\canBase\Source\Main.c |
962 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 963 | F:\MCP\projects\CAN\canBase\Source\Main.c |
963 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 964 | 00153e d7db BRA 0x14f6 while(1) F:\MCP\projects\CAN\canBase\Source\Main.c |
964 | 00153e d7db BRA 0x14f6 while(1) F:\MCP\projects\CAN\canBase\Source\Main.c |
| 965 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
965 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
| 966 | static TICK t = 0; F:\MCP\projects\CAN\canBase\Source\Main.c |
966 | static TICK t = 0; F:\MCP\projects\CAN\canBase\Source\Main.c |
| 967 | 0014f6 |
967 | 0014f6 ec2d CALL 0x185a,0x0 if ((tickGet()-t)>TICK_SECOND) F:\MCP\projects\CAN\canBase\Source\Main.c |
| 968 | 0014f8 |
968 | 0014f8 f00c |
| 969 | 0014fa 0100 MOVLB 0x0 |
969 | 0014fa 0100 MOVLB 0x0 |
| 970 | 0014fc 5167 MOVF 0x67,0x0,0x1 |
970 | 0014fc 5167 MOVF 0x67,0x0,0x1 |
| 971 | 0014fe 5c12 SUBWF 0x12,0x0,0x0 |
971 | 0014fe 5c12 SUBWF 0x12,0x0,0x0 |
| 972 | 001500 6e00 MOVWF 0x0,0x0 |
972 | 001500 6e00 MOVWF 0x0,0x0 |
| 973 | 001502 5168 MOVF 0x68,0x0,0x1 |
973 | 001502 5168 MOVF 0x68,0x0,0x1 |
| Line 989... | Line 989... | ||
| 989 | 001522 0e00 MOVLW 0x0 |
989 | 001522 0e00 MOVLW 0x0 |
| 990 | 001524 5403 SUBFWB 0x3,0x0,0x0 |
990 | 001524 5403 SUBFWB 0x3,0x0,0x0 |
| 991 | 001526 e20b BC 0x153e |
991 | 001526 e20b BC 0x153e |
| 992 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
992 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
| 993 | 001528 7282 BTG 0x82,0x1,0x0 LED0_IO=~LED0_IO; F:\MCP\projects\CAN\canBase\Source\Main.c |
993 | 001528 7282 BTG 0x82,0x1,0x0 LED0_IO=~LED0_IO; F:\MCP\projects\CAN\canBase\Source\Main.c |
| 994 | 00152a |
994 | 00152a ec2d CALL 0x185a,0x0 t = tickGet(); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 995 | 00152c |
995 | 00152c f00c |
| 996 | 00152e c012 MOVFF 0x12,0x67 |
996 | 00152e c012 MOVFF 0x12,0x67 |
| 997 | 001530 f067 |
997 | 001530 f067 |
| 998 | 001532 c013 MOVFF 0x13,0x68 |
998 | 001532 c013 MOVFF 0x13,0x68 |
| 999 | 001534 f068 |
999 | 001534 f068 |
| 1000 | 001536 c014 MOVFF 0x14,0x69 |
1000 | 001536 c014 MOVFF 0x14,0x69 |
| Line 1059... | Line 1059... | ||
| 1059 | #ifdef USE_CAN F:\MCP\projects\CAN\canBase\Source\Main.c |
1059 | #ifdef USE_CAN F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1060 | 0015a0 ec4d CALL 0x109a,0x0 canISR(); F:\MCP\projects\CAN\canBase\Source\Main.c |
1060 | 0015a0 ec4d CALL 0x109a,0x0 canISR(); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1061 | 0015a2 f008 |
1061 | 0015a2 f008 |
| 1062 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
1062 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1063 | F:\MCP\projects\CAN\canBase\Source\Main.c |
1063 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1064 | 0015a4 |
1064 | 0015a4 ec37 CALL 0x186e,0x0 tickUpdate(); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1065 | 0015a6 |
1065 | 0015a6 f00c |
| 1066 | F:\MCP\projects\CAN\canBase\Source\Main.c |
1066 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1067 | 0015a8 52e5 MOVF 0xe5,0x1,0x0 } F:\MCP\projects\CAN\canBase\Source\Main.c |
1067 | 0015a8 52e5 MOVF 0xe5,0x1,0x0 } F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1068 | 0015aa ee00 LFSR 0x0,0xd |
1068 | 0015aa ee00 LFSR 0x0,0xd |
| 1069 | 0015ac f00d |
1069 | 0015ac f00d |
| 1070 | 0015ae 0e0e MOVLW 0xe |
1070 | 0015ae 0e0e MOVLW 0xe |
| Line 1158... | Line 1158... | ||
| 1158 | 001614 0004 CLRWDT ClrWdt(); F:\MCP\projects\CAN\canBase\Source\Main.c |
1158 | 001614 0004 CLRWDT ClrWdt(); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1159 | F:\MCP\projects\CAN\canBase\Source\Main.c |
1159 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1160 | 001616 0ef0 MOVLW 0xf0 switch(cm.funct) F:\MCP\projects\CAN\canBase\Source\Main.c |
1160 | 001616 0ef0 MOVLW 0xf0 switch(cm.funct) F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1161 | 001618 50db MOVF 0xdb,0x0,0x0 |
1161 | 001618 50db MOVF 0xdb,0x0,0x0 |
| 1162 | 00161a e001 BZ 0x161e |
1162 | 00161a e001 BZ 0x161e |
| 1163 | 00161c |
1163 | 00161c d06b BRA 0x16f4 |
| 1164 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
1164 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1165 | case FUNCT_BOOTLOADER: F:\MCP\projects\CAN\canBase\Source\Main.c |
1165 | case FUNCT_BOOTLOADER: F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1166 | 00161e |
1166 | 00161e 0ef3 MOVLW 0xf3 if (cm.nid==MY_NID && ((((unsigned int)cm.data[BOOT_DATA_RID_HIGH_INDEX])<<8)+cm.data[BOOT_DATA_RID_LOW_INDEX])==MY_ID) F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1167 | 001620 |
1167 | 001620 50db MOVF 0xdb,0x0,0x0 |
| 1168 | 001622 |
1168 | 001622 0100 MOVLB 0x0 |
| 1169 | 001624 |
1169 | 001624 5d62 SUBWF 0x62,0x0,0x1 |
| 1170 | 001626 |
1170 | 001626 e165 BNZ 0x16f2 |
| 1171 | 001628 |
1171 | 001628 0efc MOVLW 0xfc |
| 1172 | 00162a |
1172 | 00162a cfdb MOVFF 0xfdb,0x2 |
| 1173 | 00162c |
1173 | 00162c f002 |
| 1174 | 00162e |
1174 | 00162e c002 MOVFF 0x2,0x3 |
| 1175 | 001630 |
1175 | 001630 f003 |
| 1176 | 001632 |
1176 | 001632 6a02 CLRF 0x2,0x0 |
| 1177 | 001634 |
1177 | 001634 0efb MOVLW 0xfb |
| 1178 | 001636 50db MOVF 0xdb,0x0,0x0 |
1178 | 001636 50db MOVF 0xdb,0x0,0x0 |
| 1179 | 001638 0100 MOVLB 0x0 |
1179 | 001638 0100 MOVLB 0x0 |
| 1180 | 00163a |
1180 | 00163a 2402 ADDWF 0x2,0x0,0x0 |
| - | 1181 | 00163c 6e00 MOVWF 0x0,0x0 |
|
| - | 1182 | 00163e 0e00 MOVLW 0x0 |
|
| - | 1183 | 001640 2003 ADDWFC 0x3,0x0,0x0 |
|
| - | 1184 | 001642 6e01 MOVWF 0x1,0x0 |
|
| - | 1185 | 001644 0100 MOVLB 0x0 |
|
| - | 1186 | 001646 5160 MOVF 0x60,0x0,0x1 |
|
| - | 1187 | 001648 1800 XORWF 0x0,0x0,0x0 |
|
| - | 1188 | 00164a e102 BNZ 0x1650 |
|
| - | 1189 | 00164c 5161 MOVF 0x61,0x0,0x1 |
|
| - | 1190 | 00164e 1801 XORWF 0x1,0x0,0x0 |
|
| 1181 |
|
1191 | 001650 e150 BNZ 0x16f2 |
| - | 1192 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1193 | 001652 0ef1 MOVLW 0xf1 switch(cm.funcc) F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1194 | 001654 cfdb MOVFF 0xfdb,0x14 |
|
| - | 1195 | 001656 f014 |
|
| 1182 |
|
1196 | 001658 0ef2 MOVLW 0xf2 |
| - | 1197 | 00165a cfdb MOVFF 0xfdb,0x15 |
|
| - | 1198 | 00165c f015 |
|
| - | 1199 | 00165e 0e06 MOVLW 0x6 |
|
| - | 1200 | 001660 1814 XORWF 0x14,0x0,0x0 |
|
| - | 1201 | 001662 e101 BNZ 0x1666 |
|
| - | 1202 | 001664 5015 MOVF 0x15,0x0,0x0 |
|
| - | 1203 | 001666 e008 BZ 0x1678 |
|
| - | 1204 | 001668 0e01 MOVLW 0x1 |
|
| - | 1205 | 00166a 1814 XORWF 0x14,0x0,0x0 |
|
| - | 1206 | 00166c e101 BNZ 0x1670 |
|
| - | 1207 | 00166e 5015 MOVF 0x15,0x0,0x0 |
|
| - | 1208 | 001670 e001 BZ 0x1674 |
|
| - | 1209 | 001672 d03f BRA 0x16f2 |
|
| - | 1210 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1211 | 001674 00ff RESET case FUNCC_BOOT_INIT: Reset(); break; //User whant to program me, reset me. F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1212 | 001676 d03d BRA 0x16f2 |
|
| - | 1213 | case FUNCC_BOOT_SET_ID: F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1214 | // Change my ID and NID F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1215 | 001678 0ef8 MOVLW 0xf8 MY_ID=(((WORD)cm.data[BOOT_DATA_NEW_ID_HIGH])<<8)+cm.data[BOOT_DATA_NEW_ID_LOW]; F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| 1183 |
|
1216 | 00167a cfdb MOVFF 0xfdb,0x0 |
| 1184 |
|
1217 | 00167c f000 |
| 1185 |
|
1218 | 00167e c000 MOVFF 0x0,0x1 |
| 1186 |
|
1219 | 001680 f001 |
| 1187 |
|
1220 | 001682 6a00 CLRF 0x0,0x0 |
| 1188 |
|
1221 | 001684 0ef7 MOVLW 0xf7 |
| 1189 |
|
1222 | 001686 50db MOVF 0xdb,0x0,0x0 |
| 1190 |
|
1223 | 001688 0100 MOVLB 0x0 |
| 1191 |
|
1224 | 00168a 2400 ADDWF 0x0,0x0,0x0 |
| 1192 |
|
1225 | 00168c 6f60 MOVWF 0x60,0x1 |
| 1193 |
|
1226 | 00168e 0e00 MOVLW 0x0 |
| 1194 |
|
1227 | 001690 2001 ADDWFC 0x1,0x0,0x0 |
| 1195 |
|
1228 | 001692 6f61 MOVWF 0x61,0x1 |
| - | 1229 | 001694 0ef9 MOVLW 0xf9 MY_NID=cm.data[BOOT_DATA_NEW_NID]; F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1230 | 001696 cfdb MOVFF 0xfdb,0x62 |
|
| - | 1231 | 001698 f062 |
|
| - | 1232 | 00169a 0ef8 MOVLW 0xf8 EEWrite(NODE_ID_EE+1,cm.data[BOOT_DATA_NEW_ID_HIGH]); F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1233 | 00169c cfdb MOVFF 0xfdb,0xfe6 |
|
| - | 1234 | 00169e ffe6 |
|
| 1196 |
|
1235 | 0016a0 0e01 MOVLW 0x1 |
| - | 1236 | 0016a2 6ee6 MOVWF 0xe6,0x0 |
|
| - | 1237 | 0016a4 6ae6 CLRF 0xe6,0x0 |
|
| - | 1238 | 0016a6 eca3 CALL 0x1746,0x0 |
|
| - | 1239 | 0016a8 f00b |
|
| - | 1240 | 0016aa 52e5 MOVF 0xe5,0x1,0x0 |
|
| 1197 |
|
1241 | 0016ac 52e5 MOVF 0xe5,0x1,0x0 |
| 1198 |
|
1242 | 0016ae 52e5 MOVF 0xe5,0x1,0x0 |
| - | 1243 | 0016b0 0ef7 MOVLW 0xf7 EEWrite(NODE_ID_EE+2,cm.data[BOOT_DATA_NEW_ID_LOW]); F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1244 | 0016b2 cfdb MOVFF 0xfdb,0xfe6 |
|
| - | 1245 | 0016b4 ffe6 |
|
| 1199 |
|
1246 | 0016b6 0e02 MOVLW 0x2 |
| - | 1247 | 0016b8 6ee6 MOVWF 0xe6,0x0 |
|
| - | 1248 | 0016ba 6ae6 CLRF 0xe6,0x0 |
|
| - | 1249 | 0016bc eca3 CALL 0x1746,0x0 |
|
| - | 1250 | 0016be f00b |
|
| - | 1251 | 0016c0 52e5 MOVF 0xe5,0x1,0x0 |
|
| 1200 |
|
1252 | 0016c2 52e5 MOVF 0xe5,0x1,0x0 |
| 1201 |
|
1253 | 0016c4 52e5 MOVF 0xe5,0x1,0x0 |
| - | 1254 | 0016c6 0ef9 MOVLW 0xf9 EEWrite(NODE_ID_EE+3,cm.data[BOOT_DATA_NEW_NID]); F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1255 | 0016c8 cfdb MOVFF 0xfdb,0xfe6 |
|
| - | 1256 | 0016ca ffe6 |
|
| - | 1257 | 0016cc 0e03 MOVLW 0x3 |
|
| - | 1258 | 0016ce 6ee6 MOVWF 0xe6,0x0 |
|
| - | 1259 | 0016d0 6ae6 CLRF 0xe6,0x0 |
|
| - | 1260 | 0016d2 eca3 CALL 0x1746,0x0 |
|
| - | 1261 | 0016d4 f00b |
|
| - | 1262 | 0016d6 52e5 MOVF 0xe5,0x1,0x0 |
|
| - | 1263 | 0016d8 52e5 MOVF 0xe5,0x1,0x0 |
|
| - | 1264 | 0016da 52e5 MOVF 0xe5,0x1,0x0 |
|
| - | 1265 | 0016dc 0e2a MOVLW 0x2a EEWrite(NODE_ID_EE,NODE_HAS_ID); F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1266 | 0016de 6ee6 MOVWF 0xe6,0x0 |
|
| 1202 |
|
1267 | 0016e0 0e00 MOVLW 0x0 |
| - | 1268 | 0016e2 6ee6 MOVWF 0xe6,0x0 |
|
| - | 1269 | 0016e4 6ae6 CLRF 0xe6,0x0 |
|
| - | 1270 | 0016e6 eca3 CALL 0x1746,0x0 |
|
| 1203 |
|
1271 | 0016e8 f00b |
| - | 1272 | 0016ea 52e5 MOVF 0xe5,0x1,0x0 |
|
| - | 1273 | 0016ec 52e5 MOVF 0xe5,0x1,0x0 |
|
| - | 1274 | 0016ee 52e5 MOVF 0xe5,0x1,0x0 |
|
| - | 1275 | 0016f0 d000 BRA 0x16f2 break; F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1276 | } F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1277 | } F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1278 | F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| - | 1279 | F:\MCP\projects\CAN\canBase\Source\Main.c |
|
| 1204 |
|
1280 | 0016f2 d000 BRA 0x16f4 break; F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1205 | } F:\MCP\projects\CAN\canBase\Source\Main.c |
1281 | } F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1206 |
|
1282 | 0016f4 52e5 MOVF 0xe5,0x1,0x0 } F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1207 |
|
1283 | 0016f6 cfe7 MOVFF 0xfe7,0xfd9 |
| 1208 |
|
1284 | 0016f8 ffd9 |
| 1209 |
|
1285 | 0016fa 0012 RETURN 0x0 |
| 1210 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
1286 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1211 | F:\MCP\projects\CAN\canBase\Source\Main.c |
1287 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1212 | F:\MCP\projects\CAN\canBase\Source\Main.c |
1288 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1213 | // Below are mandantory when using bootloader F:\MCP\projects\CAN\canBase\Source\Main.c |
1289 | // Below are mandantory when using bootloader F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1214 | // define DEBUG_MODE to use without bootloader. F:\MCP\projects\CAN\canBase\Source\Main.c |
1290 | // define DEBUG_MODE to use without bootloader. F:\MCP\projects\CAN\canBase\Source\Main.c |
| Line 1216... | Line 1292... | ||
| 1216 | #ifndef DEBUG_MODE F:\MCP\projects\CAN\canBase\Source\Main.c |
1292 | #ifndef DEBUG_MODE F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1217 | extern void _startup (void); F:\MCP\projects\CAN\canBase\Source\Main.c |
1293 | extern void _startup (void); F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1218 | #pragma code _RESET_INTERRUPT_VECTOR = 0x001000 F:\MCP\projects\CAN\canBase\Source\Main.c |
1294 | #pragma code _RESET_INTERRUPT_VECTOR = 0x001000 F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1219 | void _reset (void) F:\MCP\projects\CAN\canBase\Source\Main.c |
1295 | void _reset (void) F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1220 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
1296 | { F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1221 | 001000 |
1297 | 001000 ef45 GOTO 0x188a _asm goto _startup _endasm F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1222 | 001002 f00c |
1298 | 001002 f00c |
| 1223 | 001004 0012 RETURN 0x0 } F:\MCP\projects\CAN\canBase\Source\Main.c |
1299 | 001004 0012 RETURN 0x0 } F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1224 | #pragma code F:\MCP\projects\CAN\canBase\Source\Main.c |
1300 | #pragma code F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1225 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
1301 | #endif F:\MCP\projects\CAN\canBase\Source\Main.c |
| 1226 | F:\MCP\projects\CAN\canBase\Source\Main.c |
1302 | F:\MCP\projects\CAN\canBase\Source\Main.c |
| Line 1250... | Line 1326... | ||
| 1250 | * Revision: $Revision: 94 $ F:\MCP\projects\CAN\Include\EEAccess.c |
1326 | * Revision: $Revision: 94 $ F:\MCP\projects\CAN\Include\EEAccess.c |
| 1251 | ********************************************************************/ F:\MCP\projects\CAN\Include\EEAccess.c |
1327 | ********************************************************************/ F:\MCP\projects\CAN\Include\EEAccess.c |
| 1252 | #include <p18cxxx.h> F:\MCP\projects\CAN\Include\EEAccess.c |
1328 | #include <p18cxxx.h> F:\MCP\projects\CAN\Include\EEAccess.c |
| 1253 | #include <EEaccess.h> F:\MCP\projects\CAN\Include\EEAccess.c |
1329 | #include <EEaccess.h> F:\MCP\projects\CAN\Include\EEAccess.c |
| 1254 | F:\MCP\projects\CAN\Include\EEAccess.c |
1330 | F:\MCP\projects\CAN\Include\EEAccess.c |
| 1255 |
|
1331 | 0016fc cfd9 MOVFF 0xfd9,0xfe6 BYTE EERead(WORD addr) F:\MCP\projects\CAN\Include\EEAccess.c |
| 1256 |
|
1332 | 0016fe ffe6 |
| 1257 |
|
1333 | 001700 cfe1 MOVFF 0xfe1,0xfd9 |
| 1258 |
|
1334 | 001702 ffd9 |
| 1259 | { F:\MCP\projects\CAN\Include\EEAccess.c |
1335 | { F:\MCP\projects\CAN\Include\EEAccess.c |
| 1260 |
|
1336 | 001704 0efd MOVLW 0xfd EEADRH=(BYTE)(addr>>8); F:\MCP\projects\CAN\Include\EEAccess.c |
| 1261 |
|
1337 | 001706 cfdb MOVFF 0xfdb,0x0 |
| 1262 |
|
1338 | 001708 f000 |
| 1263 |
|
1339 | 00170a 0efe MOVLW 0xfe |
| 1264 |
|
1340 | 00170c cfdb MOVFF 0xfdb,0x1 |
| 1265 |
|
1341 | 00170e f001 |
| 1266 |
|
1342 | 001710 c001 MOVFF 0x1,0x0 |
| 1267 |
|
1343 | 001712 f000 |
| 1268 |
|
1344 | 001714 6a01 CLRF 0x1,0x0 |
| 1269 |
|
1345 | 001716 5000 MOVF 0x0,0x0,0x0 |
| 1270 |
|
1346 | 001718 6eaa MOVWF 0xaa,0x0 |
| 1271 |
|
1347 | 00171a 0eff MOVLW 0xff EEADR=(BYTE)(addr & 0xFF); F:\MCP\projects\CAN\Include\EEAccess.c |
| 1272 |
|
1348 | 00171c 6ee7 MOVWF 0xe7,0x0 |
| 1273 |
|
1349 | 00171e 0efd MOVLW 0xfd |
| 1274 |
|
1350 | 001720 cfdb MOVFF 0xfdb,0x0 |
| 1275 |
|
1351 | 001722 f000 |
| 1276 |
|
1352 | 001724 0efe MOVLW 0xfe |
| 1277 |
|
1353 | 001726 cfdb MOVFF 0xfdb,0x1 |
| 1278 |
|
1354 | 001728 f001 |
| 1279 |
|
1355 | 00172a 50e7 MOVF 0xe7,0x0,0x0 |
| 1280 |
|
1356 | 00172c 1600 ANDWF 0x0,0x1,0x0 |
| 1281 |
|
1357 | 00172e 6a01 CLRF 0x1,0x0 |
| 1282 |
|
1358 | 001730 5000 MOVF 0x0,0x0,0x0 |
| 1283 |
|
1359 | 001732 6ea9 MOVWF 0xa9,0x0 |
| 1284 |
|
1360 | 001734 9ea6 BCF 0xa6,0x7,0x0 EECON1bits.EEPGD=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1285 |
|
1361 | 001736 9ca6 BCF 0xa6,0x6,0x0 EECON1bits.CFGS=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1286 |
|
1362 | 001738 80a6 BSF 0xa6,0x0,0x0 EECON1bits.RD=1; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1287 |
|
1363 | 00173a 50a8 MOVF 0xa8,0x0,0x0 return EEDATA; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1288 |
|
1364 | 00173c d000 BRA 0x173e |
| 1289 |
|
1365 | 00173e 52e5 MOVF 0xe5,0x1,0x0 } F:\MCP\projects\CAN\Include\EEAccess.c |
| 1290 |
|
1366 | 001740 cfe7 MOVFF 0xfe7,0xfd9 |
| 1291 |
|
1367 | 001742 ffd9 |
| 1292 |
|
1368 | 001744 0012 RETURN 0x0 |
| 1293 | F:\MCP\projects\CAN\Include\EEAccess.c |
1369 | F:\MCP\projects\CAN\Include\EEAccess.c |
| 1294 | F:\MCP\projects\CAN\Include\EEAccess.c |
1370 | F:\MCP\projects\CAN\Include\EEAccess.c |
| 1295 |
|
1371 | 001746 cfd9 MOVFF 0xfd9,0xfe6 void EEWrite(WORD addr,BYTE data) F:\MCP\projects\CAN\Include\EEAccess.c |
| 1296 |
|
1372 | 001748 ffe6 |
| 1297 |
|
1373 | 00174a cfe1 MOVFF 0xfe1,0xfd9 |
| 1298 |
|
1374 | 00174c ffd9 |
| 1299 | { F:\MCP\projects\CAN\Include\EEAccess.c |
1375 | { F:\MCP\projects\CAN\Include\EEAccess.c |
| 1300 |
|
1376 | 00174e 98a1 BCF 0xa1,0x4,0x0 PIR2bits.EEIF=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1301 |
|
1377 | 001750 0efd MOVLW 0xfd EEADRH=(BYTE)(addr>>8); F:\MCP\projects\CAN\Include\EEAccess.c |
| 1302 |
|
1378 | 001752 cfdb MOVFF 0xfdb,0x0 |
| 1303 |
|
1379 | 001754 f000 |
| 1304 |
|
1380 | 001756 0efe MOVLW 0xfe |
| 1305 |
|
1381 | 001758 cfdb MOVFF 0xfdb,0x1 |
| 1306 |
|
1382 | 00175a f001 |
| 1307 |
|
1383 | 00175c c001 MOVFF 0x1,0x0 |
| 1308 |
|
1384 | 00175e f000 |
| 1309 |
|
1385 | 001760 6a01 CLRF 0x1,0x0 |
| 1310 |
|
1386 | 001762 5000 MOVF 0x0,0x0,0x0 |
| 1311 |
|
1387 | 001764 6eaa MOVWF 0xaa,0x0 |
| 1312 |
|
1388 | 001766 0eff MOVLW 0xff EEADR=(BYTE)(addr & 0xFF); F:\MCP\projects\CAN\Include\EEAccess.c |
| 1313 |
|
1389 | 001768 6ee7 MOVWF 0xe7,0x0 |
| 1314 |
|
1390 | 00176a 0efd MOVLW 0xfd |
| 1315 |
|
1391 | 00176c cfdb MOVFF 0xfdb,0x0 |
| 1316 |
|
1392 | 00176e f000 |
| 1317 |
|
1393 | 001770 0efe MOVLW 0xfe |
| 1318 |
|
1394 | 001772 cfdb MOVFF 0xfdb,0x1 |
| 1319 |
|
1395 | 001774 f001 |
| 1320 |
|
1396 | 001776 50e7 MOVF 0xe7,0x0,0x0 |
| 1321 |
|
1397 | 001778 1600 ANDWF 0x0,0x1,0x0 |
| 1322 |
|
1398 | 00177a 6a01 CLRF 0x1,0x0 |
| 1323 |
|
1399 | 00177c 5000 MOVF 0x0,0x0,0x0 |
| 1324 |
|
1400 | 00177e 6ea9 MOVWF 0xa9,0x0 |
| 1325 |
|
1401 | 001780 0efc MOVLW 0xfc EEDATA=data; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1326 |
|
1402 | 001782 50db MOVF 0xdb,0x0,0x0 |
| 1327 |
|
1403 | 001784 6ea8 MOVWF 0xa8,0x0 |
| 1328 |
|
1404 | 001786 9ea6 BCF 0xa6,0x7,0x0 EECON1bits.EEPGD=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1329 |
|
1405 | 001788 9ca6 BCF 0xa6,0x6,0x0 EECON1bits.CFGS=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1330 |
|
1406 | 00178a 84a6 BSF 0xa6,0x2,0x0 EECON1bits.WREN=1; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1331 |
|
1407 | 00178c 9ef2 BCF 0xf2,0x7,0x0 INTCONbits.GIE=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1332 |
|
1408 | 00178e 0e55 MOVLW 0x55 EECON2=0x55; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1333 |
|
1409 | 001790 6ea7 MOVWF 0xa7,0x0 |
| 1334 |
|
1410 | 001792 0eaa MOVLW 0xaa EECON2=0xAA; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1335 |
|
1411 | 001794 6ea7 MOVWF 0xa7,0x0 |
| 1336 |
|
1412 | 001796 82a6 BSF 0xa6,0x1,0x0 EECON1bits.WR=1; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1337 |
|
1413 | 001798 8ef2 BSF 0xf2,0x7,0x0 INTCONbits.GIE=1; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1338 |
|
1414 | 00179a a8a1 BTFSS 0xa1,0x4,0x0 while(!PIR2bits.EEIF); F:\MCP\projects\CAN\Include\EEAccess.c |
| 1339 |
|
1415 | 00179c d7fe BRA 0x179a |
| 1340 |
|
1416 | 00179e 94a6 BCF 0xa6,0x2,0x0 EECON1bits.WREN=0; F:\MCP\projects\CAN\Include\EEAccess.c |
| 1341 |
|
1417 | 0017a0 52e5 MOVF 0xe5,0x1,0x0 } F:\MCP\projects\CAN\Include\EEAccess.c |
| 1342 |
|
1418 | 0017a2 cfe7 MOVFF 0xfe7,0xfd9 |
| 1343 |
|
1419 | 0017a4 ffd9 |
| 1344 |
|
1420 | 0017a6 0012 RETURN 0x0 |