Subversion Repositories HomeAutomation

Rev

Rev 53 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 53 Rev 56
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: Mon Oct 23 22:58:01 2006
3
Listing File Generated: Wed Oct 25 15:35:16 2006
4
 
4
 
5
 
5
 
6
Address  Value    Disassembly              Source                                                                           File
6
Address  Value    Disassembly              Source                                                                           File
7
-------  -------  -----------------------  -------------------------------------------------------------------------------  -----
7
-------  -------  -----------------------  -------------------------------------------------------------------------------  -----
8
                                           /*********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\Main.c
8
                                           /*********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\uart.c
9
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
9
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
10
                                            *                  Main application                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
10
                                            *                  UART                                                         F:\MCP\projects\CAN\canToSerial\Source\uart.c
11
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
11
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
12
                                            *********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\Main.c
12
                                            *********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\uart.c
13
                                            * FileName:        Main.c                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
13
                                            * FileName:        uart.c                                                       F:\MCP\projects\CAN\canToSerial\Source\uart.c
14
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
14
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
15
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
15
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
16
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canToSerial\Source\Main.c
16
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canToSerial\Source\uart.c
17
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
17
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
18
                                            ********************************************************************/           F:\MCP\projects\CAN\canToSerial\Source\Main.c
18
                                            ********************************************************************/           F:\MCP\projects\CAN\canToSerial\Source\uart.c
19
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
19
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
20
                                           #include <compiler.h>                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
20
                                           #include <uart.h>                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
21
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
21
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
22
                                           #include <Tick.h>                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
22
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
23
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
23
                                           #ifdef USE_UART                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
24
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
24
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
25
                                           	#include <CAN.h>;                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
25
                                           static char uartBusy(void);                                                      F:\MCP\projects\CAN\canToSerial\Source\uart.c
26
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
26
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
27
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
27
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
28
                                           #ifdef USE_UART                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
28
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
29
                                           	#include <uart.h>                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
29
                                           *	Function: uartInit                                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
30
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
30
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
31
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
31
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\uart.c
32
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
32
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
33
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
33
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\canToSerial\Source\uart.c
34
                                           static void mainInit(void);                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
34
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
35
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
35
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
36
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
36
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
37
                                           void main()                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
37
                                           void uartInit()                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
38
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
38
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
39
                                           	static TICK t = 0;                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
39
                                           		// Configure USART                                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
40
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
40
0009c4   8e94     BSF       0x94,0x7,0x0   		TRISCbits.TRISC7=1;                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
41
                                           	// Inits                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
41
0009c6   9c94     BCF       0x94,0x6,0x0   		TRISCbits.TRISC6=0;                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
42
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
42
0009c8   0e20     MOVLW     0x20           		TXSTA=0b00100000; // Low BRG speed                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
43
000500   d874     RCALL     0x5ea          	mainInit();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
43
0009ca   6eac     MOVWF     0xac,0x0                                                                                        
44
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
44
0009cc   0e90     MOVLW     0x90           		RCSTA=0b10010000;                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
45
                                           	#ifdef USE_CAN                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
45
0009ce   6eab     MOVWF     0xab,0x0                                                                                        
46
000502   ec22     CALL      0x44,0x0       		canInit();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
46
0009d0   0e1f     MOVLW     0x1f           		SPBRG = SPBRG_VAL;                                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
47
000504   f000                                                                                                               
47
0009d2   6eaf     MOVWF     0xaf,0x0                                                                                        
48
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
48
                                           		// USART RX interrupt                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
49
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
49
0009d4   9a9e     BCF       0x9e,0x5,0x0   		PIR1bits.RCIF=0;                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
50
                                           	#ifdef USE_UART                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
50
0009d6   8a9d     BSF       0x9d,0x5,0x0   		PIE1bits.RCIE=1;                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
51
000506   ec83     CALL      0x906,0x0      		uartInit();                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
51
                                           		// High interrupt                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
52
000508   f004                                                                                                               
52
0009d8   8a9f     BSF       0x9f,0x5,0x0   		IPR1bits.RCIP=1;                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
53
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
53
0009da   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
54
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
54
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
55
00050a   ec56     CALL      0xaac,0x0      	tickInit();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
55
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
56
00050c   f005                                                                                                               
56
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
57
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
57
                                           *	Function: uartPutc                                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
58
00050e   d7ff     BRA       0x50e          	while(1)                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
58
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
59
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
59
                                           *	Input:	BYTE c to send on uart                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
60
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
60
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
61
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
61
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
62
000510   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
62
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
63
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
63
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
64
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
64
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
65
                                           #pragma interruptlow HighISR                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
65
0009dc   cfd9     MOVFF     0xfd9,0xfe6    void uartPutc(BYTE c)                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
66
000512   cfd8     MOVFF     0xfd8,0xfe4    void HighISR(void)                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
66
0009de   ffe6                                                                                                               
67
000514   ffe4                                                                                                               
67
0009e0   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
68
000516   cfe0     MOVFF     0xfe0,0xfe4                                                                                     
68
0009e2   ffd9                                                                                                               
69
000518   ffe4                                                                                                               
69
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
70
00051a   6ee4     MOVWF     0xe4,0x0                                                                                        
70
                                           	// Write the data byte to the USART                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
71
00051c   cfda     MOVFF     0xfda,0xfe4                                                                                     
71
0009e4   0efe     MOVLW     0xfe           	TXREG = c;                                                                      F:\MCP\projects\CAN\canToSerial\Source\uart.c
72
00051e   ffe4                                                                                                               
72
0009e6   50db     MOVF      0xdb,0x0,0x0                                                                                    
73
000520   cfe2     MOVFF     0xfe2,0xfda                                                                                     
73
0009e8   6ead     MOVWF     0xad,0x0                                                                                        
74
000522   ffda                                                                                                               
74
0009ea   d84b     RCALL     0xa82          	while(uartBusy());                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
75
000524   cfe9     MOVFF     0xfe9,0xfe4                                                                                     
75
0009ec   0900     IORLW     0x0                                                                                             
76
000526   ffe4                                                                                                               
76
0009ee   e001     BZ        0x9f2                                                                                           
77
000528   cfea     MOVFF     0xfea,0xfe4                                                                                     
77
0009f0   d7fc     BRA       0x9ea                                                                                           
78
00052a   ffe4                                                                                                               
78
0009f2   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
79
00052c   cff6     MOVFF     0xff6,0xfe4                                                                                     
79
0009f4   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
80
00052e   ffe4                                                                                                               
80
0009f6   ffd9                                                                                                               
81
000530   cff7     MOVFF     0xff7,0xfe4                                                                                     
81
0009f8   0012     RETURN    0x0                                                                                             
82
000532   ffe4                                                                                                               
82
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
83
000534   cff5     MOVFF     0xff5,0xfe4                                                                                     
83
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
84
000536   ffe4                                                                                                               
84
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
85
000538   cff3     MOVFF     0xff3,0xfe4                                                                                     
85
                                           *	Function: uartPuts                                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
86
00053a   ffe4                                                                                                               
86
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
87
00053c   cff4     MOVFF     0xff4,0xfe4                                                                                     
87
                                           *	Input:	Byte array to send on uart                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
88
00053e   ffe4                                                                                                               
88
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
89
000540   cffa     MOVFF     0xffa,0xfe4                                                                                     
89
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
90
000542   ffe4                                                                                                               
90
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
91
000544   ee00     LFSR      0x0,0x14                                                                                        
91
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
92
000546   f014                                                                                                               
92
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
93
000548   0e0b     MOVLW     0xb                                                                                             
93
0009fa   cfd9     MOVFF     0xfd9,0xfe6    void uartPuts(BYTE c[])                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
94
00054a   04e8     DECF      0xe8,0x0,0x0                                                                                    
94
0009fc   ffe6                                                                                                               
95
00054c   e303     BNC       0x554                                                                                           
95
0009fe   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
96
00054e   cfee     MOVFF     0xfee,0xfe4                                                                                     
96
000a00   ffd9                                                                                                               
97
000550   ffe4                                                                                                               
97
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
98
000552   d7fb     BRA       0x54a                                                                                           
98
                                           	do                                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
99
000554   ee00     LFSR      0x0,0x0                                                                                         
99
                                             	{  // Transmit a byte                                                         F:\MCP\projects\CAN\canToSerial\Source\uart.c
100
000556   f000                                                                                                               
100
000a02   d83f     RCALL     0xa82              	while(uartBusy());                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
101
000558   0e14     MOVLW     0x14                                                                                            
101
000a04   0900     IORLW     0x0                                                                                             
102
00055a   04e8     DECF      0xe8,0x0,0x0                                                                                    
102
000a06   e001     BZ        0xa0a                                                                                           
103
00055c   e303     BNC       0x564                                                                                           
103
000a08   d7fc     BRA       0xa02                                                                                           
104
00055e   cfee     MOVFF     0xfee,0xfe4                                                                                     
104
000a0a   0efd     MOVLW     0xfd               	uartPutc(*c);                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
105
000560   ffe4                                                                                                               
105
000a0c   cfdb     MOVFF     0xfdb,0xfe9                                                                                     
106
000562   d7fb     BRA       0x55a                                                                                           
106
000a0e   ffe9                                                                                                               
107
000564   52e6     MOVF      0xe6,0x1,0x0                                                                                    
107
000a10   0efe     MOVLW     0xfe                                                                                            
108
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
108
000a12   cfdb     MOVFF     0xfdb,0xfea                                                                                     
109
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
109
000a14   ffea                                                                                                               
110
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
110
000a16   50ef     MOVF      0xef,0x0,0x0                                                                                    
111
                                           	#ifdef USE_UART                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
111
000a18   6ee6     MOVWF     0xe6,0x0                                                                                        
112
000566   ecec     CALL      0x9d8,0x0      		uartISR();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
112
000a1a   dfe0     RCALL     0x9dc                                                                                           
113
000568   f004                                                                                                               
113
000a1c   52e5     MOVF      0xe5,0x1,0x0                                                                                    
114
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
114
000a1e   0efd     MOVLW     0xfd             	} while( *c++ );                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
115
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
115
000a20   cfdb     MOVFF     0xfdb,0xfe9                                                                                     
116
                                           	#ifdef USE_CAN                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
116
000a22   ffe9                                                                                                               
117
00056a   ec4d     CALL      0x9a,0x0       		canISR();                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
117
000a24   2adb     INCF      0xdb,0x1,0x0                                                                                    
118
00056c   f000                                                                                                               
118
000a26   0efe     MOVLW     0xfe                                                                                            
119
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
119
000a28   cfdb     MOVFF     0xfdb,0xfea                                                                                     
120
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
120
000a2a   ffea                                                                                                               
121
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
121
000a2c   e301     BNC       0xa30                                                                                           
122
00056e   ec6a     CALL      0xad4,0x0      	tickUpdate();                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
122
000a2e   2adb     INCF      0xdb,0x1,0x0                                                                                    
123
000570   f005                                                                                                               
123
000a30   50ef     MOVF      0xef,0x0,0x0                                                                                    
124
000572   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
124
000a32   e1e7     BNZ       0xa02                                                                                           
125
000574   ee00     LFSR      0x0,0x13                                                                                        
125
000a34   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
126
000576   f013                                                                                                               
126
000a36   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
127
000578   0e14     MOVLW     0x14                                                                                            
127
000a38   ffd9                                                                                                               
128
00057a   04e8     DECF      0xe8,0x0,0x0                                                                                    
128
000a3a   0012     RETURN    0x0                                                                                             
129
00057c   e303     BNC       0x584                                                                                           
129
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
130
00057e   cfe5     MOVFF     0xfe5,0xfed                                                                                     
130
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
131
000580   ffed                                                                                                               
131
                                           *	Function: uartPutrs                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
132
000582   d7fb     BRA       0x57a                                                                                           
132
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
133
000584   ee00     LFSR      0x0,0x1e                                                                                        
133
                                           *	Input:	Byte array to send on uart (static)                                     F:\MCP\projects\CAN\canToSerial\Source\uart.c
134
000586   f01e                                                                                                               
134
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
135
000588   0e0b     MOVLW     0xb                                                                                             
135
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
136
00058a   04e8     DECF      0xe8,0x0,0x0                                                                                    
136
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
137
00058c   e303     BNC       0x594                                                                                           
137
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
138
00058e   cfe5     MOVFF     0xfe5,0xfed                                                                                     
138
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
139
000590   ffed                                                                                                               
139
000a3c   cfd9     MOVFF     0xfd9,0xfe6    void uartPutrs(const rom char *c)                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
140
000592   d7fb     BRA       0x58a                                                                                           
140
000a3e   ffe6                                                                                                               
141
000594   cfe5     MOVFF     0xfe5,0xffa                                                                                     
141
000a40   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
142
000596   fffa                                                                                                               
142
000a42   ffd9                                                                                                               
143
000598   cfe5     MOVFF     0xfe5,0xff4                                                                                     
143
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
144
00059a   fff4                                                                                                               
144
                                           	do                                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
145
00059c   cfe5     MOVFF     0xfe5,0xff3                                                                                     
145
                                             	{  // Transmit a byte                                                         F:\MCP\projects\CAN\canToSerial\Source\uart.c
146
00059e   fff3                                                                                                               
146
000a44   d81e     RCALL     0xa82              	while(uartBusy());                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
147
0005a0   cfe5     MOVFF     0xfe5,0xff5                                                                                     
147
000a46   0900     IORLW     0x0                                                                                             
148
0005a2   fff5                                                                                                               
148
000a48   e001     BZ        0xa4c                                                                                           
149
0005a4   cfe5     MOVFF     0xfe5,0xff7                                                                                     
149
000a4a   d7fc     BRA       0xa44                                                                                           
150
0005a6   fff7                                                                                                               
150
000a4c   0efd     MOVLW     0xfd               	uartPutc(*c);                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
151
0005a8   cfe5     MOVFF     0xfe5,0xff6                                                                                     
151
000a4e   cfdb     MOVFF     0xfdb,0xff6                                                                                     
152
0005aa   fff6                                                                                                               
152
000a50   fff6                                                                                                               
153
0005ac   cfe5     MOVFF     0xfe5,0xfea                                                                                     
153
000a52   0efe     MOVLW     0xfe                                                                                            
154
0005ae   ffea                                                                                                               
154
000a54   cfdb     MOVFF     0xfdb,0xff7                                                                                     
155
0005b0   cfe5     MOVFF     0xfe5,0xfe9                                                                                     
155
000a56   fff7                                                                                                               
156
0005b2   ffe9                                                                                                               
156
000a58   0008     TBLRD                                                                                                     
157
0005b4   cfe5     MOVFF     0xfe5,0xfda                                                                                     
157
000a5a   50f5     MOVF      0xf5,0x0,0x0                                                                                    
158
0005b6   ffda                                                                                                               
158
000a5c   6ee6     MOVWF     0xe6,0x0                                                                                        
159
0005b8   50e5     MOVF      0xe5,0x0,0x0                                                                                    
159
000a5e   dfbe     RCALL     0x9dc                                                                                           
160
0005ba   cfe5     MOVFF     0xfe5,0xfe0                                                                                     
160
000a60   52e5     MOVF      0xe5,0x1,0x0                                                                                    
161
0005bc   ffe0                                                                                                               
161
000a62   0efd     MOVLW     0xfd             	} while( *c++ );                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
162
0005be   cfe5     MOVFF     0xfe5,0xfd8                                                                                     
162
000a64   cfdb     MOVFF     0xfdb,0xff6                                                                                     
163
0005c0   ffd8                                                                                                               
163
000a66   fff6                                                                                                               
164
0005c2   0010     RETFIE    0x0                                                                                             
164
000a68   2adb     INCF      0xdb,0x1,0x0                                                                                    
165
                                           #pragma code highVector=0x08                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
165
000a6a   0efe     MOVLW     0xfe                                                                                            
166
                                           void HighVector (void)                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
166
000a6c   cfdb     MOVFF     0xfdb,0xff7                                                                                     
167
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
167
000a6e   fff7                                                                                                               
168
000008   ef89     GOTO      0x512              _asm goto HighISR _endasm                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
168
000a70   e301     BNC       0xa74                                                                                           
169
00000a   f002                                                                                                               
169
000a72   2adb     INCF      0xdb,0x1,0x0                                                                                    
170
00000c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
170
000a74   0008     TBLRD                                                                                                     
171
                                           #pragma code // Return to default code section                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
171
000a76   50f5     MOVF      0xf5,0x0,0x0                                                                                    
172
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
172
000a78   e1e5     BNZ       0xa44                                                                                           
173
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
173
000a7a   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
174
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
174
000a7c   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
175
                                           #pragma interruptlow LowISR                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
175
000a7e   ffd9                                                                                                               
176
0005c4   cfd8     MOVFF     0xfd8,0xfe4    void LowISR(void)                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
176
000a80   0012     RETURN    0x0                                                                                             
177
0005c6   ffe4                                                                                                               
177
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
178
0005c8   cfe0     MOVFF     0xfe0,0xfe4                                                                                     
178
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
179
0005ca   ffe4                                                                                                               
179
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
180
0005cc   6ee4     MOVWF     0xe4,0x0                                                                                        
180
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
181
0005ce   cfda     MOVFF     0xfda,0xfe4                                                                                     
181
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
182
0005d0   ffe4                                                                                                               
182
                                           *	Function: uartBusy                                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
183
0005d2   cfe2     MOVFF     0xfe2,0xfda                                                                                     
183
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
184
0005d4   ffda                                                                                                               
184
                                           *	Input:	none.                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
185
0005d6   52e6     MOVF      0xe6,0x1,0x0                                                                                    
185
                                           *	Output: If usart busy or not.                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
186
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
186
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
187
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
187
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
188
0005d8   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
188
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
189
0005da   cfe5     MOVFF     0xfe5,0xfda                                                                                     
189
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
190
0005dc   ffda                                                                                                               
190
                                           char uartBusy(void)                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
191
0005de   50e5     MOVF      0xe5,0x0,0x0                                                                                    
191
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
192
0005e0   cfe5     MOVFF     0xfe5,0xfe0                                                                                     
192
000a82   50ac     MOVF      0xac,0x0,0x0   	return !TXSTAbits.TRMT;                                                         F:\MCP\projects\CAN\canToSerial\Source\uart.c
193
0005e2   ffe0                                                                                                               
193
000a84   0b02     ANDLW     0x2                                                                                             
194
0005e4   cfe5     MOVFF     0xfe5,0xfd8                                                                                     
194
000a86   0a02     XORLW     0x2                                                                                             
195
0005e6   ffd8                                                                                                               
195
000a88   e001     BZ        0xa8c                                                                                           
196
0005e8   0010     RETFIE    0x0                                                                                             
196
000a8a   0e01     MOVLW     0x1                                                                                             
197
                                           #pragma code lowVector=0x18                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
197
000a8c   d000     BRA       0xa8e                                                                                           
198
                                           void LowVector (void)                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
198
000a8e   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
199
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
199
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
200
000018   efe2     GOTO      0x5c4              _asm goto LowISR _endasm                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
200
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
201
00001a   f002                                                                                                               
201
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
202
00001c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
202
                                           *	Function: uartGet                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
203
                                           #pragma code // Return to default code section                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
203
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
204
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
204
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\uart.c
205
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
205
                                           *	Output: Byte read                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
206
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
206
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
207
                                           *	Function: mainInit                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
207
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
208
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
208
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\uart.c
209
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
209
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
210
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
210
                                           BYTE uartGet(void)                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
211
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
211
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
212
                                           *	Affects: Se code                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
212
                                           	// Return the received data                                                     F:\MCP\projects\CAN\canToSerial\Source\uart.c
213
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
213
000a90   50ae     MOVF      0xae,0x0,0x0   	return RCREG;	                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
214
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
214
000a92   d000     BRA       0xa94                                                                                           
215
                                           void mainInit()                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
215
000a94   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
216
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
216
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
217
0005ea   9294     BCF       0x94,0x1,0x0   	LED0_TRIS=0;	                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
217
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
218
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
218
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
219
                                               // Enable internal PORTB pull-ups                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
219
                                           *	Function: uartISR                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
220
0005ec   9ef1     BCF       0xf1,0x7,0x0       INTCON2bits.RBPU = 0;                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
220
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
221
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
221
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\uart.c
222
                                           	// Enable Interrupts                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
222
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
223
0005ee   8ef2     BSF       0xf2,0x7,0x0       INTCONbits.GIEH = 1;                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
223
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
224
0005f0   8cf2     BSF       0xf2,0x6,0x0       INTCONbits.GIEL = 1;                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
224
                                           *	Affects: call to uartParse                                                     F:\MCP\projects\CAN\canToSerial\Source\uart.c
225
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
225
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\uart.c
226
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
226
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
227
                                           	// Enable interrupt prirority                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
227
                                           void uartISR(void)                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
228
0005f2   8ed0     BSF       0xd0,0x7,0x0   	RCONbits.IPEN=1;                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
228
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
229
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
229
000a96   509e     MOVF      0x9e,0x0,0x0   	if (PIR1bits.RCIF==1 && PIE1bits.RCIE==1)                                       F:\MCP\projects\CAN\canToSerial\Source\uart.c
230
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
230
000a98   0b20     ANDLW     0x20                                                                                            
231
0005f4   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
231
000a9a   e00d     BZ        0xab6                                                                                           
232
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
232
000a9c   509d     MOVF      0x9d,0x0,0x0                                                                                    
233
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
233
000a9e   0b20     ANDLW     0x20                                                                                            
234
                                           *	Function: canParse                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
234
000aa0   e00a     BZ        0xab6                                                                                           
235
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
235
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
236
                                           *	Input:	Received can message                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
236
000aa2   a2ab     BTFSS     0xab,0x1,0x0   		if (RCSTAbits.OERR) { RCSTAbits.CREN=0; RCSTAbits.CREN=1; }                    F:\MCP\projects\CAN\canToSerial\Source\uart.c
237
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
237
000aa4   d002     BRA       0xaaa                                                                                           
238
                                           *	Pre-conditions: canInit and received packet.                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
238
000aa6   98ab     BCF       0xab,0x4,0x0                                                                                    
239
                                           *	Affects: Sensors/actuators/etc. See code.                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
239
000aa8   88ab     BSF       0xab,0x4,0x0                                                                                    
240
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
240
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
241
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
241
000aaa   dff2     RCALL     0xa90          		uartParse(uartGet());                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
242
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
242
000aac   6ee6     MOVWF     0xe6,0x0                                                                                        
243
0005f6   cfd9     MOVFF     0xfd9,0xfe6    void canParse(CAN_MESSAGE cm)                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
243
000aae   ece8     CALL      0x7d0,0x0                                                                                       
244
0005f8   ffe6                                                                                                               
244
000ab0   f003                                                                                                               
245
0005fa   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
245
000ab2   52e5     MOVF      0xe5,0x1,0x0                                                                                    
246
0005fc   ffd9                                                                                                               
246
000ab4   9a9e     BCF       0x9e,0x5,0x0   		PIR1bits.RCIF=0;                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
247
0005fe   0e02     MOVLW     0x2                                                                                             
247
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
248
000600   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
248
000ab6   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
249
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
249
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
250
000602   6ade     CLRF      0xde,0x0       	int i=0;                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
250
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
251
000604   6add     CLRF      0xdd,0x0                                                                                        
251
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
252
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
252
                                           *	Function: uartDataRedy                                                         F:\MCP\projects\CAN\canToSerial\Source\uart.c
253
000606   0efd     MOVLW     0xfd           	uartPutc(UART_START_BYTE);                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
253
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
254
000608   6ee6     MOVWF     0xe6,0x0                                                                                        
254
                                           *	Input:	none.                                                                   F:\MCP\projects\CAN\canToSerial\Source\uart.c
255
00060a   ec8f     CALL      0x91e,0x0                                                                                       
255
                                           *	Output: If usart data are redy to be read.                                     F:\MCP\projects\CAN\canToSerial\Source\uart.c
256
00060c   f004                                                                                                               
256
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\canToSerial\Source\uart.c
257
00060e   52e5     MOVF      0xe5,0x1,0x0                                                                                    
257
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
258
000610   0ef1     MOVLW     0xf1           	uartPutc((BYTE)(cm.ident));                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
258
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\uart.c
259
000612   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
259
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
260
000614   ffe6                                                                                                               
260
                                           char uartDataRedy(void)                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
261
000616   ec8f     CALL      0x91e,0x0                                                                                       
261
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
262
000618   f004                                                                                                               
262
000ab8   a2ab     BTFSS     0xab,0x1,0x0   	if(RCSTAbits.OERR)                                                              F:\MCP\projects\CAN\canToSerial\Source\uart.c
263
00061a   52e5     MOVF      0xe5,0x1,0x0                                                                                    
263
000aba   d002     BRA       0xac0                                                                                           
264
00061c   0ef1     MOVLW     0xf1           	uartPutc((BYTE)(cm.ident>>8));                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
264
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
265
00061e   cfdb     MOVFF     0xfdb,0x0                                                                                       
265
000abc   98ab     BCF       0xab,0x4,0x0   		RCSTAbits.CREN = 0;                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
266
000620   f000                                                                                                               
266
000abe   88ab     BSF       0xab,0x4,0x0   		RCSTAbits.CREN = 1;                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
267
000622   0ef2     MOVLW     0xf2                                                                                            
267
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\uart.c
268
000624   cfdb     MOVFF     0xfdb,0x1                                                                                       
268
000ac0   509e     MOVF      0x9e,0x0,0x0     return PIR1bits.RCIF;                                                          F:\MCP\projects\CAN\canToSerial\Source\uart.c
269
000626   f001                                                                                                               
269
000ac2   0b20     ANDLW     0x20                                                                                            
270
000628   0ef3     MOVLW     0xf3                                                                                            
270
000ac4   e001     BZ        0xac8                                                                                           
271
00062a   cfdb     MOVFF     0xfdb,0x2                                                                                       
271
000ac6   0e01     MOVLW     0x1                                                                                             
272
00062c   f002                                                                                                               
272
000ac8   d000     BRA       0xaca                                                                                           
273
00062e   0ef4     MOVLW     0xf4                                                                                            
273
000aca   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\uart.c
274
000630   cfdb     MOVFF     0xfdb,0x3                                                                                       
274
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\uart.c
275
000632   f003                                                                                                               
275
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\uart.c
276
000634   0e08     MOVLW     0x8                                                                                             
276
                                           /*********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
277
000636   90d8     BCF       0xd8,0x0,0x0                                                                                    
277
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
278
000638   3203     RRCF      0x3,0x1,0x0                                                                                     
278
                                            *                  CAN driver                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
279
00063a   3202     RRCF      0x2,0x1,0x0                                                                                     
279
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
280
00063c   3201     RRCF      0x1,0x1,0x0                                                                                     
280
                                            *********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
281
00063e   3200     RRCF      0x0,0x1,0x0                                                                                     
281
                                            * FileName:        CAN.c                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
282
000640   06e8     DECF      0xe8,0x1,0x0                                                                                    
282
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
283
000642   e1f9     BNZ       0x636                                                                                           
283
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
284
000644   5000     MOVF      0x0,0x0,0x0                                                                                     
284
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
285
000646   6ee6     MOVWF     0xe6,0x0                                                                                        
285
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
286
000648   ec8f     CALL      0x91e,0x0                                                                                       
286
                                            ********************************************************************/           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
287
00064a   f004                                                                                                               
287
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
288
00064c   52e5     MOVF      0xe5,0x1,0x0                                                                                    
288
                                           #include <CANdefs.h>                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
289
00064e   0ef1     MOVLW     0xf1           	uartPutc((BYTE)(cm.ident>>;16));                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
289
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
290
000650   cfdb     MOVFF     0xfdb,0x0                                                                                       
290
                                           #include <CAN.h>                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
291
000652   f000                                                                                                               
291
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
292
000654   0ef2     MOVLW     0xf2                                                                                            
292
                                           static void canGetPacket(void);                                                  F:\MCP\projects\CAN\canToSerial\Source\CAN.c
293
000656   cfdb     MOVFF     0xfdb,0x1                                                                                       
293
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
294
000658   f001                                                                                                               
294
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
295
00065a   0ef3     MOVLW     0xf3                                                                                            
295
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
296
00065c   cfdb     MOVFF     0xfdb,0x2                                                                                       
296
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
297
00065e   f002                                                                                                               
297
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
298
000660   0ef4     MOVLW     0xf4                                                                                            
298
                                           *	Function: canInit                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
299
000662   cfdb     MOVFF     0xfdb,0x3                                                                                       
299
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
300
000664   f003                                                                                                               
300
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
301
000666   0e10     MOVLW     0x10                                                                                            
301
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
302
000668   90d8     BCF       0xd8,0x0,0x0                                                                                    
302
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
303
00066a   3203     RRCF      0x3,0x1,0x0                                                                                     
303
                                           *	Affects: Changes can registers.                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
304
00066c   3202     RRCF      0x2,0x1,0x0                                                                                     
304
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
305
00066e   3201     RRCF      0x1,0x1,0x0                                                                                     
305
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
306
000670   3200     RRCF      0x0,0x1,0x0                                                                                     
306
                                           void canInit()                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
307
000672   06e8     DECF      0xe8,0x1,0x0                                                                                    
307
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
308
000674   e1f9     BNZ       0x668                                                                                           
308
000044   0e80     MOVLW     0x80           	CANCON = 0x80; //request config mode                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
309
000676   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
310
000678   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
311
00067a   ec8f     CALL      0x91e,0x0                                                                                       
-
 
312
00067c   f004                                                                                                               
-
 
313
00067e   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
314
000680   0ef1     MOVLW     0xf1           	uartPutc((BYTE)(cm.ident>>24));                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
315
000682   cfdb     MOVFF     0xfdb,0x0                                                                                       
-
 
316
000684   f000                                                                                                               
-
 
317
000686   0ef2     MOVLW     0xf2                                                                                            
-
 
318
000688   cfdb     MOVFF     0xfdb,0x1                                                                                       
-
 
319
00068a   f001                                                                                                               
-
 
320
00068c   0ef3     MOVLW     0xf3                                                                                            
-
 
321
00068e   cfdb     MOVFF     0xfdb,0x2                                                                                       
-
 
322
000690   f002                                                                                                               
-
 
323
000692   0ef4     MOVLW     0xf4                                                                                            
-
 
324
000694   cfdb     MOVFF     0xfdb,0x3                                                                                       
-
 
325
000696   f003                                                                                                               
-
 
326
000698   0e18     MOVLW     0x18                                                                                            
-
 
327
00069a   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
328
00069c   3203     RRCF      0x3,0x1,0x0                                                                                     
-
 
329
00069e   3202     RRCF      0x2,0x1,0x0                                                                                     
-
 
330
0006a0   3201     RRCF      0x1,0x1,0x0                                                                                     
-
 
331
0006a2   3200     RRCF      0x0,0x1,0x0                                                                                     
-
 
332
0006a4   06e8     DECF      0xe8,0x1,0x0                                                                                    
-
 
333
0006a6   e1f9     BNZ       0x69a                                                                                           
-
 
334
0006a8   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
335
0006aa   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
336
0006ac   ec8f     CALL      0x91e,0x0                                                                                       
-
 
337
0006ae   f004                                                                                                               
-
 
338
0006b0   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
339
0006b2   0ef5     MOVLW     0xf5           	uartPutc(cm.extended);                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
340
0006b4   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
-
 
341
0006b6   ffe6                                                                                                               
-
 
342
0006b8   ec8f     CALL      0x91e,0x0                                                                                       
-
 
343
0006ba   f004                                                                                                               
-
 
344
0006bc   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
345
0006be   0ef6     MOVLW     0xf6           	uartPutc(cm.data_length);                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
346
0006c0   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
-
 
347
0006c2   ffe6                                                                                                               
-
 
348
0006c4   ec8f     CALL      0x91e,0x0                                                                                       
-
 
349
0006c6   f004                                                                                                               
-
 
350
0006c8   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
351
0006ca   6ade     CLRF      0xde,0x0       	for(i=0;i<8;i++) uartPutc(cm.data[i]);                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
352
0006cc   6add     CLRF      0xdd,0x0                                                                                        
-
 
353
0006ce   cfde     MOVFF     0xfde,0x0                                                                                       
-
 
354
0006d0   f000                                                                                                               
-
 
355
0006d2   cfdd     MOVFF     0xfdd,0x1                                                                                       
-
 
356
0006d4   f001                                                                                                               
-
 
357
0006d6   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
358
0006d8   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
359
0006da   e604     BN        0x6e4                                                                                           
-
 
360
0006dc   0e08     MOVLW     0x8                                                                                             
-
 
361
0006de   5c00     SUBWF     0x0,0x0,0x0                                                                                     
-
 
362
0006e0   0e00     MOVLW     0x0                                                                                             
-
 
363
0006e2   5801     SUBWFB    0x1,0x0,0x0                                                                                     
-
 
364
0006e4   e216     BC        0x712                                                                                           
-
 
365
0006e6   50d9     MOVF      0xd9,0x0,0x0                                                                                    
-
 
366
0006e8   0ff7     ADDLW     0xf7                                                                                            
-
 
367
0006ea   6e00     MOVWF     0x0,0x0                                                                                         
-
 
368
0006ec   0eff     MOVLW     0xff                                                                                            
-
 
369
0006ee   20da     ADDWFC    0xda,0x0,0x0                                                                                    
-
 
370
0006f0   6e01     MOVWF     0x1,0x0                                                                                         
-
 
371
0006f2   50de     MOVF      0xde,0x0,0x0                                                                                    
-
 
372
0006f4   2400     ADDWF     0x0,0x0,0x0                                                                                     
-
 
373
0006f6   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
374
0006f8   50dd     MOVF      0xdd,0x0,0x0                                                                                    
-
 
375
0006fa   2001     ADDWFC    0x1,0x0,0x0                                                                                     
-
 
376
0006fc   6eea     MOVWF     0xea,0x0                                                                                        
-
 
377
0006fe   50ef     MOVF      0xef,0x0,0x0                                                                                    
-
 
378
000700   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
379
000702   ec8f     CALL      0x91e,0x0                                                                                       
-
 
380
000704   f004                                                                                                               
-
 
381
000706   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
382
000708   2adf     INCF      0xdf,0x1,0x0                                                                                    
-
 
383
00070a   0e01     MOVLW     0x1                                                                                             
-
 
384
00070c   e301     BNC       0x710                                                                                           
-
 
385
00070e   2adb     INCF      0xdb,0x1,0x0                                                                                    
-
 
386
000710   d7de     BRA       0x6ce                                                                                           
-
 
387
000712   0efa     MOVLW     0xfa           	uartPutc(UART_END_BYTE);                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
388
000714   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
389
000716   ec8f     CALL      0x91e,0x0                                                                                       
-
 
390
000718   f004                                                                                                               
-
 
391
00071a   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
392
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
393
00071c   0e02     MOVLW     0x2            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
394
00071e   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
-
 
395
000720   e202     BC        0x726                                                                                           
-
 
396
000722   6ae1     CLRF      0xe1,0x0                                                                                        
-
 
397
000724   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
398
000726   6ee1     MOVWF     0xe1,0x0                                                                                        
-
 
399
000728   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
400
00072a   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
-
 
401
00072c   ffd9                                                                                                               
-
 
402
00072e   0012     RETURN    0x0                                                                                             
-
 
403
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
404
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
405
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
406
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
407
                                           *	Function: uartParse                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
408
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
409
                                           *	Input:	Received uart message                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
410
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
411
                                           *	Pre-conditions: uartInit and received byte.                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
412
                                           *	Affects: Sensors/actuators/etc. See code.                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
413
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
414
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
415
                                           #ifdef USE_UART                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
416
000730   cfd9     MOVFF     0xfd9,0xfe6    void uartParse(BYTE c)                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
417
000732   ffe6                                                                                                               
-
 
418
000734   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
-
 
419
000736   ffd9                                                                                                               
-
 
420
000738   0e11     MOVLW     0x11                                                                                            
-
 
421
00073a   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
-
 
422
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
423
                                           	BYTE i;                                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
424
00073c   0e01     MOVLW     0x1            	unsigned int wait = 0;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
425
00073e   6adb     CLRF      0xdb,0x0                                                                                        
-
 
426
000740   0e02     MOVLW     0x2                                                                                             
-
 
427
000742   6adb     CLRF      0xdb,0x0                                                                                        
-
 
428
                                           	CAN_MESSAGE cm;	                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
429
                                           	static BOOL waitingMessage = FALSE;                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
430
                                           	static TICK timeout=0;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
431
                                           	static BYTE count=0;                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
432
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
433
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
434
000744   0100     MOVLB     0x0            	if (waitingMessage==TRUE && (tickGet()-timeout)>TICK_SECOND/20)                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
435
000746   056e     DECF      0x6e,0x0,0x1                                                                                    
-
 
436
000748   e11a     BNZ       0x77e                                                                                           
-
 
437
00074a   ec60     CALL      0xac0,0x0                                                                                       
-
 
438
00074c   f005                                                                                                               
-
 
439
00074e   0100     MOVLB     0x0                                                                                             
-
 
440
000750   516f     MOVF      0x6f,0x0,0x1                                                                                    
-
 
441
000752   5c18     SUBWF     0x18,0x0,0x0                                                                                    
-
 
442
000754   6e00     MOVWF     0x0,0x0                                                                                         
-
 
443
000756   5170     MOVF      0x70,0x0,0x1                                                                                    
-
 
444
000758   5819     SUBWFB    0x19,0x0,0x0                                                                                    
-
 
445
00075a   6e01     MOVWF     0x1,0x0                                                                                         
-
 
446
00075c   5171     MOVF      0x71,0x0,0x1                                                                                    
-
 
447
00075e   581a     SUBWFB    0x1a,0x0,0x0                                                                                    
-
 
448
000760   6e02     MOVWF     0x2,0x0                                                                                         
-
 
449
000762   5172     MOVF      0x72,0x0,0x1                                                                                    
-
 
450
000764   581b     SUBWFB    0x1b,0x0,0x0                                                                                    
-
 
451
000766   6e03     MOVWF     0x3,0x0                                                                                         
-
 
452
000768   80d8     BSF       0xd8,0x0,0x0                                                                                    
-
 
453
00076a   0e05     MOVLW     0x5                                                                                             
-
 
454
00076c   5400     SUBFWB    0x0,0x0,0x0                                                                                     
-
 
455
00076e   0e00     MOVLW     0x0                                                                                             
-
 
456
000770   5401     SUBFWB    0x1,0x0,0x0                                                                                     
-
 
457
000772   0e00     MOVLW     0x0                                                                                             
-
 
458
000774   5402     SUBFWB    0x2,0x0,0x0                                                                                     
-
 
459
000776   0e00     MOVLW     0x0                                                                                             
-
 
460
000778   5403     SUBFWB    0x3,0x0,0x0                                                                                     
-
 
461
00077a   e201     BC        0x77e                                                                                           
-
 
462
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
463
00077c   6b6e     CLRF      0x6e,0x1       		waitingMessage=FALSE;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
464
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
465
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
466
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
467
00077e   056e     DECF      0x6e,0x0,0x1   	if (waitingMessage==TRUE)                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
468
000780   e001     BZ        0x784                                                                                           
-
 
469
000782   d095     BRA       0x8ae                                                                                           
-
 
470
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
471
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
472
000784   ec60     CALL      0xac0,0x0      		timeout=tickGet();                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
473
000786   f005                                                                                                               
-
 
474
000788   c018     MOVFF     0x18,0x6f                                                                                       
-
 
475
00078a   f06f                                                                                                               
-
 
476
00078c   c019     MOVFF     0x19,0x70                                                                                       
-
 
477
00078e   f070                                                                                                               
-
 
478
000790   c01a     MOVFF     0x1a,0x71                                                                                       
-
 
479
000792   f071                                                                                                               
-
 
480
000794   c01b     MOVFF     0x1b,0x72                                                                                       
-
 
481
000796   f072                                                                                                               
-
 
482
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
483
                                           		// UART END                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
484
000798   0e0e     MOVLW     0xe            		if(count>=14)                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
485
00079a   0100     MOVLB     0x0                                                                                             
-
 
486
00079c   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
487
00079e   e336     BNC       0x80c                                                                                           
-
 
488
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
489
0007a0   0efe     MOVLW     0xfe           			if (c==UART_END_BYTE)                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
490
0007a2   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
491
0007a4   6e00     MOVWF     0x0,0x0                                                                                         
-
 
492
0007a6   6a01     CLRF      0x1,0x0                                                                                         
-
 
493
0007a8   0efa     MOVLW     0xfa                                                                                            
-
 
494
0007aa   1800     XORWF     0x0,0x0,0x0                                                                                     
-
 
495
0007ac   e101     BNZ       0x7b0                                                                                           
-
 
496
0007ae   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
497
0007b0   e12a     BNZ       0x806                                                                                           
-
 
498
                                           			{                                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
499
0007b2   50d9     MOVF      0xd9,0x0,0x0   				while(!canSendMessage(cm));                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
500
0007b4   0f03     ADDLW     0x3                                                                                             
-
 
501
0007b6   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
502
0007b8   cfda     MOVFF     0xfda,0xfea                                                                                     
-
 
503
0007ba   ffea                                                                                                               
-
 
504
0007bc   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
505
0007be   ffe6                                                                                                               
-
 
506
0007c0   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
507
0007c2   ffe6                                                                                                               
-
 
508
0007c4   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
509
0007c6   ffe6                                                                                                               
-
 
510
0007c8   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
511
0007ca   ffe6                                                                                                               
-
 
512
0007cc   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
513
0007ce   ffe6                                                                                                               
-
 
514
0007d0   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
515
0007d2   ffe6                                                                                                               
-
 
516
0007d4   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
517
0007d6   ffe6                                                                                                               
-
 
518
0007d8   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
519
0007da   ffe6                                                                                                               
-
 
520
0007dc   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
521
0007de   ffe6                                                                                                               
-
 
522
0007e0   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
523
0007e2   ffe6                                                                                                               
-
 
524
0007e4   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
525
0007e6   ffe6                                                                                                               
-
 
526
0007e8   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
527
0007ea   ffe6                                                                                                               
-
 
528
0007ec   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
529
0007ee   ffe6                                                                                                               
-
 
530
0007f0   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
531
0007f2   ffe6                                                                                                               
-
 
532
0007f4   eca0     CALL      0x340,0x0                                                                                       
-
 
533
0007f6   f001                                                                                                               
-
 
534
0007f8   6e00     MOVWF     0x0,0x0                                                                                         
-
 
535
0007fa   0e0e     MOVLW     0xe                                                                                             
-
 
536
0007fc   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
-
 
537
0007fe   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
538
000800   0900     IORLW     0x0                                                                                             
-
 
539
000802   e101     BNZ       0x806                                                                                           
-
 
540
000804   d7d6     BRA       0x7b2                                                                                           
-
 
541
                                           			}                                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
542
000806   0100     MOVLB     0x0            			waitingMessage=FALSE;                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
543
000808   6b6e     CLRF      0x6e,0x1                                                                                        
-
 
544
00080a   d073     BRA       0x8f2          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
545
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
546
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
547
                                           		// data                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
548
00080c   0e06     MOVLW     0x6            		if(count>=6)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
549
00080e   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
550
000810   e313     BNC       0x838                                                                                           
-
 
551
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
552
000812   50d9     MOVF      0xd9,0x0,0x0   			cm.data[count-6]=c;                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
553
000814   0f09     ADDLW     0x9                                                                                             
-
 
554
000816   6e00     MOVWF     0x0,0x0                                                                                         
-
 
555
000818   cfda     MOVFF     0xfda,0x1                                                                                       
-
 
556
00081a   f001                                                                                                               
-
 
557
00081c   0e06     MOVLW     0x6                                                                                             
-
 
558
00081e   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
559
000820   010f     MOVLB     0xf                                                                                             
-
 
560
000822   2400     ADDWF     0x0,0x0,0x0                                                                                     
-
 
561
000824   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
562
000826   0e00     MOVLW     0x0                                                                                             
-
 
563
000828   2001     ADDWFC    0x1,0x0,0x0                                                                                     
-
 
564
00082a   6eea     MOVWF     0xea,0x0                                                                                        
-
 
565
00082c   0efe     MOVLW     0xfe                                                                                            
-
 
566
00082e   cfdb     MOVFF     0xfdb,0xfef                                                                                     
-
 
567
000830   ffef                                                                                                               
-
 
568
000832   0100     MOVLB     0x0            			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
569
000834   2b73     INCF      0x73,0x1,0x1                                                                                    
-
 
570
000836   d05d     BRA       0x8f2          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
571
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
572
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
573
                                           		// data length                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
574
000838   0e05     MOVLW     0x5            		if(count>=5)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
575
00083a   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
576
00083c   e308     BNC       0x84e                                                                                           
-
 
577
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
578
00083e   0efe     MOVLW     0xfe           			cm.data_length=c;                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
579
000840   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
580
000842   6ee7     MOVWF     0xe7,0x0                                                                                        
-
 
581
000844   0e08     MOVLW     0x8                                                                                             
-
 
582
000846   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
-
 
583
000848   ffdb                                                                                                               
-
 
584
00084a   2b73     INCF      0x73,0x1,0x1   			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
585
00084c   d052     BRA       0x8f2          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
586
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
587
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
588
                                           		// extended                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
589
00084e   0e04     MOVLW     0x4            		if(count>=4)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
590
000850   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
591
000852   e308     BNC       0x864                                                                                           
-
 
592
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
593
000854   0efe     MOVLW     0xfe           			cm.extended=c;                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
594
000856   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
595
000858   6ee7     MOVWF     0xe7,0x0                                                                                        
-
 
596
00085a   0e07     MOVLW     0x7                                                                                             
-
 
597
00085c   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
-
 
598
00085e   ffdb                                                                                                               
-
 
599
000860   2b73     INCF      0x73,0x1,0x1   			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
600
000862   d047     BRA       0x8f2          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
601
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
602
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
603
                                           		// ident                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
604
000864   0e00     MOVLW     0x0            		if(count>=0)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
605
000866   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
606
000868   e322     BNC       0x8ae                                                                                           
-
 
607
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
608
00086a   0efe     MOVLW     0xfe           			cm.ident+=((DWORD)c<<(count*8));                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
609
00086c   cfdb     MOVFF     0xfdb,0x0                                                                                       
-
 
610
00086e   f000                                                                                                               
-
 
611
000870   6a01     CLRF      0x1,0x0                                                                                         
-
 
612
000872   6a02     CLRF      0x2,0x0                                                                                         
-
 
613
000874   6a03     CLRF      0x3,0x0                                                                                         
-
 
614
000876   0e08     MOVLW     0x8                                                                                             
-
 
615
000878   0373     MULWF     0x73,0x1                                                                                        
-
 
616
00087a   50f3     MOVF      0xf3,0x0,0x0                                                                                    
-
 
617
00087c   0b1f     ANDLW     0x1f                                                                                            
-
 
618
00087e   e007     BZ        0x88e                                                                                           
-
 
619
000880   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
620
000882   3600     RLCF      0x0,0x1,0x0                                                                                     
-
 
621
000884   3601     RLCF      0x1,0x1,0x0                                                                                     
-
 
622
000886   3602     RLCF      0x2,0x1,0x0                                                                                     
-
 
623
000888   3603     RLCF      0x3,0x1,0x0                                                                                     
-
 
624
00088a   06e8     DECF      0xe8,0x1,0x0                                                                                    
-
 
625
00088c   e1f9     BNZ       0x880                                                                                           
-
 
626
00088e   50d9     MOVF      0xd9,0x0,0x0                                                                                    
-
 
627
000890   0f03     ADDLW     0x3                                                                                             
-
 
628
000892   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
629
000894   cfda     MOVFF     0xfda,0xfea                                                                                     
-
 
630
000896   ffea                                                                                                               
-
 
631
000898   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
632
00089a   26ee     ADDWF     0xee,0x1,0x0                                                                                    
-
 
633
00089c   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
634
00089e   22ee     ADDWFC    0xee,0x1,0x0                                                                                    
-
 
635
0008a0   5002     MOVF      0x2,0x0,0x0                                                                                     
-
 
636
0008a2   22ee     ADDWFC    0xee,0x1,0x0                                                                                    
-
 
637
0008a4   5003     MOVF      0x3,0x0,0x0                                                                                     
-
 
638
0008a6   22ee     ADDWFC    0xee,0x1,0x0                                                                                    
-
 
639
0008a8   0100     MOVLB     0x0            			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
640
0008aa   2b73     INCF      0x73,0x1,0x1                                                                                    
-
 
641
0008ac   d022     BRA       0x8f2          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
642
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
643
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
644
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
645
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
646
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
647
0008ae   0efe     MOVLW     0xfe           	if (c==UART_START_BYTE && waitingMessage==FALSE)                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
648
0008b0   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
649
0008b2   6e00     MOVWF     0x0,0x0                                                                                         
-
 
650
0008b4   6a01     CLRF      0x1,0x0                                                                                         
-
 
651
0008b6   0efd     MOVLW     0xfd                                                                                            
-
 
652
0008b8   1800     XORWF     0x0,0x0,0x0                                                                                     
-
 
653
0008ba   e101     BNZ       0x8be                                                                                           
-
 
654
0008bc   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
655
0008be   e119     BNZ       0x8f2                                                                                           
-
 
656
0008c0   516e     MOVF      0x6e,0x0,0x1                                                                                    
-
 
657
0008c2   e117     BNZ       0x8f2                                                                                           
-
 
658
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
659
0008c4   0e01     MOVLW     0x1            			waitingMessage=TRUE;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
660
0008c6   6f6e     MOVWF     0x6e,0x1                                                                                        
-
 
661
0008c8   ec60     CALL      0xac0,0x0      			timeout=tickGet();                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
662
0008ca   f005                                                                                                               
-
 
663
0008cc   c018     MOVFF     0x18,0x6f                                                                                       
-
 
664
0008ce   f06f                                                                                                               
-
 
665
0008d0   c019     MOVFF     0x19,0x70                                                                                       
-
 
666
0008d2   f070                                                                                                               
-
 
667
0008d4   c01a     MOVFF     0x1a,0x71                                                                                       
-
 
668
0008d6   f071                                                                                                               
-
 
669
0008d8   c01b     MOVFF     0x1b,0x72                                                                                       
-
 
670
0008da   f072                                                                                                               
-
 
671
0008dc   0100     MOVLB     0x0            			count=0;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
672
0008de   6b73     CLRF      0x73,0x1                                                                                        
-
 
673
0008e0   0e03     MOVLW     0x3            			cm.ident=0;                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
674
0008e2   6adb     CLRF      0xdb,0x0                                                                                        
-
 
675
0008e4   0e04     MOVLW     0x4                                                                                             
-
 
676
0008e6   6adb     CLRF      0xdb,0x0                                                                                        
-
 
677
0008e8   0e05     MOVLW     0x5                                                                                             
-
 
678
0008ea   6adb     CLRF      0xdb,0x0                                                                                        
-
 
679
0008ec   0e06     MOVLW     0x6                                                                                             
-
 
680
0008ee   6adb     CLRF      0xdb,0x0                                                                                        
-
 
681
0008f0   d000     BRA       0x8f2          			return;	                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
682
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
683
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
684
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
685
0008f2   0e11     MOVLW     0x11           }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
686
0008f4   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
-
 
687
0008f6   e202     BC        0x8fc                                                                                           
-
 
688
0008f8   6ae1     CLRF      0xe1,0x0                                                                                        
-
 
689
0008fa   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
690
0008fc   6ee1     MOVWF     0xe1,0x0                                                                                        
-
 
691
0008fe   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
692
000900   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
-
 
693
000902   ffd9                                                                                                               
-
 
694
000904   0012     RETURN    0x0                                                                                             
-
 
695
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
696
                                           /*********************************************************************           F:\MCP\projects\CAN\Source\CAN.c
-
 
697
                                            *                                                                               F:\MCP\projects\CAN\Source\CAN.c
-
 
698
                                            *                  CAN driver                                                   F:\MCP\projects\CAN\Source\CAN.c
-
 
699
                                            *                                                                               F:\MCP\projects\CAN\Source\CAN.c
-
 
700
                                            *********************************************************************           F:\MCP\projects\CAN\Source\CAN.c
-
 
701
                                            * FileName:        CAN.c                                                        F:\MCP\projects\CAN\Source\CAN.c
-
 
702
                                            *                                                                               F:\MCP\projects\CAN\Source\CAN.c
-
 
703
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\Source\CAN.c
-
 
704
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\Source\CAN.c
-
 
705
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\Source\CAN.c
-
 
706
                                            ********************************************************************/           F:\MCP\projects\CAN\Source\CAN.c
-
 
707
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
-
 
708
                                           #include <CANdefs.h>                                                             F:\MCP\projects\CAN\Source\CAN.c
-
 
709
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\Source\CAN.c
-
 
710
                                           #include <CAN.h>                                                                 F:\MCP\projects\CAN\Source\CAN.c
-
 
711
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
-
 
712
                                           static void canGetPacket(void);                                                  F:\MCP\projects\CAN\Source\CAN.c
-
 
713
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
-
 
714
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\Source\CAN.c
-
 
715
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
-
 
716
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
-
 
717
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
-
 
718
                                           *	Function: canInit                                                              F:\MCP\projects\CAN\Source\CAN.c
-
 
719
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
-
 
720
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\CAN.c
-
 
721
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\CAN.c
-
 
722
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\Source\CAN.c
-
 
723
                                           *	Affects: Changes can registers.                                                F:\MCP\projects\CAN\Source\CAN.c
-
 
724
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\Source\CAN.c
-
 
725
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
-
 
726
                                           void canInit()                                                                   F:\MCP\projects\CAN\Source\CAN.c
-
 
727
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
-
 
728
000044   0e80     MOVLW     0x80           	CANCON = 0x80; //request config mode                                            F:\MCP\projects\CAN\Source\CAN.c
-
 
729
000046   6e6f     MOVWF     0x6f,0x0                                                                                        
309
000046   6e6f     MOVWF     0x6f,0x0                                                                                        
730
000048   0ee0     MOVLW     0xe0           	while ((CANSTAT & 0xE0) != 0x80 ); //wait for config mode request               F:\MCP\projects\CAN\Source\CAN.c
310
000048   0ee0     MOVLW     0xe0           	while ((CANSTAT & 0xE0) != 0x80 ); //wait for config mode request               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
731
00004a   146e     ANDWF     0x6e,0x0,0x0                                                                                    
311
00004a   146e     ANDWF     0x6e,0x0,0x0                                                                                    
732
00004c   0880     SUBLW     0x80                                                                                            
312
00004c   0880     SUBLW     0x80                                                                                            
733
00004e   e001     BZ        0x52                                                                                            
313
00004e   e001     BZ        0x52                                                                                            
734
000050   d7fb     BRA       0x48                                                                                            
314
000050   d7fb     BRA       0x48                                                                                            
735
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
315
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
736
                                           	// BAUD AND TQS                                                                 F:\MCP\projects\CAN\Source\CAN.c
316
                                           	// BAUD AND TQS                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
737
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
317
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
738
000052   6a70     CLRF      0x70,0x0       	BRGCON1=0;                                                                      F:\MCP\projects\CAN\Source\CAN.c
318
000052   6a70     CLRF      0x70,0x0       	BRGCON1=0;                                                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
739
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
319
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
740
                                           	// Sync_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\Source\CAN.c
320
                                           	// Sync_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
741
000054   9e70     BCF       0x70,0x7,0x0   	BRGCON1bits.SJW1=0;                                                             F:\MCP\projects\CAN\Source\CAN.c
321
000054   9e70     BCF       0x70,0x7,0x0   	BRGCON1bits.SJW1=0;                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
742
000056   8c70     BSF       0x70,0x6,0x0   	BRGCON1bits.SJW0=1;                                                             F:\MCP\projects\CAN\Source\CAN.c
322
000056   8c70     BSF       0x70,0x6,0x0   	BRGCON1bits.SJW0=1;                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
743
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
323
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
744
                                           	// Setting BRP.                                                                 F:\MCP\projects\CAN\Source\CAN.c
324
                                           	// Setting BRP.                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
745
000058   0e09     MOVLW     0x9            	BRGCON1=BRGCON1|CAN_BRP;                                                        F:\MCP\projects\CAN\Source\CAN.c
325
000058   0e09     MOVLW     0x9            	BRGCON1=BRGCON1|CAN_BRP;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
746
00005a   1070     IORWF     0x70,0x0,0x0                                                                                    
326
00005a   1070     IORWF     0x70,0x0,0x0                                                                                    
747
00005c   6e70     MOVWF     0x70,0x0                                                                                        
327
00005c   6e70     MOVWF     0x70,0x0                                                                                        
748
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
328
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
749
                                           	// Maximum PHEG1                                                                F:\MCP\projects\CAN\Source\CAN.c
329
                                           	// Maximum PHEG1                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
750
00005e   8e71     BSF       0x71,0x7,0x0   	BRGCON2bits.SEG2PHTS = 1;                                                       F:\MCP\projects\CAN\Source\CAN.c
330
00005e   8e71     BSF       0x71,0x7,0x0   	BRGCON2bits.SEG2PHTS = 1;                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
751
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
331
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
752
                                           	// Phase_Seg1 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\Source\CAN.c
332
                                           	// Phase_Seg1 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
753
000060   9a71     BCF       0x71,0x5,0x0   	BRGCON2bits.SEG1PH2 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
333
000060   9a71     BCF       0x71,0x5,0x0   	BRGCON2bits.SEG1PH2 = 0;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
754
000062   9871     BCF       0x71,0x4,0x0   	BRGCON2bits.SEG1PH1 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
334
000062   9871     BCF       0x71,0x4,0x0   	BRGCON2bits.SEG1PH1 = 0;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
755
000064   8671     BSF       0x71,0x3,0x0   	BRGCON2bits.SEG1PH0 = 1;                                                        F:\MCP\projects\CAN\Source\CAN.c
335
000064   8671     BSF       0x71,0x3,0x0   	BRGCON2bits.SEG1PH0 = 1;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
756
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
336
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
757
                                           	// Prop_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\Source\CAN.c
337
                                           	// Prop_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
758
000066   9471     BCF       0x71,0x2,0x0   	BRGCON2bits.PRSEG2 = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
338
000066   9471     BCF       0x71,0x2,0x0   	BRGCON2bits.PRSEG2 = 0;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
759
000068   9271     BCF       0x71,0x1,0x0   	BRGCON2bits.PRSEG1 = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
339
000068   9271     BCF       0x71,0x1,0x0   	BRGCON2bits.PRSEG1 = 0;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
760
00006a   8071     BSF       0x71,0x0,0x0   	BRGCON2bits.PRSEG0 = 1;                                                         F:\MCP\projects\CAN\Source\CAN.c
340
00006a   8071     BSF       0x71,0x0,0x0   	BRGCON2bits.PRSEG0 = 1;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
761
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
341
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
762
                                           	//  Enableing bus wake-up                                                       F:\MCP\projects\CAN\Source\CAN.c
342
                                           	//  Enableing bus wake-up                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
763
00006c   9e72     BCF       0x72,0x7,0x0   	BRGCON3bits.WAKDIS = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
343
00006c   9e72     BCF       0x72,0x7,0x0   	BRGCON3bits.WAKDIS = 0;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
764
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
344
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
765
                                           	// Dont use filter when wakeup                                                  F:\MCP\projects\CAN\Source\CAN.c
345
                                           	// Dont use filter when wakeup                                                  F:\MCP\projects\CAN\canToSerial\Source\CAN.c
766
00006e   9c72     BCF       0x72,0x6,0x0   	BRGCON3bits.WAKFIL = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
346
00006e   9c72     BCF       0x72,0x6,0x0   	BRGCON3bits.WAKFIL = 0;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
767
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
347
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
768
                                           	// Phase_Seg2 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\Source\CAN.c
348
                                           	// Phase_Seg2 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
769
000070   9472     BCF       0x72,0x2,0x0   	BRGCON3bits.SEG2PH2 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
349
000070   9472     BCF       0x72,0x2,0x0   	BRGCON3bits.SEG2PH2 = 0;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
770
000072   9272     BCF       0x72,0x1,0x0   	BRGCON3bits.SEG2PH1 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
350
000072   9272     BCF       0x72,0x1,0x0   	BRGCON3bits.SEG2PH1 = 0;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
771
000074   8072     BSF       0x72,0x0,0x0   	BRGCON3bits.SEG2PH0 = 1;                                                        F:\MCP\projects\CAN\Source\CAN.c
351
000074   8072     BSF       0x72,0x0,0x0   	BRGCON3bits.SEG2PH0 = 1;                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
772
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
352
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
773
000076   6a77     CLRF      0x77,0x0       	ECANCON=0;                                                                      F:\MCP\projects\CAN\Source\CAN.c
353
000076   6a77     CLRF      0x77,0x0       	ECANCON=0;                                                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
774
000078   9e77     BCF       0x77,0x7,0x0   	ECANCONbits.MDSEL1 = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
354
000078   9e77     BCF       0x77,0x7,0x0   	ECANCONbits.MDSEL1 = 0;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
775
00007a   8c77     BSF       0x77,0x6,0x0   	ECANCONbits.MDSEL0 = 1;                                                         F:\MCP\projects\CAN\Source\CAN.c
355
00007a   8c77     BSF       0x77,0x6,0x0   	ECANCONbits.MDSEL0 = 1;                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
776
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
356
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
777
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
357
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
778
                                           	// FILTERS AND MASKS                                                            F:\MCP\projects\CAN\Source\CAN.c
358
                                           	// FILTERS AND MASKS                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
779
00007c   8c60     BSF       0x60,0x6,0x0   	RXB0CONbits.RXM1=1;                                                             F:\MCP\projects\CAN\Source\CAN.c
359
00007c   8c60     BSF       0x60,0x6,0x0   	RXB0CONbits.RXM1=1;                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
780
00007e   9a60     BCF       0x60,0x5,0x0   	RXB0CONbits.RXM0=0;                                                             F:\MCP\projects\CAN\Source\CAN.c
360
00007e   9a60     BCF       0x60,0x5,0x0   	RXB0CONbits.RXM0=0;                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
781
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
361
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
782
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
362
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
783
                                           	// INTERRUPTS                                                                   F:\MCP\projects\CAN\Source\CAN.c
363
                                           	// INTERRUPTS                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
784
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
364
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
785
                                           	// Diable transmit interrupt                                                    F:\MCP\projects\CAN\Source\CAN.c
365
                                           	// Diable transmit interrupt                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
786
000080   010d     MOVLB     0xd            	TXBIE = 0;                                                                      F:\MCP\projects\CAN\Source\CAN.c
366
000080   010d     MOVLB     0xd            	TXBIE = 0;                                                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
787
000082   6bfc     CLRF      0xfc,0x1                                                                                        
367
000082   6bfc     CLRF      0xfc,0x1                                                                                        
788
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
368
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
789
                                           	//rx any interrupt                                                              F:\MCP\projects\CAN\Source\CAN.c
369
                                           	//rx any interrupt                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
790
000084   6aa4     CLRF      0xa4,0x0       	PIR3 = 0;                                                                       F:\MCP\projects\CAN\Source\CAN.c
370
000084   6aa4     CLRF      0xa4,0x0       	PIR3 = 0;                                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
791
000086   0e03     MOVLW     0x3            	PIE3 = 0b00000011;                                                              F:\MCP\projects\CAN\Source\CAN.c
371
000086   0e03     MOVLW     0x3            	PIE3 = 0b00000011;                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
792
000088   6ea3     MOVWF     0xa3,0x0                                                                                        
372
000088   6ea3     MOVWF     0xa3,0x0                                                                                        
793
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
373
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
794
                                           	// High interrupt                                                               F:\MCP\projects\CAN\Source\CAN.c
374
                                           	// High interrupt                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
795
00008a   6ea5     MOVWF     0xa5,0x0       	IPR3 =0b00000011;                                                               F:\MCP\projects\CAN\Source\CAN.c
375
00008a   6ea5     MOVWF     0xa5,0x0       	IPR3 =0b00000011;                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
796
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
376
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
797
                                           	// Programmable buffers interrupt                                               F:\MCP\projects\CAN\Source\CAN.c
377
                                           	// Programmable buffers interrupt                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
798
00008c   69fa     SETF      0xfa,0x1       	BIE0  = 0xFF;	                                                                  F:\MCP\projects\CAN\Source\CAN.c
378
00008c   69fa     SETF      0xfa,0x1       	BIE0  = 0xFF;	                                                                  F:\MCP\projects\CAN\canToSerial\Source\CAN.c
799
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
379
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
800
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
380
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
801
                                           	//loopback mode or not                                                          F:\MCP\projects\CAN\Source\CAN.c
381
                                           	//loopback mode or not                                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
802
                                           	#ifdef CAN_LOOPBACK_MODE                                                        F:\MCP\projects\CAN\Source\CAN.c
382
                                           	#ifdef CAN_LOOPBACK_MODE                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
803
                                           		CANCON = 0x40;//request loopback mode                                          F:\MCP\projects\CAN\Source\CAN.c
383
                                           		CANCON = 0x40;//request loopback mode                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
804
                                           		while ((CANSTAT & 0xE0) != 0x40 );//wait for loopback mode                     F:\MCP\projects\CAN\Source\CAN.c
384
                                           		while ((CANSTAT & 0xE0) != 0x40 );//wait for loopback mode                     F:\MCP\projects\CAN\canToSerial\Source\CAN.c
805
                                           	#else                                                                           F:\MCP\projects\CAN\Source\CAN.c
385
                                           	#else                                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
806
00008e   6a6f     CLRF      0x6f,0x0       		CANCON = 0x00;//request normal mode                                            F:\MCP\projects\CAN\Source\CAN.c
386
00008e   6a6f     CLRF      0x6f,0x0       		CANCON = 0x00;//request normal mode                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
807
000090   0ee0     MOVLW     0xe0           		while ((CANSTAT & 0xE0) != 0x00 );//wait for normal mode                       F:\MCP\projects\CAN\Source\CAN.c
387
000090   0ee0     MOVLW     0xe0           		while ((CANSTAT & 0xE0) != 0x00 );//wait for normal mode                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
808
000092   146e     ANDWF     0x6e,0x0,0x0                                                                                    
388
000092   146e     ANDWF     0x6e,0x0,0x0                                                                                    
809
000094   e001     BZ        0x98                                                                                            
389
000094   e001     BZ        0x98                                                                                            
810
000096   d7fc     BRA       0x90                                                                                            
390
000096   d7fc     BRA       0x90                                                                                            
811
                                           	#endif                                                                          F:\MCP\projects\CAN\Source\CAN.c
391
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
812
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
392
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
813
000098   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\CAN.c
393
000098   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
814
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
394
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
815
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
395
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
816
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
396
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
817
                                           *	Function: canISR                                                               F:\MCP\projects\CAN\Source\CAN.c
397
                                           *	Function: canISR                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
818
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
398
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
819
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\CAN.c
399
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
820
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\CAN.c
400
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
821
                                           *	Pre-conditions: a call to canInit()                                            F:\MCP\projects\CAN\Source\CAN.c
401
                                           *	Pre-conditions: a call to canInit()                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
822
                                           *	Affects: interrupt registers and receive data buffers                          F:\MCP\projects\CAN\Source\CAN.c
402
                                           *	Affects: interrupt registers and receive data buffers                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
823
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\Source\CAN.c
403
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
824
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
404
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
825
                                           void canISR()                                                                    F:\MCP\projects\CAN\Source\CAN.c
405
                                           void canISR()                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
826
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
406
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
827
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
407
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
828
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
408
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
829
00009a   50a4     MOVF      0xa4,0x0,0x0   	if (PIR3bits.RXBnIF || PIR3bits.RXB1IF || PIR3bits.RXB0IF)                      F:\MCP\projects\CAN\Source\CAN.c
409
00009a   50a4     MOVF      0xa4,0x0,0x0   	if (PIR3bits.RXBnIF || PIR3bits.RXB1IF || PIR3bits.RXB0IF)                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
830
00009c   0b02     ANDLW     0x2                                                                                             
410
00009c   0b02     ANDLW     0x2                                                                                             
831
00009e   e106     BNZ       0xac                                                                                            
411
00009e   e106     BNZ       0xac                                                                                            
832
0000a0   50a4     MOVF      0xa4,0x0,0x0                                                                                    
412
0000a0   50a4     MOVF      0xa4,0x0,0x0                                                                                    
833
0000a2   0b02     ANDLW     0x2                                                                                             
413
0000a2   0b02     ANDLW     0x2                                                                                             
834
0000a4   e103     BNZ       0xac                                                                                            
414
0000a4   e103     BNZ       0xac                                                                                            
835
0000a6   50a4     MOVF      0xa4,0x0,0x0                                                                                    
415
0000a6   50a4     MOVF      0xa4,0x0,0x0                                                                                    
836
0000a8   0b01     ANDLW     0x1                                                                                             
416
0000a8   0b01     ANDLW     0x1                                                                                             
837
0000aa   e047     BZ        0x13a                                                                                           
417
0000aa   e047     BZ        0x13a                                                                                           
838
                                           	{                                                                               F:\MCP\projects\CAN\Source\CAN.c
418
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
839
                                           		// Get which buffer that is ful.                                               F:\MCP\projects\CAN\Source\CAN.c
419
                                           		// Get which buffer that is ful.                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
840
0000ac   ae60     BTFSS     0x60,0x7,0x0   			 if (RXB0CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10000; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
420
0000ac   ae60     BTFSS     0x60,0x7,0x0   			 if (RXB0CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10000; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
841
0000ae   d006     BRA       0xbc                                                                                            
421
0000ae   d006     BRA       0xbc                                                                                            
842
0000b0   0e00     MOVLW     0x0                                                                                             
422
0000b0   0e00     MOVLW     0x0                                                                                             
843
0000b2   1477     ANDWF     0x77,0x0,0x0                                                                                    
423
0000b2   1477     ANDWF     0x77,0x0,0x0                                                                                    
844
0000b4   0910     IORLW     0x10                                                                                            
424
0000b4   0910     IORLW     0x10                                                                                            
845
0000b6   6e77     MOVWF     0x77,0x0                                                                                        
425
0000b6   6e77     MOVWF     0x77,0x0                                                                                        
846
0000b8   d841     RCALL     0x13c                                                                                           
426
0000b8   d841     RCALL     0x13c                                                                                           
847
0000ba   d039     BRA       0x12e          		else if (RXB1CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10001; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
427
0000ba   d039     BRA       0x12e          		else if (RXB1CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10001; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
848
0000bc   010f     MOVLB     0xf                                                                                             
428
0000bc   010f     MOVLB     0xf                                                                                             
849
0000be   af50     BTFSS     0x50,0x7,0x1                                                                                    
429
0000be   af50     BTFSS     0x50,0x7,0x1                                                                                    
850
0000c0   d006     BRA       0xce                                                                                            
430
0000c0   d006     BRA       0xce                                                                                            
851
0000c2   0e00     MOVLW     0x0                                                                                             
431
0000c2   0e00     MOVLW     0x0                                                                                             
852
0000c4   1477     ANDWF     0x77,0x0,0x0                                                                                    
432
0000c4   1477     ANDWF     0x77,0x0,0x0                                                                                    
853
0000c6   0911     IORLW     0x11                                                                                            
433
0000c6   0911     IORLW     0x11                                                                                            
854
0000c8   6e77     MOVWF     0x77,0x0                                                                                        
434
0000c8   6e77     MOVWF     0x77,0x0                                                                                        
855
0000ca   d838     RCALL     0x13c                                                                                           
435
0000ca   d838     RCALL     0x13c                                                                                           
856
0000cc   d030     BRA       0x12e          		else if (B0CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10010; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
436
0000cc   d030     BRA       0x12e          		else if (B0CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10010; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
857
0000ce   010e     MOVLB     0xe                                                                                             
437
0000ce   010e     MOVLB     0xe                                                                                             
858
0000d0   af20     BTFSS     0x20,0x7,0x1                                                                                    
438
0000d0   af20     BTFSS     0x20,0x7,0x1                                                                                    
859
0000d2   d006     BRA       0xe0                                                                                            
439
0000d2   d006     BRA       0xe0                                                                                            
860
0000d4   0e00     MOVLW     0x0                                                                                             
440
0000d4   0e00     MOVLW     0x0                                                                                             
861
0000d6   1477     ANDWF     0x77,0x0,0x0                                                                                    
441
0000d6   1477     ANDWF     0x77,0x0,0x0                                                                                    
862
0000d8   0912     IORLW     0x12                                                                                            
442
0000d8   0912     IORLW     0x12                                                                                            
863
0000da   6e77     MOVWF     0x77,0x0                                                                                        
443
0000da   6e77     MOVWF     0x77,0x0                                                                                        
864
0000dc   d82f     RCALL     0x13c                                                                                           
444
0000dc   d82f     RCALL     0x13c                                                                                           
865
0000de   d027     BRA       0x12e          		else if (B1CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10011; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
445
0000de   d027     BRA       0x12e          		else if (B1CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10011; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
866
0000e0   af30     BTFSS     0x30,0x7,0x1                                                                                    
446
0000e0   af30     BTFSS     0x30,0x7,0x1                                                                                    
867
0000e2   d006     BRA       0xf0                                                                                            
447
0000e2   d006     BRA       0xf0                                                                                            
868
0000e4   0e00     MOVLW     0x0                                                                                             
448
0000e4   0e00     MOVLW     0x0                                                                                             
869
0000e6   1477     ANDWF     0x77,0x0,0x0                                                                                    
449
0000e6   1477     ANDWF     0x77,0x0,0x0                                                                                    
870
0000e8   0913     IORLW     0x13                                                                                            
450
0000e8   0913     IORLW     0x13                                                                                            
871
0000ea   6e77     MOVWF     0x77,0x0                                                                                        
451
0000ea   6e77     MOVWF     0x77,0x0                                                                                        
872
0000ec   d827     RCALL     0x13c                                                                                           
452
0000ec   d827     RCALL     0x13c                                                                                           
873
0000ee   d01f     BRA       0x12e          		else if (B2CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10100; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
453
0000ee   d01f     BRA       0x12e          		else if (B2CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10100; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
874
0000f0   af40     BTFSS     0x40,0x7,0x1                                                                                    
454
0000f0   af40     BTFSS     0x40,0x7,0x1                                                                                    
875
0000f2   d006     BRA       0x100                                                                                           
455
0000f2   d006     BRA       0x100                                                                                           
876
0000f4   0e00     MOVLW     0x0                                                                                             
456
0000f4   0e00     MOVLW     0x0                                                                                             
877
0000f6   1477     ANDWF     0x77,0x0,0x0                                                                                    
457
0000f6   1477     ANDWF     0x77,0x0,0x0                                                                                    
878
0000f8   0914     IORLW     0x14                                                                                            
458
0000f8   0914     IORLW     0x14                                                                                            
879
0000fa   6e77     MOVWF     0x77,0x0                                                                                        
459
0000fa   6e77     MOVWF     0x77,0x0                                                                                        
880
0000fc   d81f     RCALL     0x13c                                                                                           
460
0000fc   d81f     RCALL     0x13c                                                                                           
881
0000fe   d017     BRA       0x12e          		else if (B3CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10101; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
461
0000fe   d017     BRA       0x12e          		else if (B3CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10101; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
882
000100   af50     BTFSS     0x50,0x7,0x1                                                                                    
462
000100   af50     BTFSS     0x50,0x7,0x1                                                                                    
883
000102   d006     BRA       0x110                                                                                           
463
000102   d006     BRA       0x110                                                                                           
884
000104   0e00     MOVLW     0x0                                                                                             
464
000104   0e00     MOVLW     0x0                                                                                             
885
000106   1477     ANDWF     0x77,0x0,0x0                                                                                    
465
000106   1477     ANDWF     0x77,0x0,0x0                                                                                    
886
000108   0915     IORLW     0x15                                                                                            
466
000108   0915     IORLW     0x15                                                                                            
887
00010a   6e77     MOVWF     0x77,0x0                                                                                        
467
00010a   6e77     MOVWF     0x77,0x0                                                                                        
888
00010c   d817     RCALL     0x13c                                                                                           
468
00010c   d817     RCALL     0x13c                                                                                           
889
00010e   d00f     BRA       0x12e          		else if (B4CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10110; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
469
00010e   d00f     BRA       0x12e          		else if (B4CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10110; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
890
000110   af60     BTFSS     0x60,0x7,0x1                                                                                    
470
000110   af60     BTFSS     0x60,0x7,0x1                                                                                    
891
000112   d006     BRA       0x120                                                                                           
471
000112   d006     BRA       0x120                                                                                           
892
000114   0e00     MOVLW     0x0                                                                                             
472
000114   0e00     MOVLW     0x0                                                                                             
893
000116   1477     ANDWF     0x77,0x0,0x0                                                                                    
473
000116   1477     ANDWF     0x77,0x0,0x0                                                                                    
894
000118   0916     IORLW     0x16                                                                                            
474
000118   0916     IORLW     0x16                                                                                            
895
00011a   6e77     MOVWF     0x77,0x0                                                                                        
475
00011a   6e77     MOVWF     0x77,0x0                                                                                        
896
00011c   d80f     RCALL     0x13c                                                                                           
476
00011c   d80f     RCALL     0x13c                                                                                           
897
00011e   d007     BRA       0x12e          		else if (B5CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10111; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
477
00011e   d007     BRA       0x12e          		else if (B5CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10111; canGetPacket(); } F:\MCP\projects\CAN\canToSerial\Source\CAN.c
898
000120   af70     BTFSS     0x70,0x7,0x1                                                                                    
478
000120   af70     BTFSS     0x70,0x7,0x1                                                                                    
899
000122   d005     BRA       0x12e                                                                                           
479
000122   d005     BRA       0x12e                                                                                           
900
000124   0e00     MOVLW     0x0                                                                                             
480
000124   0e00     MOVLW     0x0                                                                                             
901
000126   1477     ANDWF     0x77,0x0,0x0                                                                                    
481
000126   1477     ANDWF     0x77,0x0,0x0                                                                                    
902
000128   0917     IORLW     0x17                                                                                            
482
000128   0917     IORLW     0x17                                                                                            
903
00012a   6e77     MOVWF     0x77,0x0                                                                                        
483
00012a   6e77     MOVWF     0x77,0x0                                                                                        
904
00012c   d807     RCALL     0x13c                                                                                           
484
00012c   d807     RCALL     0x13c                                                                                           
905
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
485
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
906
00012e   b2a4     BTFSC     0xa4,0x1,0x0   		if (PIR3bits.RXBnIF) {PIR3bits.RXBnIF = 0;}                                    F:\MCP\projects\CAN\Source\CAN.c
486
00012e   b2a4     BTFSC     0xa4,0x1,0x0   		if (PIR3bits.RXBnIF) {PIR3bits.RXBnIF = 0;}                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
907
000130   92a4     BCF       0xa4,0x1,0x0                                                                                    
487
000130   92a4     BCF       0xa4,0x1,0x0                                                                                    
908
000132   b2a4     BTFSC     0xa4,0x1,0x0   		if (PIR3bits.RXB1IF) {PIR3bits.RXB1IF = 0;}                                    F:\MCP\projects\CAN\Source\CAN.c
488
000132   b2a4     BTFSC     0xa4,0x1,0x0   		if (PIR3bits.RXB1IF) {PIR3bits.RXB1IF = 0;}                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
909
000134   92a4     BCF       0xa4,0x1,0x0                                                                                    
489
000134   92a4     BCF       0xa4,0x1,0x0                                                                                    
910
000136   b0a4     BTFSC     0xa4,0x0,0x0   		if (PIR3bits.RXB0IF) {PIR3bits.RXB0IF = 0;}                                    F:\MCP\projects\CAN\Source\CAN.c
490
000136   b0a4     BTFSC     0xa4,0x0,0x0   		if (PIR3bits.RXB0IF) {PIR3bits.RXB0IF = 0;}                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
911
000138   90a4     BCF       0xa4,0x0,0x0                                                                                    
491
000138   90a4     BCF       0xa4,0x0,0x0                                                                                    
912
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
492
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
913
                                           	}                                                                               F:\MCP\projects\CAN\Source\CAN.c
493
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
914
00013a   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\CAN.c
494
00013a   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
915
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
495
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
916
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
496
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
917
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
497
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
918
                                           *	Function: canGetPacket                                                         F:\MCP\projects\CAN\Source\CAN.c
498
                                           *	Function: canGetPacket                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
919
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
499
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
920
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\CAN.c
500
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
921
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\CAN.c
501
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
922
                                           *	Pre-conditions: a call to canISR and an packet is available and banked to RXB0 F:\MCP\projects\CAN\Source\CAN.c
502
                                           *	Pre-conditions: a call to canISR and an packet is available and banked to RXB0 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
923
                                           *	Affects: Calls canParse() function in main for parsing received packet.        F:\MCP\projects\CAN\Source\CAN.c
503
                                           *	Affects: Calls canParse() function in main for parsing received packet.        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
924
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\Source\CAN.c
504
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
925
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
505
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
926
00013c   cfd9     MOVFF     0xfd9,0xfe6    void canGetPacket()                                                              F:\MCP\projects\CAN\Source\CAN.c
506
00013c   cfd9     MOVFF     0xfd9,0xfe6    void canGetPacket()                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
927
00013e   ffe6                                                                                                               
507
00013e   ffe6                                                                                                               
928
000140   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
508
000140   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
929
000142   ffd9                                                                                                               
509
000142   ffd9                                                                                                               
930
000144   0e0e     MOVLW     0xe                                                                                             
510
000144   0e0f     MOVLW     0xf                                                                                             
931
000146   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
511
000146   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
932
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
512
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
933
                                           		CAN_MESSAGE cm;                                                                F:\MCP\projects\CAN\Source\CAN.c
513
                                           		CAN_MESSAGE cm;                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
934
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
514
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
935
                                           		// Set extended mode or not.                                                   F:\MCP\projects\CAN\Source\CAN.c
515
                                           		// Set extended mode or not.                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
936
000148   5062     MOVF      0x62,0x0,0x0   		cm.extended=(RXB0SIDLbits.EXID==0?FALSE:TRUE);                                 F:\MCP\projects\CAN\Source\CAN.c
516
000148   5062     MOVF      0x62,0x0,0x0   		cm.extended=(RXB0SIDLbits.EXID==0?FALSE:TRUE);                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
937
00014a   0b08     ANDLW     0x8                                                                                             
517
00014a   0b08     ANDLW     0x8                                                                                             
938
00014c   e102     BNZ       0x152                                                                                           
518
00014c   e102     BNZ       0x152                                                                                           
939
00014e   0e00     MOVLW     0x0                                                                                             
519
00014e   0e00     MOVLW     0x0                                                                                             
940
000150   d001     BRA       0x154                                                                                           
520
000150   d001     BRA       0x154                                                                                           
941
000152   0e01     MOVLW     0x1                                                                                             
521
000152   0e01     MOVLW     0x1                                                                                             
942
000154   6ee7     MOVWF     0xe7,0x0                                                                                        
522
000154   6ee7     MOVWF     0xe7,0x0                                                                                        
943
000156   0e04     MOVLW     0x4                                                                                             
523
000156   0e04     MOVLW     0x4                                                                                             
944
000158   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
524
000158   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
945
00015a   ffdb                                                                                                               
525
00015a   ffdb                                                                                                               
946
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
526
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
947
                                           		// Clear                                                                       F:\MCP\projects\CAN\Source\CAN.c
527
                                           		// Clear                                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
948
00015c   6ade     CLRF      0xde,0x0       		cm.ident=0;                                                                    F:\MCP\projects\CAN\Source\CAN.c
528
00015c   6ade     CLRF      0xde,0x0       		cm.ident=0;                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
949
00015e   6ade     CLRF      0xde,0x0                                                                                        
529
00015e   6ade     CLRF      0xde,0x0                                                                                        
950
000160   6ade     CLRF      0xde,0x0                                                                                        
530
000160   6ade     CLRF      0xde,0x0                                                                                        
951
000162   6add     CLRF      0xdd,0x0                                                                                        
531
000162   6add     CLRF      0xdd,0x0                                                                                        
952
000164   52dd     MOVF      0xdd,0x1,0x0                                                                                    
532
000164   52dd     MOVF      0xdd,0x1,0x0                                                                                    
953
000166   52dd     MOVF      0xdd,0x1,0x0                                                                                    
533
000166   52dd     MOVF      0xdd,0x1,0x0                                                                                    
954
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
534
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
955
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
535
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
956
000168   04db     DECF      0xdb,0x0,0x0   		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\Source\CAN.c
536
000168   04db     DECF      0xdb,0x0,0x0   		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
957
00016a   e16f     BNZ       0x24a                                                                                           
537
00016a   e16f     BNZ       0x24a                                                                                           
958
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
538
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
959
                                           			//Read extended ident.                                                        F:\MCP\projects\CAN\Source\CAN.c
539
                                           			//Read extended ident.                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
960
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
540
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
961
                                           			//xx xx xx 28 27 26 25 24   23 22 21 20 19 18 17 16   15 14 13 12 11 10 09 08   07 06 05 04 03 02 01 00 F:\MCP\projects\CAN\Source\CAN.c
541
                                           			//xx xx xx 28 27 26 25 24   23 22 21 20 19 18 17 16   15 14 13 12 11 10 09 08   07 06 05 04 03 02 01 00 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
962
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
542
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
963
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\Source\CAN.c
543
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
964
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\Source\CAN.c
544
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
965
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\Source\CAN.c
545
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
966
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\Source\CAN.c
546
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
967
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
547
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
968
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
548
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
969
00016c   5061     MOVF      0x61,0x0,0x0           	cm.ident = (((DWORD)RXB0SIDH)<<21) + (((DWORD)(RXB0SIDL & 0xE0))<<13) + (((DWORD)(RXB0SIDL & 0x03))<<16) + (((DWORD)RXB0EIDH)<<8) + (BYTE)RXB0EIDL; F:\MCP\projects\CAN\Source\CAN.c
549
00016c   5061     MOVF      0x61,0x0,0x0           	cm.ident = (((DWORD)RXB0SIDH)<<21) + (((DWORD)(RXB0SIDL & 0xE0))<<13) + (((DWORD)(RXB0SIDL & 0x03))<<16) + (((DWORD)RXB0EIDH)<<8) + (BYTE)RXB0EIDL; F:\MCP\projects\CAN\canToSerial\Source\CAN.c
970
00016e   6e00     MOVWF     0x0,0x0                                                                                         
550
00016e   6e00     MOVWF     0x0,0x0                                                                                         
971
000170   6a01     CLRF      0x1,0x0                                                                                         
551
000170   6a01     CLRF      0x1,0x0                                                                                         
972
000172   6a02     CLRF      0x2,0x0                                                                                         
552
000172   6a02     CLRF      0x2,0x0                                                                                         
973
000174   6a03     CLRF      0x3,0x0                                                                                         
553
000174   6a03     CLRF      0x3,0x0                                                                                         
974
000176   0e15     MOVLW     0x15                                                                                            
554
000176   0e15     MOVLW     0x15                                                                                            
Line 1074... Line 654...
1074
00023e   c002     MOVFF     0x2,0xfdb                                                                                       
654
00023e   c002     MOVFF     0x2,0xfdb                                                                                       
1075
000240   ffdb                                                                                                               
655
000240   ffdb                                                                                                               
1076
000242   0e03     MOVLW     0x3                                                                                             
656
000242   0e03     MOVLW     0x3                                                                                             
1077
000244   c003     MOVFF     0x3,0xfdb                                                                                       
657
000244   c003     MOVFF     0x3,0xfdb                                                                                       
1078
000246   ffdb                                                                                                               
658
000246   ffdb                                                                                                               
1079
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
659
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1080
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
660
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1081
000248   d02f     BRA       0x2a8          		else                                                                           F:\MCP\projects\CAN\Source\CAN.c
661
000248   d02f     BRA       0x2a8          		else                                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1082
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
662
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1083
                                           			//Read standard ident.                                                        F:\MCP\projects\CAN\Source\CAN.c
663
                                           			//Read standard ident.                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1084
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
664
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1085
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\Source\CAN.c
665
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1086
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
666
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1087
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\Source\CAN.c
667
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1088
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\Source\CAN.c
668
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1089
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
669
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1090
00024a   5061     MOVF      0x61,0x0,0x0   			cm.ident = (((DWORD)RXB0SIDH)<<3) + (((DWORD)RXB0SIDL)>>5);                   F:\MCP\projects\CAN\Source\CAN.c
670
00024a   5061     MOVF      0x61,0x0,0x0   			cm.ident = (((DWORD)RXB0SIDH)<<3) + (((DWORD)RXB0SIDL)>>5);                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1091
00024c   6e00     MOVWF     0x0,0x0                                                                                         
671
00024c   6e00     MOVWF     0x0,0x0                                                                                         
1092
00024e   6a01     CLRF      0x1,0x0                                                                                         
672
00024e   6a01     CLRF      0x1,0x0                                                                                         
1093
000250   6a02     CLRF      0x2,0x0                                                                                         
673
000250   6a02     CLRF      0x2,0x0                                                                                         
1094
000252   6a03     CLRF      0x3,0x0                                                                                         
674
000252   6a03     CLRF      0x3,0x0                                                                                         
1095
000254   0e03     MOVLW     0x3                                                                                             
675
000254   0e03     MOVLW     0x3                                                                                             
Line 1132... Line 712...
1132
00029e   c002     MOVFF     0x2,0xfdb                                                                                       
712
00029e   c002     MOVFF     0x2,0xfdb                                                                                       
1133
0002a0   ffdb                                                                                                               
713
0002a0   ffdb                                                                                                               
1134
0002a2   0e03     MOVLW     0x3                                                                                             
714
0002a2   0e03     MOVLW     0x3                                                                                             
1135
0002a4   c003     MOVFF     0x3,0xfdb                                                                                       
715
0002a4   c003     MOVFF     0x3,0xfdb                                                                                       
1136
0002a6   ffdb                                                                                                               
716
0002a6   ffdb                                                                                                               
1137
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
717
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1138
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
718
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1139
                                           		// Data length                                                                 F:\MCP\projects\CAN\Source\CAN.c
719
                                           		// Data length                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1140
0002a8   0e05     MOVLW     0x5            		cm.data_length=RXB0DLC;                                                        F:\MCP\projects\CAN\Source\CAN.c
720
0002a8   5065     MOVF      0x65,0x0,0x0   		cm.data_length=(RXB0DLCbits.DLC3<<3)+(RXB0DLCbits.DLC2<<2)+(RXB0DLCbits.DLC1<<1)+RXB0DLCbits.DLC0; F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1141
0002aa   cf65     MOVFF     0xf65,0xfdb                                                                                     
721
0002aa   0b01     ANDLW     0x1                                                                                             
1142
0002ac   ffdb                                                                                                               
722
0002ac   6e02     MOVWF     0x2,0x0                                                                                         
1143
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
723
0002ae   5065     MOVF      0x65,0x0,0x0                                                                                    
1144
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\Source\CAN.c
724
0002b0   0b02     ANDLW     0x2                                                                                             
1145
0002ae   0e06     MOVLW     0x6            		cm.data[0]=RXB0D0;	cm.data[1]=RXB0D1;                                          F:\MCP\projects\CAN\Source\CAN.c
725
0002b2   e001     BZ        0x2b6                                                                                           
1146
0002b0   cf66     MOVFF     0xf66,0xfdb                                                                                     
726
0002b4   0e01     MOVLW     0x1                                                                                             
1147
0002b2   ffdb                                                                                                               
727
0002b6   24e8     ADDWF     0xe8,0x0,0x0                                                                                    
1148
0002b4   0e07     MOVLW     0x7                                                                                             
728
0002b8   6e01     MOVWF     0x1,0x0                                                                                         
1149
0002b6   cf67     MOVFF     0xf67,0xfdb                                                                                     
729
0002ba   5065     MOVF      0x65,0x0,0x0                                                                                    
1150
0002b8   ffdb                                                                                                               
730
0002bc   0b04     ANDLW     0x4                                                                                             
1151
0002ba   0e08     MOVLW     0x8            		cm.data[2]=RXB0D2; 	cm.data[3]=RXB0D3;                                         F:\MCP\projects\CAN\Source\CAN.c
-
 
1152
0002bc   cf68     MOVFF     0xf68,0xfdb                                                                                     
731
0002be   e001     BZ        0x2c2                                                                                           
1153
0002be   ffdb                                                                                                               
732
0002c0   0e01     MOVLW     0x1                                                                                             
1154
0002c0   0e09     MOVLW     0x9                                                                                             
733
0002c2   0d04     MULLW     0x4                                                                                             
1155
0002c2   cf69     MOVFF     0xf69,0xfdb                                                                                     
734
0002c4   cff3     MOVFF     0xff3,0x0                                                                                       
1156
0002c4   ffdb                                                                                                               
735
0002c6   f000                                                                                                               
1157
0002c6   0e0a     MOVLW     0xa            		cm.data[4]=RXB0D4; 	cm.data[5]=RXB0D5;                                         F:\MCP\projects\CAN\Source\CAN.c
-
 
1158
0002c8   cf6a     MOVFF     0xf6a,0xfdb                                                                                     
736
0002c8   5065     MOVF      0x65,0x0,0x0                                                                                    
1159
0002ca   ffdb                                                                                                               
737
0002ca   0b08     ANDLW     0x8                                                                                             
1160
0002cc   0e0b     MOVLW     0xb                                                                                             
738
0002cc   e001     BZ        0x2d0                                                                                           
1161
0002ce   cf6b     MOVFF     0xf6b,0xfdb                                                                                     
739
0002ce   0e01     MOVLW     0x1                                                                                             
1162
0002d0   ffdb                                                                                                               
740
0002d0   0d08     MULLW     0x8                                                                                             
1163
0002d2   0e0c     MOVLW     0xc            		cm.data[6]=RXB0D6; 	cm.data[7]=RXB0D7;                                         F:\MCP\projects\CAN\Source\CAN.c
741
0002d2   50f3     MOVF      0xf3,0x0,0x0                                                                                    
1164
0002d4   cf6c     MOVFF     0xf6c,0xfdb                                                                                     
742
0002d4   2400     ADDWF     0x0,0x0,0x0                                                                                     
1165
0002d6   ffdb                                                                                                               
743
0002d6   2401     ADDWF     0x1,0x0,0x0                                                                                     
1166
0002d8   0e0d     MOVLW     0xd                                                                                             
744
0002d8   2402     ADDWF     0x2,0x0,0x0                                                                                     
1167
0002da   cf6d     MOVFF     0xf6d,0xfdb                                                                                     
745
0002da   6ee7     MOVWF     0xe7,0x0                                                                                        
1168
0002dc   ffdb                                                                                                               
746
0002dc   0e06     MOVLW     0x6                                                                                             
1169
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
747
0002de   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
1170
                                           		// Clear ful status                                                            F:\MCP\projects\CAN\Source\CAN.c
748
0002e0   ffdb                                                                                                               
1171
0002de   9e60     BCF       0x60,0x7,0x0   		RXB0CONbits.RXFUL=0;                                                           F:\MCP\projects\CAN\Source\CAN.c
-
 
1172
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
749
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1173
                                           		//Call main parser                                                             F:\MCP\projects\CAN\Source\CAN.c
750
                                           		// Remote request                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1174
0002e0   cfd9     MOVFF     0xfd9,0xfe9    		canParse(cm);                                                                  F:\MCP\projects\CAN\Source\CAN.c
751
0002e2   5065     MOVF      0x65,0x0,0x0   		cm.remote_request=(RXB0DLCbits.RXRTR==0?FALSE:TRUE);                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1175
0002e2   ffe9                                                                                                               
752
0002e4   0b40     ANDLW     0x40                                                                                            
1176
0002e4   cfda     MOVFF     0xfda,0xfea                                                                                     
753
0002e6   e102     BNZ       0x2ec                                                                                           
1177
0002e6   ffea                                                                                                               
754
0002e8   0e00     MOVLW     0x0                                                                                             
1178
0002e8   cfee     MOVFF     0xfee,0xfe6                                                                                     
755
0002ea   d001     BRA       0x2ee                                                                                           
1179
0002ea   ffe6                                                                                                               
756
0002ec   0e01     MOVLW     0x1                                                                                             
1180
0002ec   cfee     MOVFF     0xfee,0xfe6                                                                                     
757
0002ee   6ee7     MOVWF     0xe7,0x0                                                                                        
1181
0002ee   ffe6                                                                                                               
758
0002f0   0e05     MOVLW     0x5                                                                                             
1182
0002f0   cfee     MOVFF     0xfee,0xfe6                                                                                     
759
0002f2   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
1183
0002f2   ffe6                                                                                                               
760
0002f4   ffdb                                                                                                               
1184
0002f4   cfee     MOVFF     0xfee,0xfe6                                                                                     
761
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1185
0002f6   ffe6                                                                                                               
762
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1186
0002f8   cfee     MOVFF     0xfee,0xfe6                                                                                     
763
0002f6   0e07     MOVLW     0x7            		cm.data[0]=RXB0D0;	cm.data[1]=RXB0D1;                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1187
0002fa   ffe6                                                                                                               
764
0002f8   cf66     MOVFF     0xf66,0xfdb                                                                                     
1188
0002fc   cfee     MOVFF     0xfee,0xfe6                                                                                     
765
0002fa   ffdb                                                                                                               
1189
0002fe   ffe6                                                                                                               
766
0002fc   0e08     MOVLW     0x8                                                                                             
1190
000300   cfee     MOVFF     0xfee,0xfe6                                                                                     
767
0002fe   cf67     MOVFF     0xf67,0xfdb                                                                                     
1191
000302   ffe6                                                                                                               
768
000300   ffdb                                                                                                               
1192
000304   cfee     MOVFF     0xfee,0xfe6                                                                                     
769
000302   0e09     MOVLW     0x9            		cm.data[2]=RXB0D2; 	cm.data[3]=RXB0D3;                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1193
000306   ffe6                                                                                                               
770
000304   cf68     MOVFF     0xf68,0xfdb                                                                                     
1194
000308   cfee     MOVFF     0xfee,0xfe6                                                                                     
771
000306   ffdb                                                                                                               
1195
00030a   ffe6                                                                                                               
772
000308   0e0a     MOVLW     0xa                                                                                             
1196
00030c   cfee     MOVFF     0xfee,0xfe6                                                                                     
773
00030a   cf69     MOVFF     0xf69,0xfdb                                                                                     
1197
00030e   ffe6                                                                                                               
774
00030c   ffdb                                                                                                               
1198
000310   cfee     MOVFF     0xfee,0xfe6                                                                                     
775
00030e   0e0b     MOVLW     0xb            		cm.data[4]=RXB0D4; 	cm.data[5]=RXB0D5;                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1199
000312   ffe6                                                                                                               
776
000310   cf6a     MOVFF     0xf6a,0xfdb                                                                                     
1200
000314   cfee     MOVFF     0xfee,0xfe6                                                                                     
777
000312   ffdb                                                                                                               
1201
000316   ffe6                                                                                                               
778
000314   0e0c     MOVLW     0xc                                                                                             
1202
000318   cfee     MOVFF     0xfee,0xfe6                                                                                     
779
000316   cf6b     MOVFF     0xf6b,0xfdb                                                                                     
1203
00031a   ffe6                                                                                                               
780
000318   ffdb                                                                                                               
1204
00031c   cfee     MOVFF     0xfee,0xfe6                                                                                     
781
00031a   0e0d     MOVLW     0xd            		cm.data[6]=RXB0D6; 	cm.data[7]=RXB0D7;                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1205
00031e   ffe6                                                                                                               
782
00031c   cf6c     MOVFF     0xf6c,0xfdb                                                                                     
1206
000320   ecfb     CALL      0x5f6,0x0                                                                                       
783
00031e   ffdb                                                                                                               
1207
000322   f002                                                                                                               
784
000320   0e0e     MOVLW     0xe                                                                                             
1208
000324   6e00     MOVWF     0x0,0x0                                                                                         
785
000322   cf6d     MOVFF     0xf6d,0xfdb                                                                                     
1209
000326   0e0e     MOVLW     0xe                                                                                             
786
000324   ffdb                                                                                                               
1210
000328   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
787
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1211
00032a   5000     MOVF      0x0,0x0,0x0                                                                                     
788
                                           		// Clear ful status                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1212
00032c   0e0e     MOVLW     0xe            }                                                                                F:\MCP\projects\CAN\Source\CAN.c
789
000326   9e60     BCF       0x60,0x7,0x0   		RXB0CONbits.RXFUL=0;                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1213
00032e   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
790
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1214
000330   e202     BC        0x336                                                                                           
791
                                           		//Call main parser                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1215
000332   6ae1     CLRF      0xe1,0x0                                                                                        
792
000328   cfd9     MOVFF     0xfd9,0xfe9    		canParse(cm);                                                                  F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1216
000334   52e5     MOVF      0xe5,0x1,0x0                                                                                    
793
00032a   ffe9                                                                                                               
1217
000336   6ee1     MOVWF     0xe1,0x0                                                                                        
794
00032c   cfda     MOVFF     0xfda,0xfea                                                                                     
1218
000338   52e5     MOVF      0xe5,0x1,0x0                                                                                    
795
00032e   ffea                                                                                                               
1219
00033a   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
796
000330   cfee     MOVFF     0xfee,0xfe6                                                                                     
1220
00033c   ffd9                                                                                                               
797
000332   ffe6                                                                                                               
1221
00033e   0012     RETURN    0x0                                                                                             
798
000334   cfee     MOVFF     0xfee,0xfe6                                                                                     
1222
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
799
000336   ffe6                                                                                                               
1223
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
800
000338   cfee     MOVFF     0xfee,0xfe6                                                                                     
1224
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
801
00033a   ffe6                                                                                                               
1225
                                           *	Function: canSendMessage                                                       F:\MCP\projects\CAN\Source\CAN.c
-
 
1226
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
802
00033c   cfee     MOVFF     0xfee,0xfe6                                                                                     
1227
                                           *	Input:	CAN_MESSAGE to send                                                     F:\MCP\projects\CAN\Source\CAN.c
-
 
1228
                                           *	Output: True if packet scheduled sucess, false otherwise.                      F:\MCP\projects\CAN\Source\CAN.c
-
 
1229
                                           *	Pre-conditions: canInit                                                        F:\MCP\projects\CAN\Source\CAN.c
-
 
1230
                                           *	Affects: ..                                                                    F:\MCP\projects\CAN\Source\CAN.c
-
 
1231
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\Source\CAN.c
-
 
1232
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
803
00033e   ffe6                                                                                                               
1233
000340   cfd9     MOVFF     0xfd9,0xfe6    BOOL canSendMessage(CAN_MESSAGE cm)                                              F:\MCP\projects\CAN\Source\CAN.c
804
000340   cfee     MOVFF     0xfee,0xfe6                                                                                     
1234
000342   ffe6                                                                                                               
805
000342   ffe6                                                                                                               
1235
000344   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
806
000344   cfee     MOVFF     0xfee,0xfe6                                                                                     
1236
000346   ffd9                                                                                                               
807
000346   ffe6                                                                                                               
1237
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
808
000348   cfee     MOVFF     0xfee,0xfe6                                                                                     
1238
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
809
00034a   ffe6                                                                                                               
1239
000348   010f     MOVLB     0xf            	if ( TXB0CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00011; }           F:\MCP\projects\CAN\Source\CAN.c
810
00034c   cfee     MOVFF     0xfee,0xfe6                                                                                     
1240
00034a   b740     BTFSC     0x40,0x3,0x1                                                                                    
811
00034e   ffe6                                                                                                               
1241
00034c   d004     BRA       0x356                                                                                           
812
000350   cfee     MOVFF     0xfee,0xfe6                                                                                     
1242
00034e   0e00     MOVLW     0x0                                                                                             
813
000352   ffe6                                                                                                               
1243
000350   1477     ANDWF     0x77,0x0,0x0                                                                                    
814
000354   cfee     MOVFF     0xfee,0xfe6                                                                                     
1244
000352   0903     IORLW     0x3                                                                                             
815
000356   ffe6                                                                                                               
1245
000354   6e77     MOVWF     0x77,0x0                                                                                        
816
000358   cfee     MOVFF     0xfee,0xfe6                                                                                     
1246
000356   010f     MOVLB     0xf            	if ( TXB1CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00100; }           F:\MCP\projects\CAN\Source\CAN.c
817
00035a   ffe6                                                                                                               
1247
000358   b730     BTFSC     0x30,0x3,0x1                                                                                    
818
00035c   cfee     MOVFF     0xfee,0xfe6                                                                                     
1248
00035a   d004     BRA       0x364                                                                                           
819
00035e   ffe6                                                                                                               
1249
00035c   0e00     MOVLW     0x0                                                                                             
820
000360   cfee     MOVFF     0xfee,0xfe6                                                                                     
1250
00035e   1477     ANDWF     0x77,0x0,0x0                                                                                    
821
000362   ffe6                                                                                                               
1251
000360   0904     IORLW     0x4                                                                                             
822
000364   cfee     MOVFF     0xfee,0xfe6                                                                                     
1252
000362   6e77     MOVWF     0x77,0x0                                                                                        
823
000366   ffe6                                                                                                               
1253
000364   010f     MOVLB     0xf            	if ( TXB2CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00101; }           F:\MCP\projects\CAN\Source\CAN.c
824
000368   cfee     MOVFF     0xfee,0xfe6                                                                                     
1254
000366   b720     BTFSC     0x20,0x3,0x1                                                                                    
825
00036a   ffe6                                                                                                               
1255
000368   d005     BRA       0x374                                                                                           
826
00036c   ec45     CALL      0x68a,0x0                                                                                       
1256
00036a   0e00     MOVLW     0x0                                                                                             
827
00036e   f003                                                                                                               
1257
00036c   1477     ANDWF     0x77,0x0,0x0                                                                                    
828
000370   6e00     MOVWF     0x0,0x0                                                                                         
1258
00036e   0905     IORLW     0x5                                                                                             
829
000372   0e0f     MOVLW     0xf                                                                                             
1259
000370   6e77     MOVWF     0x77,0x0                                                                                        
830
000374   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
1260
                                           	// None of the transmit buffers were empty.                                     F:\MCP\projects\CAN\Source\CAN.c
831
000376   5000     MOVF      0x0,0x0,0x0                                                                                     
1261
000372   d002     BRA       0x378          	else { return FALSE;}                                                           F:\MCP\projects\CAN\Source\CAN.c
832
000378   0e0f     MOVLW     0xf            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1262
000374   0e00     MOVLW     0x0                                                                                             
833
00037a   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
1263
000376   d0c0     BRA       0x4f8                                                                                           
834
00037c   e202     BC        0x382                                                                                           
1264
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
835
00037e   6ae1     CLRF      0xe1,0x0                                                                                        
1265
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
836
000380   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1266
000378   0ef5     MOVLW     0xf5           		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\Source\CAN.c
837
000382   6ee1     MOVWF     0xe1,0x0                                                                                        
1267
00037a   04db     DECF      0xdb,0x0,0x0                                                                                    
838
000384   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1268
00037c   e15f     BNZ       0x43c                                                                                           
839
000386   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1269
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
840
000388   ffd9                                                                                                               
1270
                                           			//Write extended ident.                                                       F:\MCP\projects\CAN\Source\CAN.c
841
00038a   0012     RETURN    0x0                                                                                             
1271
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
842
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1272
                                           			//xx xx xx 28 27 26 25 24   23 22 21 20 19 18 17 16   15 14 13 12 11 10 09 08   07 06 05 04 03 02 01 00 F:\MCP\projects\CAN\Source\CAN.c
843
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1273
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
844
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1274
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\Source\CAN.c
845
                                           *	Function: canSendMessage                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1275
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\Source\CAN.c
846
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1276
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\Source\CAN.c
847
                                           *	Input:	CAN_MESSAGE to send                                                     F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1277
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\Source\CAN.c
848
                                           *	Output: True if packet scheduled sucess, false otherwise.                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1278
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
849
                                           *	Pre-conditions: canInit                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1279
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
850
                                           *	Affects: ..                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1280
00037e   0ef1     MOVLW     0xf1                   	RXB0SIDH =  (BYTE)((cm.ident>>21));                                     F:\MCP\projects\CAN\Source\CAN.c
851
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1281
000380   cfdb     MOVFF     0xfdb,0x0                                                                                       
852
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1282
000382   f000                                                                                                               
853
00038c   cfd9     MOVFF     0xfd9,0xfe6    BOOL canSendMessage(CAN_MESSAGE cm,CAN_PRIORITY prio)                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1283
000384   0ef2     MOVLW     0xf2                                                                                            
854
00038e   ffe6                                                                                                               
1284
000386   cfdb     MOVFF     0xfdb,0x1                                                                                       
855
000390   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
1285
000388   f001                                                                                                               
856
000392   ffd9                                                                                                               
1286
00038a   0ef3     MOVLW     0xf3                                                                                            
857
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1287
00038c   cfdb     MOVFF     0xfdb,0x2                                                                                       
858
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1288
00038e   f002                                                                                                               
859
000394   010f     MOVLB     0xf            	if ( TXB0CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00011; }           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1289
000390   0ef4     MOVLW     0xf4                                                                                            
860
000396   b740     BTFSC     0x40,0x3,0x1                                                                                    
1290
000392   cfdb     MOVFF     0xfdb,0x3                                                                                       
861
000398   d004     BRA       0x3a2                                                                                           
1291
000394   f003                                                                                                               
862
00039a   0e00     MOVLW     0x0                                                                                             
1292
000396   0e15     MOVLW     0x15                                                                                            
863
00039c   1477     ANDWF     0x77,0x0,0x0                                                                                    
1293
000398   90d8     BCF       0xd8,0x0,0x0                                                                                    
864
00039e   0903     IORLW     0x3                                                                                             
1294
00039a   3203     RRCF      0x3,0x1,0x0                                                                                     
865
0003a0   6e77     MOVWF     0x77,0x0                                                                                        
1295
00039c   3202     RRCF      0x2,0x1,0x0                                                                                     
866
0003a2   010f     MOVLB     0xf            	if ( TXB1CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00100; }           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1296
00039e   3201     RRCF      0x1,0x1,0x0                                                                                     
867
0003a4   b730     BTFSC     0x30,0x3,0x1                                                                                    
1297
0003a0   3200     RRCF      0x0,0x1,0x0                                                                                     
868
0003a6   d004     BRA       0x3b0                                                                                           
1298
0003a2   06e8     DECF      0xe8,0x1,0x0                                                                                    
869
0003a8   0e00     MOVLW     0x0                                                                                             
1299
0003a4   e1f9     BNZ       0x398                                                                                           
870
0003aa   1477     ANDWF     0x77,0x0,0x0                                                                                    
1300
0003a6   5000     MOVF      0x0,0x0,0x0                                                                                     
871
0003ac   0904     IORLW     0x4                                                                                             
1301
0003a8   6e61     MOVWF     0x61,0x0                                                                                        
872
0003ae   6e77     MOVWF     0x77,0x0                                                                                        
1302
0003aa   0ef1     MOVLW     0xf1                   	RXB0SIDL = ((BYTE)(cm.ident>>16) & 0x03) + ((BYTE)(cm.ident>>13) & 0xE0); F:\MCP\projects\CAN\Source\CAN.c
873
0003b0   010f     MOVLB     0xf            	if ( TXB2CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00101; }           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1303
0003ac   cfdb     MOVFF     0xfdb,0x5                                                                                       
874
0003b2   b720     BTFSC     0x20,0x3,0x1                                                                                    
1304
0003ae   f005                                                                                                               
875
0003b4   d005     BRA       0x3c0                                                                                           
1305
0003b0   0ef2     MOVLW     0xf2                                                                                            
876
0003b6   0e00     MOVLW     0x0                                                                                             
1306
0003b2   cfdb     MOVFF     0xfdb,0x6                                                                                       
877
0003b8   1477     ANDWF     0x77,0x0,0x0                                                                                    
1307
0003b4   f006                                                                                                               
878
0003ba   0905     IORLW     0x5                                                                                             
1308
0003b6   0ef3     MOVLW     0xf3                                                                                            
879
0003bc   6e77     MOVWF     0x77,0x0                                                                                        
1309
0003b8   cfdb     MOVFF     0xfdb,0x7                                                                                       
880
                                           	// None of the transmit buffers were empty.                                     F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1310
0003ba   f007                                                                                                               
881
0003be   d002     BRA       0x3c4          	else { return FALSE;}                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1311
0003bc   0ef4     MOVLW     0xf4                                                                                            
882
0003c0   0e00     MOVLW     0x0                                                                                             
1312
0003be   cfdb     MOVFF     0xfdb,0x8                                                                                       
883
0003c2   d0e4     BRA       0x58c                                                                                           
1313
0003c0   f008                                                                                                               
884
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1314
0003c2   0e0d     MOVLW     0xd                                                                                             
885
0003c4   0eef     MOVLW     0xef           	if (prio<0 || prio>3) prio = 0;                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1315
0003c4   90d8     BCF       0xd8,0x0,0x0                                                                                    
886
0003c6   cfdb     MOVFF     0xfdb,0x0                                                                                       
1316
0003c6   3208     RRCF      0x8,0x1,0x0                                                                                     
887
0003c8   f000                                                                                                               
1317
0003c8   3207     RRCF      0x7,0x1,0x0                                                                                     
888
0003ca   3400     RLCF      0x0,0x0,0x0                                                                                     
1318
0003ca   3206     RRCF      0x6,0x1,0x0                                                                                     
889
0003cc   e20e     BC        0x3ea                                                                                           
1319
0003cc   3205     RRCF      0x5,0x1,0x0                                                                                     
890
0003ce   0eef     MOVLW     0xef                                                                                            
1320
0003ce   06e8     DECF      0xe8,0x1,0x0                                                                                    
891
0003d0   cfdb     MOVFF     0xfdb,0x1                                                                                       
1321
0003d0   e1f9     BNZ       0x3c4                                                                                           
892
0003d2   f001                                                                                                               
1322
0003d2   0ee0     MOVLW     0xe0                                                                                            
893
0003d4   0e03     MOVLW     0x3                                                                                             
1323
0003d4   1405     ANDWF     0x5,0x0,0x0                                                                                     
894
0003d6   6ee7     MOVWF     0xe7,0x0                                                                                        
1324
0003d6   6e04     MOVWF     0x4,0x0                                                                                         
895
0003d8   1801     XORWF     0x1,0x0,0x0                                                                                     
1325
0003d8   0ef1     MOVLW     0xf1                                                                                            
896
0003da   aee8     BTFSS     0xe8,0x7,0x0                                                                                    
1326
0003da   cfdb     MOVFF     0xfdb,0x0                                                                                       
897
0003dc   d002     BRA       0x3e2                                                                                           
1327
0003dc   f000                                                                                                               
898
0003de   3401     RLCF      0x1,0x0,0x0                                                                                     
1328
0003de   0ef2     MOVLW     0xf2                                                                                            
899
0003e0   d003     BRA       0x3e8                                                                                           
1329
0003e0   cfdb     MOVFF     0xfdb,0x1                                                                                       
900
0003e2   50e7     MOVF      0xe7,0x0,0x0                                                                                    
1330
0003e2   f001                                                                                                               
901
0003e4   80d8     BSF       0xd8,0x0,0x0                                                                                    
1331
0003e4   0ef3     MOVLW     0xf3                                                                                            
902
0003e6   5401     SUBFWB    0x1,0x0,0x0                                                                                     
1332
0003e6   cfdb     MOVFF     0xfdb,0x2                                                                                       
903
0003e8   e202     BC        0x3ee                                                                                           
1333
0003e8   f002                                                                                                               
904
0003ea   0eef     MOVLW     0xef                                                                                            
1334
0003ea   0ef4     MOVLW     0xf4                                                                                            
905
0003ec   6adb     CLRF      0xdb,0x0                                                                                        
1335
0003ec   cfdb     MOVFF     0xfdb,0x3                                                                                       
906
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1336
0003ee   f003                                                                                                               
907
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1337
0003f0   0e10     MOVLW     0x10                                                                                            
908
0003ee   0ef4     MOVLW     0xf4           		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1338
0003f2   90d8     BCF       0xd8,0x0,0x0                                                                                    
909
0003f0   04db     DECF      0xdb,0x0,0x0                                                                                    
1339
0003f4   3203     RRCF      0x3,0x1,0x0                                                                                     
910
0003f2   e15f     BNZ       0x4b2                                                                                           
1340
0003f6   3202     RRCF      0x2,0x1,0x0                                                                                     
911
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1341
0003f8   3201     RRCF      0x1,0x1,0x0                                                                                     
912
                                           			//Write extended ident.                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1342
0003fa   3200     RRCF      0x0,0x1,0x0                                                                                     
913
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1343
0003fc   06e8     DECF      0xe8,0x1,0x0                                                                                    
914
                                           			//xx xx xx 28 27 26 25 24   23 22 21 20 19 18 17 16   15 14 13 12 11 10 09 08   07 06 05 04 03 02 01 00 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1344
0003fe   e1f9     BNZ       0x3f2                                                                                           
915
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1345
000400   0e03     MOVLW     0x3                                                                                             
916
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1346
000402   1400     ANDWF     0x0,0x0,0x0                                                                                     
917
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1347
000404   2404     ADDWF     0x4,0x0,0x0                                                                                     
918
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1348
000406   6e62     MOVWF     0x62,0x0                                                                                        
919
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1349
000408   0ef1     MOVLW     0xf1                   	RXB0EIDH =  (BYTE)(cm.ident>>8);                                        F:\MCP\projects\CAN\Source\CAN.c
920
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1350
00040a   cfdb     MOVFF     0xfdb,0x0                                                                                       
921
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1351
00040c   f000                                                                                                               
922
0003f4   0ef0     MOVLW     0xf0                   	RXB0SIDH =  (BYTE)((cm.ident>>21));                                     F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1352
00040e   0ef2     MOVLW     0xf2                                                                                            
923
0003f6   cfdb     MOVFF     0xfdb,0x0                                                                                       
1353
000410   cfdb     MOVFF     0xfdb,0x1                                                                                       
924
0003f8   f000                                                                                                               
1354
000412   f001                                                                                                               
925
0003fa   0ef1     MOVLW     0xf1                                                                                            
1355
000414   0ef3     MOVLW     0xf3                                                                                            
926
0003fc   cfdb     MOVFF     0xfdb,0x1                                                                                       
1356
000416   cfdb     MOVFF     0xfdb,0x2                                                                                       
927
0003fe   f001                                                                                                               
1357
000418   f002                                                                                                               
928
000400   0ef2     MOVLW     0xf2                                                                                            
1358
00041a   0ef4     MOVLW     0xf4                                                                                            
929
000402   cfdb     MOVFF     0xfdb,0x2                                                                                       
1359
00041c   cfdb     MOVFF     0xfdb,0x3                                                                                       
930
000404   f002                                                                                                               
1360
00041e   f003                                                                                                               
931
000406   0ef3     MOVLW     0xf3                                                                                            
1361
000420   0e08     MOVLW     0x8                                                                                             
932
000408   cfdb     MOVFF     0xfdb,0x3                                                                                       
1362
000422   90d8     BCF       0xd8,0x0,0x0                                                                                    
933
00040a   f003                                                                                                               
1363
000424   3203     RRCF      0x3,0x1,0x0                                                                                     
934
00040c   0e15     MOVLW     0x15                                                                                            
1364
000426   3202     RRCF      0x2,0x1,0x0                                                                                     
935
00040e   90d8     BCF       0xd8,0x0,0x0                                                                                    
1365
000428   3201     RRCF      0x1,0x1,0x0                                                                                     
936
000410   3203     RRCF      0x3,0x1,0x0                                                                                     
1366
00042a   3200     RRCF      0x0,0x1,0x0                                                                                     
937
000412   3202     RRCF      0x2,0x1,0x0                                                                                     
1367
00042c   06e8     DECF      0xe8,0x1,0x0                                                                                    
938
000414   3201     RRCF      0x1,0x1,0x0                                                                                     
1368
00042e   e1f9     BNZ       0x422                                                                                           
939
000416   3200     RRCF      0x0,0x1,0x0                                                                                     
1369
000430   5000     MOVF      0x0,0x0,0x0                                                                                     
940
000418   06e8     DECF      0xe8,0x1,0x0                                                                                    
1370
000432   6e63     MOVWF     0x63,0x0                                                                                        
941
00041a   e1f9     BNZ       0x40e                                                                                           
1371
000434   0ef1     MOVLW     0xf1                   	RXB0EIDL =  (BYTE)cm.ident;                                             F:\MCP\projects\CAN\Source\CAN.c
942
00041c   5000     MOVF      0x0,0x0,0x0                                                                                     
1372
000436   50db     MOVF      0xdb,0x0,0x0                                                                                    
943
00041e   6e61     MOVWF     0x61,0x0                                                                                        
1373
000438   6e64     MOVWF     0x64,0x0                                                                                        
944
000420   0ef0     MOVLW     0xf0                   	RXB0SIDL = ((BYTE)(cm.ident>>16) & 0x03) + ((BYTE)(cm.ident>>13) & 0xE0); F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1374
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
945
000422   cfdb     MOVFF     0xfdb,0x5                                                                                       
1375
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
946
000424   f005                                                                                                               
1376
00043a   d02f     BRA       0x49a          		else                                                                           F:\MCP\projects\CAN\Source\CAN.c
947
000426   0ef1     MOVLW     0xf1                                                                                            
1377
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
948
000428   cfdb     MOVFF     0xfdb,0x6                                                                                       
1378
                                           			//Write standard ident.                                                       F:\MCP\projects\CAN\Source\CAN.c
949
00042a   f006                                                                                                               
1379
                                           		                                                                               F:\MCP\projects\CAN\Source\CAN.c
950
00042c   0ef2     MOVLW     0xf2                                                                                            
1380
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\Source\CAN.c
951
00042e   cfdb     MOVFF     0xfdb,0x7                                                                                       
1381
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
952
000430   f007                                                                                                               
1382
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\Source\CAN.c
953
000432   0ef3     MOVLW     0xf3                                                                                            
1383
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\Source\CAN.c
954
000434   cfdb     MOVFF     0xfdb,0x8                                                                                       
1384
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
955
000436   f008                                                                                                               
1385
00043c   0ef1     MOVLW     0xf1                  		RXB0SIDH=  (BYTE)(cm.ident>>3);                                         F:\MCP\projects\CAN\Source\CAN.c
956
000438   0e0d     MOVLW     0xd                                                                                             
1386
00043e   cfdb     MOVFF     0xfdb,0x0                                                                                       
957
00043a   90d8     BCF       0xd8,0x0,0x0                                                                                    
1387
000440   f000                                                                                                               
958
00043c   3208     RRCF      0x8,0x1,0x0                                                                                     
1388
000442   0ef2     MOVLW     0xf2                                                                                            
959
00043e   3207     RRCF      0x7,0x1,0x0                                                                                     
1389
000444   cfdb     MOVFF     0xfdb,0x1                                                                                       
960
000440   3206     RRCF      0x6,0x1,0x0                                                                                     
1390
000446   f001                                                                                                               
961
000442   3205     RRCF      0x5,0x1,0x0                                                                                     
1391
000448   0ef3     MOVLW     0xf3                                                                                            
962
000444   06e8     DECF      0xe8,0x1,0x0                                                                                    
1392
00044a   cfdb     MOVFF     0xfdb,0x2                                                                                       
963
000446   e1f9     BNZ       0x43a                                                                                           
1393
00044c   f002                                                                                                               
964
000448   0ee0     MOVLW     0xe0                                                                                            
1394
00044e   0ef4     MOVLW     0xf4                                                                                            
965
00044a   1405     ANDWF     0x5,0x0,0x0                                                                                     
1395
000450   cfdb     MOVFF     0xfdb,0x3                                                                                       
966
00044c   6e04     MOVWF     0x4,0x0                                                                                         
1396
000452   f003                                                                                                               
967
00044e   0ef0     MOVLW     0xf0                                                                                            
1397
000454   0e03     MOVLW     0x3                                                                                             
968
000450   cfdb     MOVFF     0xfdb,0x0                                                                                       
1398
000456   90d8     BCF       0xd8,0x0,0x0                                                                                    
969
000452   f000                                                                                                               
1399
000458   3203     RRCF      0x3,0x1,0x0                                                                                     
970
000454   0ef1     MOVLW     0xf1                                                                                            
1400
00045a   3202     RRCF      0x2,0x1,0x0                                                                                     
971
000456   cfdb     MOVFF     0xfdb,0x1                                                                                       
1401
00045c   3201     RRCF      0x1,0x1,0x0                                                                                     
972
000458   f001                                                                                                               
1402
00045e   3200     RRCF      0x0,0x1,0x0                                                                                     
973
00045a   0ef2     MOVLW     0xf2                                                                                            
1403
000460   06e8     DECF      0xe8,0x1,0x0                                                                                    
974
00045c   cfdb     MOVFF     0xfdb,0x2                                                                                       
1404
000462   e1f9     BNZ       0x456                                                                                           
975
00045e   f002                                                                                                               
1405
000464   5000     MOVF      0x0,0x0,0x0                                                                                     
976
000460   0ef3     MOVLW     0xf3                                                                                            
1406
000466   6e61     MOVWF     0x61,0x0                                                                                        
977
000462   cfdb     MOVFF     0xfdb,0x3                                                                                       
1407
000468   0ef1     MOVLW     0xf1                   	RXB0SIDL= ((BYTE)(cm.ident<<5) & 0xE0);                                 F:\MCP\projects\CAN\Source\CAN.c
978
000464   f003                                                                                                               
1408
00046a   cfdb     MOVFF     0xfdb,0x0                                                                                       
979
000466   0e10     MOVLW     0x10                                                                                            
1409
00046c   f000                                                                                                               
980
000468   90d8     BCF       0xd8,0x0,0x0                                                                                    
1410
00046e   0ef2     MOVLW     0xf2                                                                                            
981
00046a   3203     RRCF      0x3,0x1,0x0                                                                                     
1411
000470   cfdb     MOVFF     0xfdb,0x1                                                                                       
982
00046c   3202     RRCF      0x2,0x1,0x0                                                                                     
1412
000472   f001                                                                                                               
983
00046e   3201     RRCF      0x1,0x1,0x0                                                                                     
1413
000474   0ef3     MOVLW     0xf3                                                                                            
984
000470   3200     RRCF      0x0,0x1,0x0                                                                                     
1414
000476   cfdb     MOVFF     0xfdb,0x2                                                                                       
985
000472   06e8     DECF      0xe8,0x1,0x0                                                                                    
1415
000478   f002                                                                                                               
986
000474   e1f9     BNZ       0x468                                                                                           
1416
00047a   0ef4     MOVLW     0xf4                                                                                            
987
000476   0e03     MOVLW     0x3                                                                                             
1417
00047c   cfdb     MOVFF     0xfdb,0x3                                                                                       
988
000478   1400     ANDWF     0x0,0x0,0x0                                                                                     
1418
00047e   f003                                                                                                               
989
00047a   2404     ADDWF     0x4,0x0,0x0                                                                                     
1419
000480   0e05     MOVLW     0x5                                                                                             
990
00047c   6e62     MOVWF     0x62,0x0                                                                                        
1420
000482   0b1f     ANDLW     0x1f                                                                                            
991
00047e   0ef0     MOVLW     0xf0                   	RXB0EIDH =  (BYTE)(cm.ident>>8);                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1421
000484   e007     BZ        0x494                                                                                           
992
000480   cfdb     MOVFF     0xfdb,0x0                                                                                       
1422
000486   90d8     BCF       0xd8,0x0,0x0                                                                                    
993
000482   f000                                                                                                               
1423
000488   3600     RLCF      0x0,0x1,0x0                                                                                     
994
000484   0ef1     MOVLW     0xf1                                                                                            
1424
00048a   3601     RLCF      0x1,0x1,0x0                                                                                     
995
000486   cfdb     MOVFF     0xfdb,0x1                                                                                       
1425
00048c   3602     RLCF      0x2,0x1,0x0                                                                                     
996
000488   f001                                                                                                               
1426
00048e   3603     RLCF      0x3,0x1,0x0                                                                                     
997
00048a   0ef2     MOVLW     0xf2                                                                                            
1427
000490   06e8     DECF      0xe8,0x1,0x0                                                                                    
998
00048c   cfdb     MOVFF     0xfdb,0x2                                                                                       
1428
000492   e1f9     BNZ       0x486                                                                                           
999
00048e   f002                                                                                                               
1429
000494   0ee0     MOVLW     0xe0                                                                                            
1000
000490   0ef3     MOVLW     0xf3                                                                                            
1430
000496   1400     ANDWF     0x0,0x0,0x0                                                                                     
1001
000492   cfdb     MOVFF     0xfdb,0x3                                                                                       
1431
000498   6e62     MOVWF     0x62,0x0                                                                                        
1002
000494   f003                                                                                                               
1432
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1003
000496   0e08     MOVLW     0x8                                                                                             
1433
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
1004
000498   90d8     BCF       0xd8,0x0,0x0                                                                                    
1434
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1005
00049a   3203     RRCF      0x3,0x1,0x0                                                                                     
1435
                                           		// Data length                                                                 F:\MCP\projects\CAN\Source\CAN.c
1006
00049c   3202     RRCF      0x2,0x1,0x0                                                                                     
1436
00049a   0ef6     MOVLW     0xf6           		if (cm.data_length>8) RXB0DLC=8; else RXB0DLC=cm.data_length;                  F:\MCP\projects\CAN\Source\CAN.c
1007
00049e   3201     RRCF      0x1,0x1,0x0                                                                                     
1437
00049c   50db     MOVF      0xdb,0x0,0x0                                                                                    
1008
0004a0   3200     RRCF      0x0,0x1,0x0                                                                                     
1438
00049e   0808     SUBLW     0x8                                                                                             
1009
0004a2   06e8     DECF      0xe8,0x1,0x0                                                                                    
1439
0004a0   e203     BC        0x4a8                                                                                           
1010
0004a4   e1f9     BNZ       0x498                                                                                           
1440
0004a2   0e08     MOVLW     0x8                                                                                             
1011
0004a6   5000     MOVF      0x0,0x0,0x0                                                                                     
1441
0004a4   6e65     MOVWF     0x65,0x0                                                                                        
1012
0004a8   6e63     MOVWF     0x63,0x0                                                                                        
1442
0004a6   d003     BRA       0x4ae                                                                                           
1013
0004aa   0ef0     MOVLW     0xf0                   	RXB0EIDL =  (BYTE)cm.ident;                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1443
0004a8   0ef6     MOVLW     0xf6                                                                                            
1014
0004ac   50db     MOVF      0xdb,0x0,0x0                                                                                    
1444
0004aa   50db     MOVF      0xdb,0x0,0x0                                                                                    
1015
0004ae   6e64     MOVWF     0x64,0x0                                                                                        
1445
0004ac   6e65     MOVWF     0x65,0x0                                                                                        
1016
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1446
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1017
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1447
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\Source\CAN.c
1018
0004b0   d02f     BRA       0x510          		else                                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1448
0004ae   0ef7     MOVLW     0xf7           		RXB0D0=cm.data[0];	RXB0D1=cm.data[1];                                          F:\MCP\projects\CAN\Source\CAN.c
1019
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1449
0004b0   50db     MOVF      0xdb,0x0,0x0                                                                                    
1020
                                           			//Write standard ident.                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1450
0004b2   6e66     MOVWF     0x66,0x0                                                                                        
1021
                                           		                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1451
0004b4   0ef8     MOVLW     0xf8                                                                                            
1022
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1452
0004b6   50db     MOVF      0xdb,0x0,0x0                                                                                    
1023
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1453
0004b8   6e67     MOVWF     0x67,0x0                                                                                        
1024
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1454
0004ba   0ef9     MOVLW     0xf9           		RXB0D2=cm.data[2]; 	RXB0D3=cm.data[3];                                         F:\MCP\projects\CAN\Source\CAN.c
1025
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1455
0004bc   50db     MOVF      0xdb,0x0,0x0                                                                                    
1026
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1456
0004be   6e68     MOVWF     0x68,0x0                                                                                        
1027
0004b2   0ef0     MOVLW     0xf0                  		RXB0SIDH=  (BYTE)(cm.ident>>3);                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1457
0004c0   0efa     MOVLW     0xfa                                                                                            
1028
0004b4   cfdb     MOVFF     0xfdb,0x0                                                                                       
1458
0004c2   50db     MOVF      0xdb,0x0,0x0                                                                                    
1029
0004b6   f000                                                                                                               
1459
0004c4   6e69     MOVWF     0x69,0x0                                                                                        
1030
0004b8   0ef1     MOVLW     0xf1                                                                                            
1460
0004c6   0efb     MOVLW     0xfb           		RXB0D4=cm.data[4]; 	RXB0D5=cm.data[5];                                         F:\MCP\projects\CAN\Source\CAN.c
1031
0004ba   cfdb     MOVFF     0xfdb,0x1                                                                                       
1461
0004c8   50db     MOVF      0xdb,0x0,0x0                                                                                    
1032
0004bc   f001                                                                                                               
1462
0004ca   6e6a     MOVWF     0x6a,0x0                                                                                        
1033
0004be   0ef2     MOVLW     0xf2                                                                                            
1463
0004cc   0efc     MOVLW     0xfc                                                                                            
1034
0004c0   cfdb     MOVFF     0xfdb,0x2                                                                                       
1464
0004ce   50db     MOVF      0xdb,0x0,0x0                                                                                    
1035
0004c2   f002                                                                                                               
1465
0004d0   6e6b     MOVWF     0x6b,0x0                                                                                        
1036
0004c4   0ef3     MOVLW     0xf3                                                                                            
1466
0004d2   0efd     MOVLW     0xfd           		RXB0D6=cm.data[6]; 	RXB0D7=cm.data[7];                                         F:\MCP\projects\CAN\Source\CAN.c
1037
0004c6   cfdb     MOVFF     0xfdb,0x3                                                                                       
1467
0004d4   50db     MOVF      0xdb,0x0,0x0                                                                                    
1038
0004c8   f003                                                                                                               
1468
0004d6   6e6c     MOVWF     0x6c,0x0                                                                                        
1039
0004ca   0e03     MOVLW     0x3                                                                                             
1469
0004d8   0efe     MOVLW     0xfe                                                                                            
1040
0004cc   90d8     BCF       0xd8,0x0,0x0                                                                                    
1470
0004da   50db     MOVF      0xdb,0x0,0x0                                                                                    
1041
0004ce   3203     RRCF      0x3,0x1,0x0                                                                                     
1471
0004dc   6e6d     MOVWF     0x6d,0x0                                                                                        
1042
0004d0   3202     RRCF      0x2,0x1,0x0                                                                                     
1472
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1043
0004d2   3201     RRCF      0x1,0x1,0x0                                                                                     
1473
                                           		// set extended or not                                                         F:\MCP\projects\CAN\Source\CAN.c
1044
0004d4   3200     RRCF      0x0,0x1,0x0                                                                                     
1474
0004de   0ef5     MOVLW     0xf5           		RXB0SIDLbits.EXID=(cm.extended==TRUE?1:0);                                     F:\MCP\projects\CAN\Source\CAN.c
1045
0004d6   06e8     DECF      0xe8,0x1,0x0                                                                                    
1475
0004e0   04db     DECF      0xdb,0x0,0x0                                                                                    
1046
0004d8   e1f9     BNZ       0x4cc                                                                                           
1476
0004e2   e102     BNZ       0x4e8                                                                                           
1047
0004da   5000     MOVF      0x0,0x0,0x0                                                                                     
1477
0004e4   0e01     MOVLW     0x1                                                                                             
1048
0004dc   6e61     MOVWF     0x61,0x0                                                                                        
1478
0004e6   d001     BRA       0x4ea                                                                                           
1049
0004de   0ef0     MOVLW     0xf0                   	RXB0SIDL= ((BYTE)(cm.ident<<5) & 0xE0);                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1479
0004e8   0e00     MOVLW     0x0                                                                                             
1050
0004e0   cfdb     MOVFF     0xfdb,0x0                                                                                       
1480
0004ea   b0e8     BTFSC     0xe8,0x0,0x0                                                                                    
1051
0004e2   f000                                                                                                               
1481
0004ec   8662     BSF       0x62,0x3,0x0                                                                                    
1052
0004e4   0ef1     MOVLW     0xf1                                                                                            
1482
0004ee   a0e8     BTFSS     0xe8,0x0,0x0                                                                                    
1053
0004e6   cfdb     MOVFF     0xfdb,0x1                                                                                       
1483
0004f0   9662     BCF       0x62,0x3,0x0                                                                                    
1054
0004e8   f001                                                                                                               
1484
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1055
0004ea   0ef2     MOVLW     0xf2                                                                                            
1485
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1056
0004ec   cfdb     MOVFF     0xfdb,0x2                                                                                       
1486
                                           		// mark as redy to transmit                                                    F:\MCP\projects\CAN\Source\CAN.c
1057
0004ee   f002                                                                                                               
1487
                                           		_asm                                                                           F:\MCP\projects\CAN\Source\CAN.c
1058
0004f0   0ef3     MOVLW     0xf3                                                                                            
1488
0004f2   8660     BSF       0x60,0x3,0x0   			bsf RXB0CON, 3, 0                                                             F:\MCP\projects\CAN\Source\CAN.c
1059
0004f2   cfdb     MOVFF     0xfdb,0x3                                                                                       
1489
                                           		_endasm                                                                        F:\MCP\projects\CAN\Source\CAN.c
1060
0004f4   f003                                                                                                               
1490
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1061
0004f6   0e05     MOVLW     0x5                                                                                             
1491
0004f4   0e01     MOVLW     0x1            		return TRUE;                                                                   F:\MCP\projects\CAN\Source\CAN.c
1062
0004f8   0b1f     ANDLW     0x1f                                                                                            
1492
0004f6   d000     BRA       0x4f8                                                                                           
1063
0004fa   e007     BZ        0x50a                                                                                           
1493
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1064
0004fc   90d8     BCF       0xd8,0x0,0x0                                                                                    
1494
0004f8   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\Source\CAN.c
1065
0004fe   3600     RLCF      0x0,0x1,0x0                                                                                     
1495
0004fa   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1066
000500   3601     RLCF      0x1,0x1,0x0                                                                                     
1496
0004fc   ffd9                                                                                                               
1067
000502   3602     RLCF      0x2,0x1,0x0                                                                                     
1497
0004fe   0012     RETURN    0x0                                                                                             
1068
000504   3603     RLCF      0x3,0x1,0x0                                                                                     
1498
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1069
000506   06e8     DECF      0xe8,0x1,0x0                                                                                    
1499
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1070
000508   e1f9     BNZ       0x4fc                                                                                           
1500
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1071
00050a   0ee0     MOVLW     0xe0                                                                                            
1501
                                           #endif //USE_CAN                                                                 F:\MCP\projects\CAN\Source\CAN.c
1072
00050c   1400     ANDWF     0x0,0x0,0x0                                                                                     
1502
                                           /*********************************************************************           F:\MCP\projects\CAN\Source\Tick.c
1073
00050e   6e62     MOVWF     0x62,0x0                                                                                        
1503
                                            *                                                                               F:\MCP\projects\CAN\Source\Tick.c
1074
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1504
                                            *                  Ticker service                                               F:\MCP\projects\CAN\Source\Tick.c
1075
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1505
                                            *                                                                               F:\MCP\projects\CAN\Source\Tick.c
1076
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1506
                                            *********************************************************************           F:\MCP\projects\CAN\Source\Tick.c
1077
                                           		// Data length                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1507
                                            * FileName:        Tick.c                                                       F:\MCP\projects\CAN\Source\Tick.c
1078
000510   6a65     CLRF      0x65,0x0       		RXB0DLC = 0;                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1508
                                            *                                                                               F:\MCP\projects\CAN\Source\Tick.c
1079
000512   0ef6     MOVLW     0xf6           		if (cm.data_length>8) RXB0DLC=8; else RXB0DLC=cm.data_length;                  F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1509
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\Source\Tick.c
1080
000514   50db     MOVF      0xdb,0x0,0x0                                                                                    
1510
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\Source\Tick.c
1081
000516   0808     SUBLW     0x8                                                                                             
1511
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\Source\Tick.c
1082
000518   e203     BC        0x520                                                                                           
1512
                                            ********************************************************************/           F:\MCP\projects\CAN\Source\Tick.c
1083
00051a   0e08     MOVLW     0x8                                                                                             
1513
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1084
00051c   6e65     MOVWF     0x65,0x0                                                                                        
1514
                                           #define TICK_INCLUDE                                                             F:\MCP\projects\CAN\Source\Tick.c
1085
00051e   d003     BRA       0x526                                                                                           
1515
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1086
000520   0ef6     MOVLW     0xf6                                                                                            
1516
                                           #include <Tick.h>                                                                F:\MCP\projects\CAN\Source\Tick.c
1087
000522   50db     MOVF      0xdb,0x0,0x0                                                                                    
1517
                                           #include <Compiler.h>                                                            F:\MCP\projects\CAN\Source\Tick.c
1088
000524   6e65     MOVWF     0x65,0x0                                                                                        
1518
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1089
                                           		                                                                               F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1519
                                           #define TICK_TEMP_VALUE_1 ((INSTR_FREQ) / (TICKS_PER_SECOND * TICK_PRESCALE_VALUE)) F:\MCP\projects\CAN\Source\Tick.c
1090
                                           		// Remote request                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1520
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1091
000526   0ef5     MOVLW     0xf5           		if (cm.remote_request==TRUE)                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1521
                                           #if TICK_TEMP_VALUE_1 > 60000                                                    F:\MCP\projects\CAN\Source\Tick.c
1092
000528   04db     DECF      0xdb,0x0,0x0                                                                                    
1522
                                           #error TICK_PER_SECOND value cannot be programmed with current CLOCK_FREQ        F:\MCP\projects\CAN\Source\Tick.c
1093
00052a   e102     BNZ       0x530                                                                                           
1523
                                           #error Either lower TICK_PER_SECOND or manually configure the Timer              F:\MCP\projects\CAN\Source\Tick.c
1094
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1524
                                           #endif                                                                           F:\MCP\projects\CAN\Source\Tick.c
1095
                                           			_asm                                                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1525
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1096
00052c   8c65     BSF       0x65,0x6,0x0   				bsf RXB0DLC, 6, 0                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1526
                                           #define TICK_TEMP_VALUE         (65535 - TICK_TEMP_VALUE_1)                      F:\MCP\projects\CAN\Source\Tick.c
1097
                                           			_endasm                                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1527
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1098
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1528
                                           #define TICK_COUNTER_HIGH       ((TICK_TEMP_VALUE >> 8) & 0xff)                  F:\MCP\projects\CAN\Source\Tick.c
1099
00052e   d001     BRA       0x532          		else                                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1529
                                           #define TICK_COUNTER_LOW        (TICK_TEMP_VALUE & 0xff)                         F:\MCP\projects\CAN\Source\Tick.c
1100
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1530
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1101
                                           			_asm                                                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1531
                                           #if (TICK_PRESCALE_VALUE == 2)                                                   F:\MCP\projects\CAN\Source\Tick.c
1102
000530   9c65     BCF       0x65,0x6,0x0   				bcf RXB0DLC, 6, 0                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1532
                                               #define TIMER_PRESCALE  (0)                                                  F:\MCP\projects\CAN\Source\Tick.c
1103
                                           			_endasm                                                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1533
                                           #elif ( TICK_PRESCALE_VALUE == 4 )                                               F:\MCP\projects\CAN\Source\Tick.c
1104
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1534
                                               #define TIMER_PRESCALE  (1)                                                  F:\MCP\projects\CAN\Source\Tick.c
1105
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1535
                                           #elif ( TICK_PRESCALE_VALUE == 8 )                                               F:\MCP\projects\CAN\Source\Tick.c
1106
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1536
                                               #define TIMER_PRESCALE  (2)                                                  F:\MCP\projects\CAN\Source\Tick.c
1107
000532   0ef7     MOVLW     0xf7           		RXB0D0=cm.data[0];	RXB0D1=cm.data[1];                                          F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1537
                                           #elif ( TICK_PRESCALE_VALUE == 16 )                                              F:\MCP\projects\CAN\Source\Tick.c
1108
000534   50db     MOVF      0xdb,0x0,0x0                                                                                    
1538
                                               #define TIMER_PRESCALE  (3)                                                  F:\MCP\projects\CAN\Source\Tick.c
1109
000536   6e66     MOVWF     0x66,0x0                                                                                        
1539
                                           #elif ( TICK_PRESCALE_VALUE == 32 )                                              F:\MCP\projects\CAN\Source\Tick.c
1110
000538   0ef8     MOVLW     0xf8                                                                                            
1540
                                               #define TIMER_PRESCALE  (4)                                                  F:\MCP\projects\CAN\Source\Tick.c
1111
00053a   50db     MOVF      0xdb,0x0,0x0                                                                                    
1541
                                           #elif ( TICK_PRESCALE_VALUE == 64 )                                              F:\MCP\projects\CAN\Source\Tick.c
1112
00053c   6e67     MOVWF     0x67,0x0                                                                                        
1542
                                               #define TIMER_PRESCALE  (5)                                                  F:\MCP\projects\CAN\Source\Tick.c
1113
00053e   0ef9     MOVLW     0xf9           		RXB0D2=cm.data[2]; 	RXB0D3=cm.data[3];                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1543
                                           #elif ( TICK_PRESCALE_VALUE == 128 )                                             F:\MCP\projects\CAN\Source\Tick.c
1114
000540   50db     MOVF      0xdb,0x0,0x0                                                                                    
1544
                                               #define TIMER_PRESCALE  (6)                                                  F:\MCP\projects\CAN\Source\Tick.c
1115
000542   6e68     MOVWF     0x68,0x0                                                                                        
1545
                                           #elif ( TICK_PRESCALE_VALUE == 256 )                                             F:\MCP\projects\CAN\Source\Tick.c
1116
000544   0efa     MOVLW     0xfa                                                                                            
1546
                                               #define TIMER_PRESCALE  (7)                                                  F:\MCP\projects\CAN\Source\Tick.c
1117
000546   50db     MOVF      0xdb,0x0,0x0                                                                                    
1547
                                           #else                                                                            F:\MCP\projects\CAN\Source\Tick.c
1118
000548   6e69     MOVWF     0x69,0x0                                                                                        
1548
                                               #error Invalid TICK_PRESCALE_VALUE specified.                                F:\MCP\projects\CAN\Source\Tick.c
1119
00054a   0efb     MOVLW     0xfb           		RXB0D4=cm.data[4]; 	RXB0D5=cm.data[5];                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1549
                                           #endif                                                                           F:\MCP\projects\CAN\Source\Tick.c
1120
00054c   50db     MOVF      0xdb,0x0,0x0                                                                                    
1550
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1121
00054e   6e6a     MOVWF     0x6a,0x0                                                                                        
1551
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1122
000550   0efc     MOVLW     0xfc                                                                                            
1552
                                           TICK TickCount = 0;	// 10ms/unit                                                 F:\MCP\projects\CAN\Source\Tick.c
1123
000552   50db     MOVF      0xdb,0x0,0x0                                                                                    
1553
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1124
000554   6e6b     MOVWF     0x6b,0x0                                                                                        
1554
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1125
000556   0efd     MOVLW     0xfd           		RXB0D6=cm.data[6]; 	RXB0D7=cm.data[7];                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1555
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1126
000558   50db     MOVF      0xdb,0x0,0x0                                                                                    
1556
                                           /*                                                                               F:\MCP\projects\CAN\Source\Tick.c
1127
00055a   6e6c     MOVWF     0x6c,0x0                                                                                        
1557
                                           *	Function: TickInit                                                             F:\MCP\projects\CAN\Source\Tick.c
1128
00055c   0efe     MOVLW     0xfe                                                                                            
1558
                                           *                                                                                F:\MCP\projects\CAN\Source\Tick.c
1129
00055e   50db     MOVF      0xdb,0x0,0x0                                                                                    
1559
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\Tick.c
1130
000560   6e6d     MOVWF     0x6d,0x0                                                                                        
1560
                                           *	Output: Tick manager is initialized.                                           F:\MCP\projects\CAN\Source\Tick.c
1131
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1561
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\Source\Tick.c
1132
                                           		// set extended or not                                                         F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1562
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1133
000562   0ef4     MOVLW     0xf4           		RXB0SIDLbits.EXID=(cm.extended==TRUE?1:0);                                     F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1563
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1134
000564   04db     DECF      0xdb,0x0,0x0                                                                                    
1564
                                           */                                                                               F:\MCP\projects\CAN\Source\Tick.c
1135
000566   e102     BNZ       0x56c                                                                                           
1565
                                           #define PERIOD (INSTR_FREQ/256/1000)*TICK_PERIOD_MS                              F:\MCP\projects\CAN\Source\Tick.c
1136
000568   0e01     MOVLW     0x1                                                                                             
1566
                                           void tickInit(void)                                                              F:\MCP\projects\CAN\Source\Tick.c
1137
00056a   d001     BRA       0x56e                                                                                           
1567
                                           {                                                                                F:\MCP\projects\CAN\Source\Tick.c
1138
00056c   0e00     MOVLW     0x0                                                                                             
1568
                                               // Start the timer.                                                          F:\MCP\projects\CAN\Source\Tick.c
1139
00056e   b0e8     BTFSC     0xe8,0x0,0x0                                                                                    
1569
000aac   0e79     MOVLW     0x79               TMR0L = TICK_COUNTER_LOW;                                                    F:\MCP\projects\CAN\Source\Tick.c
1140
000570   8662     BSF       0x62,0x3,0x0                                                                                    
1570
000aae   6ed6     MOVWF     0xd6,0x0                                                                                        
1141
000572   a0e8     BTFSS     0xe8,0x0,0x0                                                                                    
1571
000ab0   0efe     MOVLW     0xfe               TMR0H = TICK_COUNTER_HIGH;                                                   F:\MCP\projects\CAN\Source\Tick.c
1142
000574   9662     BCF       0x62,0x3,0x0                                                                                    
1572
000ab2   6ed7     MOVWF     0xd7,0x0                                                                                        
1143
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1573
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1144
                                           		// Priority                                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1574
                                               // 16-BIT, internal timer, PSA set to 1:256                                  F:\MCP\projects\CAN\Source\Tick.c
1145
000576   0eef     MOVLW     0xef           		RXB0CON = (RXB0CON & 0b11111100) | prio;                                       F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1575
000ab4   0e07     MOVLW     0x7                T0CON = 0b00000000 | TIMER_PRESCALE;                                         F:\MCP\projects\CAN\Source\Tick.c
1146
000578   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
1576
000ab6   6ed5     MOVWF     0xd5,0x0                                                                                        
1147
00057a   ffe6                                                                                                               
1577
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1148
00057c   0efc     MOVLW     0xfc                                                                                            
1578
                                               // Start the timer.                                                          F:\MCP\projects\CAN\Source\Tick.c
1149
00057e   1460     ANDWF     0x60,0x0,0x0                                                                                    
1579
000ab8   8ed5     BSF       0xd5,0x7,0x0       T0CONbits.TMR0ON = 1;                                                        F:\MCP\projects\CAN\Source\Tick.c
1150
000580   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1580
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1151
000582   10e7     IORWF     0xe7,0x0,0x0                                                                                    
1581
000aba   84f2     BSF       0xf2,0x2,0x0       INTCONbits.TMR0IF = 1;                                                       F:\MCP\projects\CAN\Source\Tick.c
1152
000584   6e60     MOVWF     0x60,0x0                                                                                        
1582
000abc   8af2     BSF       0xf2,0x5,0x0       INTCONbits.TMR0IE = 1;                                                       F:\MCP\projects\CAN\Source\Tick.c
1153
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1583
000abe   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\Tick.c
1154
                                           		// mark as redy to transmit                                                    F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1584
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1155
                                           		_asm                                                                           F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1585
                                           /*                                                                               F:\MCP\projects\CAN\Source\Tick.c
1156
000586   8660     BSF       0x60,0x3,0x0   			bsf RXB0CON, 3, 0                                                             F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1586
                                           *	Function: TickGet                                                              F:\MCP\projects\CAN\Source\Tick.c
1157
                                           		_endasm                                                                        F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1587
                                           *                                                                                F:\MCP\projects\CAN\Source\Tick.c
1158
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1588
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\Tick.c
1159
000588   0e01     MOVLW     0x1            		return TRUE;                                                                   F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1589
                                           *	Output: Current tick value is given, 1 tick represents approximately 10ms      F:\MCP\projects\CAN\Source\Tick.c
1160
00058a   d000     BRA       0x58c                                                                                           
1590
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\Source\Tick.c
1161
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1591
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1162
00058c   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1592
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1163
00058e   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1593
                                           */                                                                               F:\MCP\projects\CAN\Source\Tick.c
1164
000590   ffd9                                                                                                               
1594
                                           TICK tickGet(void)                                                               F:\MCP\projects\CAN\Source\Tick.c
1165
000592   0012     RETURN    0x0                                                                                             
1595
                                           {                                                                                F:\MCP\projects\CAN\Source\Tick.c
1166
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1596
000ac0   c074     MOVFF     0x74,0x18          return TickCount;                                                            F:\MCP\projects\CAN\Source\Tick.c
1167
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1597
000ac2   f018                                                                                                               
1168
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1598
000ac4   c075     MOVFF     0x75,0x19                                                                                       
1169
                                           #endif //USE_CAN                                                                 F:\MCP\projects\CAN\canToSerial\Source\CAN.c
1599
000ac6   f019                                                                                                               
1170
                                           /*********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1600
000ac8   c076     MOVFF     0x76,0x1a                                                                                       
1171
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1601
000aca   f01a                                                                                                               
1172
                                            *                  Main application                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
1602
000acc   c077     MOVFF     0x77,0x1b                                                                                       
1173
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1603
000ace   f01b                                                                                                               
1174
                                            *********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1604
000ad0   d000     BRA       0xad2                                                                                           
1175
                                            * FileName:        Main.c                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
1605
000ad2   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\Tick.c
1176
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1606
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1177
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1607
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1178
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1608
                                           /*                                                                               F:\MCP\projects\CAN\Source\Tick.c
1179
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1609
                                           *	Function: tickUpdate                                                           F:\MCP\projects\CAN\Source\Tick.c
1180
                                            ********************************************************************/           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1610
                                           *                                                                                F:\MCP\projects\CAN\Source\Tick.c
1181
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1611
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\Tick.c
1182
                                           #include <compiler.h>                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1612
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\Tick.c
1183
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1613
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\Source\Tick.c
1184
                                           #include <Tick.h>                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1614
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1185
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1615
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1186
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
1616
                                           */                                                                               F:\MCP\projects\CAN\Source\Tick.c
1187
                                           	#include <CAN.h>                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1617
                                           void tickUpdate(void)                                                            F:\MCP\projects\CAN\Source\Tick.c
1188
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1618
                                           {                                                                                F:\MCP\projects\CAN\Source\Tick.c
1189
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1619
000ad4   a4f2     BTFSS     0xf2,0x2,0x0       if(INTCONbits.TMR0IF)                                                        F:\MCP\projects\CAN\Source\Tick.c
1190
                                           #ifdef USE_UART                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
1620
000ad6   d00b     BRA       0xaee                                                                                           
1191
                                           	#include <uart.h>                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1621
                                               {                                                                            F:\MCP\projects\CAN\Source\Tick.c
1192
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1622
000ad8   0efe     MOVLW     0xfe                   TMR0H = TICK_COUNTER_HIGH;                                               F:\MCP\projects\CAN\Source\Tick.c
1193
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1623
000ada   6ed7     MOVWF     0xd7,0x0                                                                                        
1194
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1624
000adc   0e79     MOVLW     0x79                   TMR0L = TICK_COUNTER_LOW;                                                F:\MCP\projects\CAN\Source\Tick.c
1195
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1625
000ade   6ed6     MOVWF     0xd6,0x0                                                                                        
1196
                                           static void mainInit(void);                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
1626
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1197
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1627
000ae0   0100     MOVLB     0x0                    TickCount++;                                                             F:\MCP\projects\CAN\Source\Tick.c
1198
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1628
000ae2   2b74     INCF      0x74,0x1,0x1                                                                                    
1199
                                           void main()                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
1629
000ae4   0e00     MOVLW     0x0                                                                                             
1200
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1630
000ae6   2375     ADDWFC    0x75,0x1,0x1                                                                                    
1201
                                           	static TICK t = 0;                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
1631
000ae8   2376     ADDWFC    0x76,0x1,0x1                                                                                    
1202
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1632
000aea   2377     ADDWFC    0x77,0x1,0x1                                                                                    
1203
                                           	// Inits                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
1633
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1204
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1634
000aec   94f2     BCF       0xf2,0x2,0x0           INTCONbits.TMR0IF = 0;                                                   F:\MCP\projects\CAN\Source\Tick.c
1205
000594   d874     RCALL     0x67e          	mainInit();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1635
                                               }                                                                            F:\MCP\projects\CAN\Source\Tick.c
1206
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1636
000aee   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\Tick.c
1207
                                           	#ifdef USE_CAN                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
1637
                                           /*********************************************************************           F:\MCP\projects\CAN\Source\uart.c
1208
000596   ec22     CALL      0x44,0x0       		canInit();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1638
                                            *                                                                               F:\MCP\projects\CAN\Source\uart.c
1209
000598   f000                                                                                                               
1639
                                            *                  UART                                                         F:\MCP\projects\CAN\Source\uart.c
1210
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1640
                                            *                                                                               F:\MCP\projects\CAN\Source\uart.c
1211
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1641
                                            *********************************************************************           F:\MCP\projects\CAN\Source\uart.c
1212
                                           	#ifdef USE_UART                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
1642
                                            * FileName:        uart.c                                                       F:\MCP\projects\CAN\Source\uart.c
1213
00059a   ece2     CALL      0x9c4,0x0      		uartInit();                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
1643
                                            *                                                                               F:\MCP\projects\CAN\Source\uart.c
1214
00059c   f004                                                                                                               
1644
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\Source\uart.c
1215
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1645
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\Source\uart.c
1216
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1646
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\Source\uart.c
1217
00059e   ecb5     CALL      0xb6a,0x0      	tickInit();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1647
                                            ********************************************************************/           F:\MCP\projects\CAN\Source\uart.c
1218
0005a0   f005                                                                                                               
1648
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1219
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1649
                                           #include <uart.h>                                                                F:\MCP\projects\CAN\Source\uart.c
1220
0005a2   d7ff     BRA       0x5a2          	while(1)                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
1650
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\Source\uart.c
1221
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1651
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1222
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1652
                                           #ifdef USE_UART                                                                  F:\MCP\projects\CAN\Source\uart.c
1223
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1653
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1224
0005a4   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1654
                                           static char uartBusy(void);                                                      F:\MCP\projects\CAN\Source\uart.c
1225
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1655
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1226
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1656
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1227
                                           #pragma interruptlow HighISR                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1657
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1228
0005a6   cfd8     MOVFF     0xfd8,0xfe4    void HighISR(void)                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1658
                                           *	Function: uartInit                                                             F:\MCP\projects\CAN\Source\uart.c
1229
0005a8   ffe4                                                                                                               
1659
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1230
0005aa   cfe0     MOVFF     0xfe0,0xfe4                                                                                     
1660
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\uart.c
1231
0005ac   ffe4                                                                                                               
1661
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\uart.c
1232
0005ae   6ee4     MOVWF     0xe4,0x0                                                                                        
1662
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\Source\uart.c
1233
0005b0   cfda     MOVFF     0xfda,0xfe4                                                                                     
1663
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1234
0005b2   ffe4                                                                                                               
1664
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1235
0005b4   cfe2     MOVFF     0xfe2,0xfda                                                                                     
1665
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1236
0005b6   ffda                                                                                                               
1666
                                           void uartInit()                                                                  F:\MCP\projects\CAN\Source\uart.c
1237
0005b8   cfe9     MOVFF     0xfe9,0xfe4                                                                                     
1667
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1238
0005ba   ffe4                                                                                                               
1668
                                           		// Configure USART                                                             F:\MCP\projects\CAN\Source\uart.c
1239
0005bc   cfea     MOVFF     0xfea,0xfe4                                                                                     
1669
000906   8e94     BSF       0x94,0x7,0x0   		TRISCbits.TRISC7=1;                                                            F:\MCP\projects\CAN\Source\uart.c
1240
0005be   ffe4                                                                                                               
1670
000908   9c94     BCF       0x94,0x6,0x0   		TRISCbits.TRISC6=0;                                                            F:\MCP\projects\CAN\Source\uart.c
1241
0005c0   cff6     MOVFF     0xff6,0xfe4                                                                                     
1671
00090a   0e20     MOVLW     0x20           		TXSTA=0b00100000; // Low BRG speed                                             F:\MCP\projects\CAN\Source\uart.c
1242
0005c2   ffe4                                                                                                               
1672
00090c   6eac     MOVWF     0xac,0x0                                                                                        
1243
0005c4   cff7     MOVFF     0xff7,0xfe4                                                                                     
1673
00090e   0e90     MOVLW     0x90           		RCSTA=0b10010000;                                                              F:\MCP\projects\CAN\Source\uart.c
1244
0005c6   ffe4                                                                                                               
1674
000910   6eab     MOVWF     0xab,0x0                                                                                        
1245
0005c8   cff5     MOVFF     0xff5,0xfe4                                                                                     
1675
000912   0e1f     MOVLW     0x1f           		SPBRG = SPBRG_VAL;                                                             F:\MCP\projects\CAN\Source\uart.c
1246
0005ca   ffe4                                                                                                               
1676
000914   6eaf     MOVWF     0xaf,0x0                                                                                        
1247
0005cc   cff3     MOVFF     0xff3,0xfe4                                                                                     
1677
                                           		// USART RX interrupt                                                          F:\MCP\projects\CAN\Source\uart.c
1248
0005ce   ffe4                                                                                                               
1678
000916   9a9e     BCF       0x9e,0x5,0x0   		PIR1bits.RCIF=0;                                                               F:\MCP\projects\CAN\Source\uart.c
1249
0005d0   cff4     MOVFF     0xff4,0xfe4                                                                                     
1679
000918   8a9d     BSF       0x9d,0x5,0x0   		PIE1bits.RCIE=1;                                                               F:\MCP\projects\CAN\Source\uart.c
1250
0005d2   ffe4                                                                                                               
1680
                                           		// High interrupt                                                              F:\MCP\projects\CAN\Source\uart.c
1251
0005d4   cffa     MOVFF     0xffa,0xfe4                                                                                     
1681
00091a   8a9f     BSF       0x9f,0x5,0x0   		IPR1bits.RCIP=1;                                                               F:\MCP\projects\CAN\Source\uart.c
1252
0005d6   ffe4                                                                                                               
1682
00091c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\uart.c
1253
0005d8   ee00     LFSR      0x0,0x14                                                                                        
1683
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1254
0005da   f014                                                                                                               
1684
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1255
0005dc   0e0b     MOVLW     0xb                                                                                             
1685
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1256
0005de   04e8     DECF      0xe8,0x0,0x0                                                                                    
1686
                                           *	Function: uartPutc                                                             F:\MCP\projects\CAN\Source\uart.c
1257
0005e0   e303     BNC       0x5e8                                                                                           
1687
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1258
0005e2   cfee     MOVFF     0xfee,0xfe4                                                                                     
1688
                                           *	Input:	BYTE c to send on uart                                                  F:\MCP\projects\CAN\Source\uart.c
1259
0005e4   ffe4                                                                                                               
1689
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\uart.c
1260
0005e6   d7fb     BRA       0x5de                                                                                           
1690
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1261
0005e8   ee00     LFSR      0x0,0x0                                                                                         
1691
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1262
0005ea   f000                                                                                                               
1692
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1263
0005ec   0e14     MOVLW     0x14                                                                                            
1693
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1264
0005ee   04e8     DECF      0xe8,0x0,0x0                                                                                    
1694
00091e   cfd9     MOVFF     0xfd9,0xfe6    void uartPutc(BYTE c)                                                            F:\MCP\projects\CAN\Source\uart.c
1265
0005f0   e303     BNC       0x5f8                                                                                           
1695
000920   ffe6                                                                                                               
1266
0005f2   cfee     MOVFF     0xfee,0xfe4                                                                                     
1696
000922   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
1267
0005f4   ffe4                                                                                                               
1697
000924   ffd9                                                                                                               
1268
0005f6   d7fb     BRA       0x5ee                                                                                           
1698
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1269
0005f8   52e6     MOVF      0xe6,0x1,0x0                                                                                    
1699
                                           	// Write the data byte to the USART                                             F:\MCP\projects\CAN\Source\uart.c
1270
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1700
000926   0efe     MOVLW     0xfe           	TXREG = c;                                                                      F:\MCP\projects\CAN\Source\uart.c
1271
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1701
000928   50db     MOVF      0xdb,0x0,0x0                                                                                    
1272
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1702
00092a   6ead     MOVWF     0xad,0x0                                                                                        
1273
                                           	#ifdef USE_UART                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
1703
00092c   d84b     RCALL     0x9c4          	while(uartBusy());                                                              F:\MCP\projects\CAN\Source\uart.c
1274
0005fa   ec4b     CALL      0xa96,0x0      		uartISR();                                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1704
00092e   0900     IORLW     0x0                                                                                             
1275
0005fc   f005                                                                                                               
1705
000930   e001     BZ        0x934                                                                                           
1276
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1706
000932   d7fc     BRA       0x92c                                                                                           
1277
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1707
000934   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\Source\uart.c
1278
                                           	#ifdef USE_CAN                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
1708
000936   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1279
0005fe   ec4d     CALL      0x9a,0x0       		canISR();                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
1709
000938   ffd9                                                                                                               
1280
000600   f000                                                                                                               
1710
00093a   0012     RETURN    0x0                                                                                             
1281
                                           	#endif                                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
1711
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1282
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1712
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1283
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1713
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1284
000602   ecc9     CALL      0xb92,0x0      	tickUpdate();                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
1714
                                           *	Function: uartPuts                                                             F:\MCP\projects\CAN\Source\uart.c
1285
000604   f005                                                                                                               
1715
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1286
000606   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1716
                                           *	Input:	Byte array to send on uart                                              F:\MCP\projects\CAN\Source\uart.c
1287
000608   ee00     LFSR      0x0,0x13                                                                                        
1717
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\uart.c
1288
00060a   f013                                                                                                               
1718
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1289
00060c   0e14     MOVLW     0x14                                                                                            
1719
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1290
00060e   04e8     DECF      0xe8,0x0,0x0                                                                                    
1720
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1291
000610   e303     BNC       0x618                                                                                           
1721
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1292
000612   cfe5     MOVFF     0xfe5,0xfed                                                                                     
1722
00093c   cfd9     MOVFF     0xfd9,0xfe6    void uartPuts(BYTE c[])                                                          F:\MCP\projects\CAN\Source\uart.c
1293
000614   ffed                                                                                                               
1723
00093e   ffe6                                                                                                               
1294
000616   d7fb     BRA       0x60e                                                                                           
1724
000940   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
1295
000618   ee00     LFSR      0x0,0x1e                                                                                        
1725
000942   ffd9                                                                                                               
1296
00061a   f01e                                                                                                               
1726
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1297
00061c   0e0b     MOVLW     0xb                                                                                             
1727
                                           	do                                                                              F:\MCP\projects\CAN\Source\uart.c
1298
00061e   04e8     DECF      0xe8,0x0,0x0                                                                                    
1728
                                             	{  // Transmit a byte                                                         F:\MCP\projects\CAN\Source\uart.c
1299
000620   e303     BNC       0x628                                                                                           
1729
000944   d83f     RCALL     0x9c4              	while(uartBusy());                                                          F:\MCP\projects\CAN\Source\uart.c
1300
000622   cfe5     MOVFF     0xfe5,0xfed                                                                                     
1730
000946   0900     IORLW     0x0                                                                                             
1301
000624   ffed                                                                                                               
1731
000948   e001     BZ        0x94c                                                                                           
1302
000626   d7fb     BRA       0x61e                                                                                           
1732
00094a   d7fc     BRA       0x944                                                                                           
1303
000628   cfe5     MOVFF     0xfe5,0xffa                                                                                     
1733
00094c   0efd     MOVLW     0xfd               	uartPutc(*c);                                                               F:\MCP\projects\CAN\Source\uart.c
1304
00062a   fffa                                                                                                               
1734
00094e   cfdb     MOVFF     0xfdb,0xfe9                                                                                     
1305
00062c   cfe5     MOVFF     0xfe5,0xff4                                                                                     
1735
000950   ffe9                                                                                                               
1306
00062e   fff4                                                                                                               
1736
000952   0efe     MOVLW     0xfe                                                                                            
1307
000630   cfe5     MOVFF     0xfe5,0xff3                                                                                     
1737
000954   cfdb     MOVFF     0xfdb,0xfea                                                                                     
1308
000632   fff3                                                                                                               
1738
000956   ffea                                                                                                               
1309
000634   cfe5     MOVFF     0xfe5,0xff5                                                                                     
1739
000958   50ef     MOVF      0xef,0x0,0x0                                                                                    
1310
000636   fff5                                                                                                               
1740
00095a   6ee6     MOVWF     0xe6,0x0                                                                                        
1311
000638   cfe5     MOVFF     0xfe5,0xff7                                                                                     
1741
00095c   dfe0     RCALL     0x91e                                                                                           
1312
00063a   fff7                                                                                                               
1742
00095e   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1313
00063c   cfe5     MOVFF     0xfe5,0xff6                                                                                     
1743
000960   0efd     MOVLW     0xfd             	} while( *c++ );                                                              F:\MCP\projects\CAN\Source\uart.c
1314
00063e   fff6                                                                                                               
1744
000962   cfdb     MOVFF     0xfdb,0xfe9                                                                                     
1315
000640   cfe5     MOVFF     0xfe5,0xfea                                                                                     
1745
000964   ffe9                                                                                                               
1316
000642   ffea                                                                                                               
1746
000966   2adb     INCF      0xdb,0x1,0x0                                                                                    
1317
000644   cfe5     MOVFF     0xfe5,0xfe9                                                                                     
1747
000968   0efe     MOVLW     0xfe                                                                                            
1318
000646   ffe9                                                                                                               
1748
00096a   cfdb     MOVFF     0xfdb,0xfea                                                                                     
1319
000648   cfe5     MOVFF     0xfe5,0xfda                                                                                     
1749
00096c   ffea                                                                                                               
1320
00064a   ffda                                                                                                               
1750
00096e   e301     BNC       0x972                                                                                           
1321
00064c   50e5     MOVF      0xe5,0x0,0x0                                                                                    
1751
000970   2adb     INCF      0xdb,0x1,0x0                                                                                    
1322
00064e   cfe5     MOVFF     0xfe5,0xfe0                                                                                     
1752
000972   50ef     MOVF      0xef,0x0,0x0                                                                                    
1323
000650   ffe0                                                                                                               
1753
000974   e1e7     BNZ       0x944                                                                                           
1324
000652   cfe5     MOVFF     0xfe5,0xfd8                                                                                     
1754
000976   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\Source\uart.c
1325
000654   ffd8                                                                                                               
1755
000978   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1326
000656   0010     RETFIE    0x0                                                                                             
1756
00097a   ffd9                                                                                                               
1327
                                           #pragma code highVector=0x08                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1757
00097c   0012     RETURN    0x0                                                                                             
1328
                                           void HighVector (void)                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1758
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1329
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1759
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1330
000008   efd3     GOTO      0x5a6              _asm goto HighISR _endasm                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
1760
                                           *	Function: uartPutrs                                                            F:\MCP\projects\CAN\Source\uart.c
1331
00000a   f002                                                                                                               
1761
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1332
00000c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1762
                                           *	Input:	Byte array to send on uart (static)                                     F:\MCP\projects\CAN\Source\uart.c
1333
                                           #pragma code // Return to default code section                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
1763
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\uart.c
1334
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1764
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1335
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1765
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1336
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1766
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1337
                                           #pragma interruptlow LowISR                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
1767
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1338
000658   cfd8     MOVFF     0xfd8,0xfe4    void LowISR(void)                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1768
00097e   cfd9     MOVFF     0xfd9,0xfe6    void uartPutrs(const rom char *c)                                                F:\MCP\projects\CAN\Source\uart.c
1339
00065a   ffe4                                                                                                               
1769
000980   ffe6                                                                                                               
1340
00065c   cfe0     MOVFF     0xfe0,0xfe4                                                                                     
1770
000982   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
1341
00065e   ffe4                                                                                                               
1771
000984   ffd9                                                                                                               
1342
000660   6ee4     MOVWF     0xe4,0x0                                                                                        
1772
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1343
000662   cfda     MOVFF     0xfda,0xfe4                                                                                     
1773
                                           	do                                                                              F:\MCP\projects\CAN\Source\uart.c
1344
000664   ffe4                                                                                                               
1774
                                             	{  // Transmit a byte                                                         F:\MCP\projects\CAN\Source\uart.c
1345
000666   cfe2     MOVFF     0xfe2,0xfda                                                                                     
1775
000986   d81e     RCALL     0x9c4              	while(uartBusy());                                                          F:\MCP\projects\CAN\Source\uart.c
1346
000668   ffda                                                                                                               
1776
000988   0900     IORLW     0x0                                                                                             
1347
00066a   52e6     MOVF      0xe6,0x1,0x0                                                                                    
1777
00098a   e001     BZ        0x98e                                                                                           
1348
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1778
00098c   d7fc     BRA       0x986                                                                                           
1349
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1779
00098e   0efd     MOVLW     0xfd               	uartPutc(*c);                                                               F:\MCP\projects\CAN\Source\uart.c
1350
00066c   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1780
000990   cfdb     MOVFF     0xfdb,0xff6                                                                                     
1351
00066e   cfe5     MOVFF     0xfe5,0xfda                                                                                     
1781
000992   fff6                                                                                                               
1352
000670   ffda                                                                                                               
1782
000994   0efe     MOVLW     0xfe                                                                                            
1353
000672   50e5     MOVF      0xe5,0x0,0x0                                                                                    
1783
000996   cfdb     MOVFF     0xfdb,0xff7                                                                                     
1354
000674   cfe5     MOVFF     0xfe5,0xfe0                                                                                     
1784
000998   fff7                                                                                                               
1355
000676   ffe0                                                                                                               
1785
00099a   0008     TBLRD                                                                                                     
1356
000678   cfe5     MOVFF     0xfe5,0xfd8                                                                                     
1786
00099c   50f5     MOVF      0xf5,0x0,0x0                                                                                    
1357
00067a   ffd8                                                                                                               
1787
00099e   6ee6     MOVWF     0xe6,0x0                                                                                        
1358
00067c   0010     RETFIE    0x0                                                                                             
1788
0009a0   dfbe     RCALL     0x91e                                                                                           
1359
                                           #pragma code lowVector=0x18                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
1789
0009a2   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1360
                                           void LowVector (void)                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1790
0009a4   0efd     MOVLW     0xfd             	} while( *c++ );                                                              F:\MCP\projects\CAN\Source\uart.c
1361
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1791
0009a6   cfdb     MOVFF     0xfdb,0xff6                                                                                     
1362
000018   ef2c     GOTO      0x658              _asm goto LowISR _endasm                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
1792
0009a8   fff6                                                                                                               
1363
00001a   f003                                                                                                               
1793
0009aa   2adb     INCF      0xdb,0x1,0x0                                                                                    
1364
00001c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1794
0009ac   0efe     MOVLW     0xfe                                                                                            
1365
                                           #pragma code // Return to default code section                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
1795
0009ae   cfdb     MOVFF     0xfdb,0xff7                                                                                     
1366
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1796
0009b0   fff7                                                                                                               
1367
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
1797
0009b2   e301     BNC       0x9b6                                                                                           
1368
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
1798
0009b4   2adb     INCF      0xdb,0x1,0x0                                                                                    
1369
                                           *	Function: mainInit                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
1799
0009b6   0008     TBLRD                                                                                                     
1370
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
1800
0009b8   50f5     MOVF      0xf5,0x0,0x0                                                                                    
1371
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
1801
0009ba   e1e5     BNZ       0x986                                                                                           
1372
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
1802
0009bc   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\Source\uart.c
1373
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1374
                                           *	Affects: Se code                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1375
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1376
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1377
                                           void mainInit()                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1378
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1379
00067e   9294     BCF       0x94,0x1,0x0   	LED0_TRIS=0;	                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1380
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1381
                                               // Enable internal PORTB pull-ups                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1382
000680   9ef1     BCF       0xf1,0x7,0x0       INTCON2bits.RBPU = 0;                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1383
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1384
                                           	// Enable Interrupts                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1385
000682   8ef2     BSF       0xf2,0x7,0x0       INTCONbits.GIEH = 1;                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1386
000684   8cf2     BSF       0xf2,0x6,0x0       INTCONbits.GIEL = 1;                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1387
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1388
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1389
                                           	// Enable interrupt prirority                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1390
000686   8ed0     BSF       0xd0,0x7,0x0   	RCONbits.IPEN=1;                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1391
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1392
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1393
000688   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1394
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1395
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1396
                                           *	Function: canParse                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1397
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1398
                                           *	Input:	Received can message                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1399
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1400
                                           *	Pre-conditions: canInit and received packet.                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1401
                                           *	Affects: Sensors/actuators/etc. See code.                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1402
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1403
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1404
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1405
00068a   cfd9     MOVFF     0xfd9,0xfe6    void canParse(CAN_MESSAGE cm)                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1406
00068c   ffe6                                                                                                               
-
 
1407
00068e   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
-
 
1408
000690   ffd9                                                                                                               
-
 
1409
000692   0e02     MOVLW     0x2                                                                                             
-
 
1410
000694   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
-
 
1411
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1412
000696   6ade     CLRF      0xde,0x0       	int i=0;                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1413
000698   6add     CLRF      0xdd,0x0                                                                                        
-
 
1414
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1415
00069a   0efd     MOVLW     0xfd           	uartPutc(UART_START_BYTE);                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1416
00069c   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
1417
00069e   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1418
0006a0   f004                                                                                                               
-
 
1419
0006a2   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1420
0006a4   0ef0     MOVLW     0xf0           	uartPutc((BYTE)(cm.ident));                                                     F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1421
0006a6   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
-
 
1422
0006a8   ffe6                                                                                                               
-
 
1423
0006aa   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1424
0006ac   f004                                                                                                               
-
 
1425
0006ae   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1426
0006b0   0ef0     MOVLW     0xf0           	uartPutc((BYTE)(cm.ident>>8));                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1427
0006b2   cfdb     MOVFF     0xfdb,0x0                                                                                       
-
 
1428
0006b4   f000                                                                                                               
-
 
1429
0006b6   0ef1     MOVLW     0xf1                                                                                            
-
 
1430
0006b8   cfdb     MOVFF     0xfdb,0x1                                                                                       
-
 
1431
0006ba   f001                                                                                                               
-
 
1432
0006bc   0ef2     MOVLW     0xf2                                                                                            
-
 
1433
0006be   cfdb     MOVFF     0xfdb,0x2                                                                                       
-
 
1434
0006c0   f002                                                                                                               
-
 
1435
0006c2   0ef3     MOVLW     0xf3                                                                                            
-
 
1436
0006c4   cfdb     MOVFF     0xfdb,0x3                                                                                       
-
 
1437
0006c6   f003                                                                                                               
-
 
1438
0006c8   0e08     MOVLW     0x8                                                                                             
-
 
1439
0006ca   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
1440
0006cc   3203     RRCF      0x3,0x1,0x0                                                                                     
-
 
1441
0006ce   3202     RRCF      0x2,0x1,0x0                                                                                     
-
 
1442
0006d0   3201     RRCF      0x1,0x1,0x0                                                                                     
-
 
1443
0006d2   3200     RRCF      0x0,0x1,0x0                                                                                     
-
 
1444
0006d4   06e8     DECF      0xe8,0x1,0x0                                                                                    
-
 
1445
0006d6   e1f9     BNZ       0x6ca                                                                                           
-
 
1446
0006d8   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
1447
0006da   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
1448
0006dc   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1449
0006de   f004                                                                                                               
-
 
1450
0006e0   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1451
0006e2   0ef0     MOVLW     0xf0           	uartPutc((BYTE)(cm.ident>>16));                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1452
0006e4   cfdb     MOVFF     0xfdb,0x0                                                                                       
-
 
1453
0006e6   f000                                                                                                               
-
 
1454
0006e8   0ef1     MOVLW     0xf1                                                                                            
-
 
1455
0006ea   cfdb     MOVFF     0xfdb,0x1                                                                                       
-
 
1456
0006ec   f001                                                                                                               
-
 
1457
0006ee   0ef2     MOVLW     0xf2                                                                                            
-
 
1458
0006f0   cfdb     MOVFF     0xfdb,0x2                                                                                       
-
 
1459
0006f2   f002                                                                                                               
-
 
1460
0006f4   0ef3     MOVLW     0xf3                                                                                            
-
 
1461
0006f6   cfdb     MOVFF     0xfdb,0x3                                                                                       
-
 
1462
0006f8   f003                                                                                                               
-
 
1463
0006fa   0e10     MOVLW     0x10                                                                                            
-
 
1464
0006fc   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
1465
0006fe   3203     RRCF      0x3,0x1,0x0                                                                                     
-
 
1466
000700   3202     RRCF      0x2,0x1,0x0                                                                                     
-
 
1467
000702   3201     RRCF      0x1,0x1,0x0                                                                                     
-
 
1468
000704   3200     RRCF      0x0,0x1,0x0                                                                                     
-
 
1469
000706   06e8     DECF      0xe8,0x1,0x0                                                                                    
-
 
1470
000708   e1f9     BNZ       0x6fc                                                                                           
-
 
1471
00070a   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
1472
00070c   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
1473
00070e   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1474
000710   f004                                                                                                               
-
 
1475
000712   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1476
000714   0ef0     MOVLW     0xf0           	uartPutc((BYTE)(cm.ident>>24));                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1477
000716   cfdb     MOVFF     0xfdb,0x0                                                                                       
-
 
1478
000718   f000                                                                                                               
-
 
1479
00071a   0ef1     MOVLW     0xf1                                                                                            
-
 
1480
00071c   cfdb     MOVFF     0xfdb,0x1                                                                                       
-
 
1481
00071e   f001                                                                                                               
-
 
1482
000720   0ef2     MOVLW     0xf2                                                                                            
-
 
1483
000722   cfdb     MOVFF     0xfdb,0x2                                                                                       
-
 
1484
000724   f002                                                                                                               
-
 
1485
000726   0ef3     MOVLW     0xf3                                                                                            
-
 
1486
000728   cfdb     MOVFF     0xfdb,0x3                                                                                       
-
 
1487
00072a   f003                                                                                                               
-
 
1488
00072c   0e18     MOVLW     0x18                                                                                            
-
 
1489
00072e   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
1490
000730   3203     RRCF      0x3,0x1,0x0                                                                                     
-
 
1491
000732   3202     RRCF      0x2,0x1,0x0                                                                                     
-
 
1492
000734   3201     RRCF      0x1,0x1,0x0                                                                                     
-
 
1493
000736   3200     RRCF      0x0,0x1,0x0                                                                                     
-
 
1494
000738   06e8     DECF      0xe8,0x1,0x0                                                                                    
-
 
1495
00073a   e1f9     BNZ       0x72e                                                                                           
-
 
1496
00073c   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
1497
00073e   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
1498
000740   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1499
000742   f004                                                                                                               
-
 
1500
000744   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1501
000746   0ef4     MOVLW     0xf4           	uartPutc(cm.extended);                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1502
000748   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
-
 
1503
00074a   ffe6                                                                                                               
-
 
1504
00074c   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1505
00074e   f004                                                                                                               
-
 
1506
000750   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1507
000752   0ef5     MOVLW     0xf5           	uartPutc(cm.remote_request);                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1508
000754   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
-
 
1509
000756   ffe6                                                                                                               
-
 
1510
000758   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1511
00075a   f004                                                                                                               
-
 
1512
00075c   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1513
00075e   0ef6     MOVLW     0xf6           	uartPutc(cm.data_length);                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1514
000760   cfdb     MOVFF     0xfdb,0xfe6                                                                                     
-
 
1515
000762   ffe6                                                                                                               
-
 
1516
000764   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1517
000766   f004                                                                                                               
-
 
1518
000768   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1519
00076a   6ade     CLRF      0xde,0x0       	for(i=0;i<8;i++) uartPutc(cm.data[i]);                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1520
00076c   6add     CLRF      0xdd,0x0                                                                                        
-
 
1521
00076e   cfde     MOVFF     0xfde,0x0                                                                                       
-
 
1522
000770   f000                                                                                                               
-
 
1523
000772   cfdd     MOVFF     0xfdd,0x1                                                                                       
-
 
1524
000774   f001                                                                                                               
-
 
1525
000776   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
1526
000778   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
1527
00077a   e604     BN        0x784                                                                                           
-
 
1528
00077c   0e08     MOVLW     0x8                                                                                             
-
 
1529
00077e   5c00     SUBWF     0x0,0x0,0x0                                                                                     
-
 
1530
000780   0e00     MOVLW     0x0                                                                                             
-
 
1531
000782   5801     SUBWFB    0x1,0x0,0x0                                                                                     
-
 
1532
000784   e216     BC        0x7b2                                                                                           
-
 
1533
000786   50d9     MOVF      0xd9,0x0,0x0                                                                                    
-
 
1534
000788   0ff7     ADDLW     0xf7                                                                                            
-
 
1535
00078a   6e00     MOVWF     0x0,0x0                                                                                         
-
 
1536
00078c   0eff     MOVLW     0xff                                                                                            
-
 
1537
00078e   20da     ADDWFC    0xda,0x0,0x0                                                                                    
-
 
1538
000790   6e01     MOVWF     0x1,0x0                                                                                         
-
 
1539
000792   50de     MOVF      0xde,0x0,0x0                                                                                    
-
 
1540
000794   2400     ADDWF     0x0,0x0,0x0                                                                                     
-
 
1541
000796   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
1542
000798   50dd     MOVF      0xdd,0x0,0x0                                                                                    
-
 
1543
00079a   2001     ADDWFC    0x1,0x0,0x0                                                                                     
-
 
1544
00079c   6eea     MOVWF     0xea,0x0                                                                                        
-
 
1545
00079e   50ef     MOVF      0xef,0x0,0x0                                                                                    
-
 
1546
0007a0   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
1547
0007a2   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1548
0007a4   f004                                                                                                               
-
 
1549
0007a6   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1550
0007a8   2adf     INCF      0xdf,0x1,0x0                                                                                    
-
 
1551
0007aa   0e01     MOVLW     0x1                                                                                             
-
 
1552
0007ac   e301     BNC       0x7b0                                                                                           
-
 
1553
0007ae   2adb     INCF      0xdb,0x1,0x0                                                                                    
-
 
1554
0007b0   d7de     BRA       0x76e                                                                                           
-
 
1555
0007b2   0efa     MOVLW     0xfa           	uartPutc(UART_END_BYTE);                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1556
0007b4   6ee6     MOVWF     0xe6,0x0                                                                                        
-
 
1557
0007b6   ecee     CALL      0x9dc,0x0                                                                                       
-
 
1558
0007b8   f004                                                                                                               
-
 
1559
0007ba   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1560
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1561
0007bc   0e02     MOVLW     0x2            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1562
0007be   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
-
 
1563
0007c0   e202     BC        0x7c6                                                                                           
-
 
1564
0007c2   6ae1     CLRF      0xe1,0x0                                                                                        
-
 
1565
0007c4   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1566
0007c6   6ee1     MOVWF     0xe1,0x0                                                                                        
-
 
1567
0007c8   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1568
0007ca   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
-
 
1569
0007cc   ffd9                                                                                                               
-
 
1570
0007ce   0012     RETURN    0x0                                                                                             
-
 
1571
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1572
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1573
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1574
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1575
                                           *	Function: uartParse                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1576
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1577
                                           *	Input:	Received uart message                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1578
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1579
                                           *	Pre-conditions: uartInit and received byte.                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1580
                                           *	Affects: Sensors/actuators/etc. See code.                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1581
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1582
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1583
                                           #ifdef USE_UART                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1584
0007d0   cfd9     MOVFF     0xfd9,0xfe6    void uartParse(BYTE c)                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1585
0007d2   ffe6                                                                                                               
-
 
1586
0007d4   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
-
 
1587
0007d6   ffd9                                                                                                               
-
 
1588
0007d8   0e12     MOVLW     0x12                                                                                            
-
 
1589
0007da   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
-
 
1590
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1591
                                           	BYTE i;                                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1592
0007dc   0e01     MOVLW     0x1            	unsigned int wait = 0;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1593
0007de   6adb     CLRF      0xdb,0x0                                                                                        
-
 
1594
0007e0   0e02     MOVLW     0x2                                                                                             
-
 
1595
0007e2   6adb     CLRF      0xdb,0x0                                                                                        
-
 
1596
                                           	CAN_MESSAGE cm;	                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1597
                                           	static BOOL waitingMessage = FALSE;                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1598
                                           	static TICK timeout=0;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1599
                                           	static BYTE count=0;                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1600
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1601
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1602
0007e4   0100     MOVLB     0x0            	if (waitingMessage==TRUE && (tickGet()-timeout)>TICK_SECOND/20)                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1603
0007e6   056e     DECF      0x6e,0x0,0x1                                                                                    
-
 
1604
0007e8   e11a     BNZ       0x81e                                                                                           
-
 
1605
0007ea   ecbf     CALL      0xb7e,0x0                                                                                       
-
 
1606
0007ec   f005                                                                                                               
-
 
1607
0007ee   0100     MOVLB     0x0                                                                                             
-
 
1608
0007f0   516f     MOVF      0x6f,0x0,0x1                                                                                    
-
 
1609
0007f2   5c18     SUBWF     0x18,0x0,0x0                                                                                    
-
 
1610
0007f4   6e00     MOVWF     0x0,0x0                                                                                         
-
 
1611
0007f6   5170     MOVF      0x70,0x0,0x1                                                                                    
-
 
1612
0007f8   5819     SUBWFB    0x19,0x0,0x0                                                                                    
-
 
1613
0007fa   6e01     MOVWF     0x1,0x0                                                                                         
-
 
1614
0007fc   5171     MOVF      0x71,0x0,0x1                                                                                    
-
 
1615
0007fe   581a     SUBWFB    0x1a,0x0,0x0                                                                                    
-
 
1616
000800   6e02     MOVWF     0x2,0x0                                                                                         
-
 
1617
000802   5172     MOVF      0x72,0x0,0x1                                                                                    
-
 
1618
000804   581b     SUBWFB    0x1b,0x0,0x0                                                                                    
-
 
1619
000806   6e03     MOVWF     0x3,0x0                                                                                         
-
 
1620
000808   80d8     BSF       0xd8,0x0,0x0                                                                                    
-
 
1621
00080a   0e05     MOVLW     0x5                                                                                             
-
 
1622
00080c   5400     SUBFWB    0x0,0x0,0x0                                                                                     
-
 
1623
00080e   0e00     MOVLW     0x0                                                                                             
-
 
1624
000810   5401     SUBFWB    0x1,0x0,0x0                                                                                     
-
 
1625
000812   0e00     MOVLW     0x0                                                                                             
-
 
1626
000814   5402     SUBFWB    0x2,0x0,0x0                                                                                     
-
 
1627
000816   0e00     MOVLW     0x0                                                                                             
-
 
1628
000818   5403     SUBFWB    0x3,0x0,0x0                                                                                     
-
 
1629
00081a   e201     BC        0x81e                                                                                           
-
 
1630
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1631
00081c   6b6e     CLRF      0x6e,0x1       		waitingMessage=FALSE;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1632
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1633
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1634
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1635
00081e   056e     DECF      0x6e,0x0,0x1   	if (waitingMessage==TRUE)                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1636
000820   e001     BZ        0x824                                                                                           
-
 
1637
000822   d0a4     BRA       0x96c                                                                                           
-
 
1638
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1639
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1640
000824   ecbf     CALL      0xb7e,0x0      		timeout=tickGet();                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1641
000826   f005                                                                                                               
-
 
1642
000828   c018     MOVFF     0x18,0x6f                                                                                       
-
 
1643
00082a   f06f                                                                                                               
-
 
1644
00082c   c019     MOVFF     0x19,0x70                                                                                       
-
 
1645
00082e   f070                                                                                                               
-
 
1646
000830   c01a     MOVFF     0x1a,0x71                                                                                       
-
 
1647
000832   f071                                                                                                               
-
 
1648
000834   c01b     MOVFF     0x1b,0x72                                                                                       
-
 
1649
000836   f072                                                                                                               
-
 
1650
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1651
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1652
                                           		// UART END                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1653
000838   0e0f     MOVLW     0xf            		if(count>=15)                                                                  F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1654
00083a   0100     MOVLB     0x0                                                                                             
-
 
1655
00083c   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1656
00083e   e33a     BNC       0x8b4                                                                                           
-
 
1657
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1658
000840   0efe     MOVLW     0xfe           			if (c==UART_END_BYTE)                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1659
000842   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
1660
000844   6e00     MOVWF     0x0,0x0                                                                                         
-
 
1661
000846   6a01     CLRF      0x1,0x0                                                                                         
-
 
1662
000848   0efa     MOVLW     0xfa                                                                                            
-
 
1663
00084a   1800     XORWF     0x0,0x0,0x0                                                                                     
-
 
1664
00084c   e101     BNZ       0x850                                                                                           
-
 
1665
00084e   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
1666
000850   e12e     BNZ       0x8ae                                                                                           
-
 
1667
                                           			{                                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1668
000852   7282     BTG       0x82,0x1,0x0   				LED0_IO=~LED0_IO;                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1669
000854   6ae6     CLRF      0xe6,0x0       				while(!canSendMessage(cm,PRIO_LOWEST));                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1670
000856   50d9     MOVF      0xd9,0x0,0x0                                                                                    
-
 
1671
000858   0f03     ADDLW     0x3                                                                                             
-
 
1672
00085a   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
1673
00085c   cfda     MOVFF     0xfda,0xfea                                                                                     
-
 
1674
00085e   ffea                                                                                                               
-
 
1675
000860   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1676
000862   ffe6                                                                                                               
-
 
1677
000864   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1678
000866   ffe6                                                                                                               
-
 
1679
000868   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1680
00086a   ffe6                                                                                                               
-
 
1681
00086c   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1682
00086e   ffe6                                                                                                               
-
 
1683
000870   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1684
000872   ffe6                                                                                                               
-
 
1685
000874   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1686
000876   ffe6                                                                                                               
-
 
1687
000878   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1688
00087a   ffe6                                                                                                               
-
 
1689
00087c   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1690
00087e   ffe6                                                                                                               
-
 
1691
000880   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1692
000882   ffe6                                                                                                               
-
 
1693
000884   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1694
000886   ffe6                                                                                                               
-
 
1695
000888   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1696
00088a   ffe6                                                                                                               
-
 
1697
00088c   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1698
00088e   ffe6                                                                                                               
-
 
1699
000890   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1700
000892   ffe6                                                                                                               
-
 
1701
000894   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1702
000896   ffe6                                                                                                               
-
 
1703
000898   cfee     MOVFF     0xfee,0xfe6                                                                                     
-
 
1704
00089a   ffe6                                                                                                               
-
 
1705
00089c   ecc6     CALL      0x38c,0x0                                                                                       
-
 
1706
00089e   f001                                                                                                               
-
 
1707
0008a0   6e00     MOVWF     0x0,0x0                                                                                         
-
 
1708
0008a2   0e10     MOVLW     0x10                                                                                            
-
 
1709
0008a4   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
-
 
1710
0008a6   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
1711
0008a8   0900     IORLW     0x0                                                                                             
-
 
1712
0008aa   e101     BNZ       0x8ae                                                                                           
-
 
1713
0008ac   d7d3     BRA       0x854                                                                                           
-
 
1714
                                           			}                                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1715
0008ae   0100     MOVLB     0x0            			waitingMessage=FALSE;                                                         F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1716
0008b0   6b6e     CLRF      0x6e,0x1                                                                                        
-
 
1717
0008b2   d07e     BRA       0x9b0          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1718
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1719
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1720
                                           		// data                                                                        F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1721
0008b4   0e07     MOVLW     0x7            		if(count>=7)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1722
0008b6   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1723
0008b8   e313     BNC       0x8e0                                                                                           
-
 
1724
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1725
0008ba   50d9     MOVF      0xd9,0x0,0x0   			cm.data[count-7]=c;                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1726
0008bc   0f0a     ADDLW     0xa                                                                                             
-
 
1727
0008be   6e00     MOVWF     0x0,0x0                                                                                         
-
 
1728
0008c0   cfda     MOVFF     0xfda,0x1                                                                                       
-
 
1729
0008c2   f001                                                                                                               
-
 
1730
0008c4   0e07     MOVLW     0x7                                                                                             
-
 
1731
0008c6   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1732
0008c8   010f     MOVLB     0xf                                                                                             
-
 
1733
0008ca   2400     ADDWF     0x0,0x0,0x0                                                                                     
-
 
1734
0008cc   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
1735
0008ce   0e00     MOVLW     0x0                                                                                             
-
 
1736
0008d0   2001     ADDWFC    0x1,0x0,0x0                                                                                     
-
 
1737
0008d2   6eea     MOVWF     0xea,0x0                                                                                        
-
 
1738
0008d4   0efe     MOVLW     0xfe                                                                                            
-
 
1739
0008d6   cfdb     MOVFF     0xfdb,0xfef                                                                                     
-
 
1740
0008d8   ffef                                                                                                               
-
 
1741
0008da   0100     MOVLB     0x0            			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1742
0008dc   2b73     INCF      0x73,0x1,0x1                                                                                    
-
 
1743
0008de   d068     BRA       0x9b0          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1744
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1745
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1746
                                           		// data length                                                                 F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1747
0008e0   0e06     MOVLW     0x6            		if(count>=6)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1748
0008e2   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1749
0008e4   e308     BNC       0x8f6                                                                                           
-
 
1750
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1751
0008e6   0efe     MOVLW     0xfe           			cm.data_length=c;                                                             F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1752
0008e8   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
1753
0008ea   6ee7     MOVWF     0xe7,0x0                                                                                        
-
 
1754
0008ec   0e09     MOVLW     0x9                                                                                             
-
 
1755
0008ee   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
-
 
1756
0008f0   ffdb                                                                                                               
-
 
1757
0008f2   2b73     INCF      0x73,0x1,0x1   			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1758
0008f4   d05d     BRA       0x9b0          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1759
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1760
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1761
                                           		// remote request                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1762
0008f6   0e05     MOVLW     0x5            		if(count>=5)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1763
0008f8   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1764
0008fa   e308     BNC       0x90c                                                                                           
-
 
1765
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1766
0008fc   0efe     MOVLW     0xfe           			cm.remote_request=c;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1767
0008fe   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
1768
000900   6ee7     MOVWF     0xe7,0x0                                                                                        
-
 
1769
000902   0e08     MOVLW     0x8                                                                                             
-
 
1770
000904   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
-
 
1771
000906   ffdb                                                                                                               
-
 
1772
000908   2b73     INCF      0x73,0x1,0x1   			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1773
00090a   d052     BRA       0x9b0          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1774
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1775
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1776
                                           		// extended                                                                    F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1777
00090c   0e04     MOVLW     0x4            		if(count>=4)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1778
00090e   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1779
000910   e308     BNC       0x922                                                                                           
-
 
1780
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1781
000912   0efe     MOVLW     0xfe           			cm.extended=c;                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1782
000914   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
1783
000916   6ee7     MOVWF     0xe7,0x0                                                                                        
-
 
1784
000918   0e07     MOVLW     0x7                                                                                             
-
 
1785
00091a   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
-
 
1786
00091c   ffdb                                                                                                               
-
 
1787
00091e   2b73     INCF      0x73,0x1,0x1   			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1788
000920   d047     BRA       0x9b0          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1789
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1790
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1791
                                           		// ident                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1792
000922   0e00     MOVLW     0x0            		if(count>=0)                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1793
000924   5d73     SUBWF     0x73,0x0,0x1                                                                                    
-
 
1794
000926   e322     BNC       0x96c                                                                                           
-
 
1795
                                           		{                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1796
000928   0efe     MOVLW     0xfe           			cm.ident+=((DWORD)c<<(count*8));                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1797
00092a   cfdb     MOVFF     0xfdb,0x0                                                                                       
-
 
1798
00092c   f000                                                                                                               
-
 
1799
00092e   6a01     CLRF      0x1,0x0                                                                                         
-
 
1800
000930   6a02     CLRF      0x2,0x0                                                                                         
-
 
1801
000932   6a03     CLRF      0x3,0x0                                                                                         
-
 
1802
000934   0e08     MOVLW     0x8                                                                                             
-
 
1803
000936   0373     MULWF     0x73,0x1                                                                                        
-
 
1804
000938   50f3     MOVF      0xf3,0x0,0x0                                                                                    
-
 
1805
00093a   0b1f     ANDLW     0x1f                                                                                            
-
 
1806
00093c   e007     BZ        0x94c                                                                                           
-
 
1807
00093e   90d8     BCF       0xd8,0x0,0x0                                                                                    
-
 
1808
000940   3600     RLCF      0x0,0x1,0x0                                                                                     
-
 
1809
000942   3601     RLCF      0x1,0x1,0x0                                                                                     
-
 
1810
000944   3602     RLCF      0x2,0x1,0x0                                                                                     
-
 
1811
000946   3603     RLCF      0x3,0x1,0x0                                                                                     
-
 
1812
000948   06e8     DECF      0xe8,0x1,0x0                                                                                    
-
 
1813
00094a   e1f9     BNZ       0x93e                                                                                           
-
 
1814
00094c   50d9     MOVF      0xd9,0x0,0x0                                                                                    
-
 
1815
00094e   0f03     ADDLW     0x3                                                                                             
-
 
1816
000950   6ee9     MOVWF     0xe9,0x0                                                                                        
-
 
1817
000952   cfda     MOVFF     0xfda,0xfea                                                                                     
-
 
1818
000954   ffea                                                                                                               
-
 
1819
000956   5000     MOVF      0x0,0x0,0x0                                                                                     
-
 
1820
000958   26ee     ADDWF     0xee,0x1,0x0                                                                                    
-
 
1821
00095a   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
1822
00095c   22ee     ADDWFC    0xee,0x1,0x0                                                                                    
-
 
1823
00095e   5002     MOVF      0x2,0x0,0x0                                                                                     
-
 
1824
000960   22ee     ADDWFC    0xee,0x1,0x0                                                                                    
-
 
1825
000962   5003     MOVF      0x3,0x0,0x0                                                                                     
-
 
1826
000964   22ee     ADDWFC    0xee,0x1,0x0                                                                                    
-
 
1827
000966   0100     MOVLB     0x0            			count++;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1828
000968   2b73     INCF      0x73,0x1,0x1                                                                                    
-
 
1829
00096a   d022     BRA       0x9b0          			return;                                                                       F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1830
                                           		}                                                                              F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1831
                                           	                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1832
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1833
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1834
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1835
00096c   0efe     MOVLW     0xfe           	if (c==UART_START_BYTE && waitingMessage==FALSE)                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1836
00096e   50db     MOVF      0xdb,0x0,0x0                                                                                    
-
 
1837
000970   6e00     MOVWF     0x0,0x0                                                                                         
-
 
1838
000972   6a01     CLRF      0x1,0x0                                                                                         
-
 
1839
000974   0efd     MOVLW     0xfd                                                                                            
-
 
1840
000976   1800     XORWF     0x0,0x0,0x0                                                                                     
-
 
1841
000978   e101     BNZ       0x97c                                                                                           
-
 
1842
00097a   5001     MOVF      0x1,0x0,0x0                                                                                     
-
 
1843
00097c   e119     BNZ       0x9b0                                                                                           
-
 
1844
00097e   516e     MOVF      0x6e,0x0,0x1                                                                                    
-
 
1845
000980   e117     BNZ       0x9b0                                                                                           
-
 
1846
                                           	{                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1847
000982   0e01     MOVLW     0x1            			waitingMessage=TRUE;                                                          F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1848
000984   6f6e     MOVWF     0x6e,0x1                                                                                        
-
 
1849
000986   ecbf     CALL      0xb7e,0x0      			timeout=tickGet();                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1850
000988   f005                                                                                                               
-
 
1851
00098a   c018     MOVFF     0x18,0x6f                                                                                       
-
 
1852
00098c   f06f                                                                                                               
-
 
1853
00098e   c019     MOVFF     0x19,0x70                                                                                       
-
 
1854
000990   f070                                                                                                               
-
 
1855
000992   c01a     MOVFF     0x1a,0x71                                                                                       
-
 
1856
000994   f071                                                                                                               
-
 
1857
000996   c01b     MOVFF     0x1b,0x72                                                                                       
-
 
1858
000998   f072                                                                                                               
-
 
1859
00099a   0100     MOVLB     0x0            			count=0;                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1860
00099c   6b73     CLRF      0x73,0x1                                                                                        
-
 
1861
00099e   0e03     MOVLW     0x3            			cm.ident=0;                                                                   F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1862
0009a0   6adb     CLRF      0xdb,0x0                                                                                        
-
 
1863
0009a2   0e04     MOVLW     0x4                                                                                             
-
 
1864
0009a4   6adb     CLRF      0xdb,0x0                                                                                        
-
 
1865
0009a6   0e05     MOVLW     0x5                                                                                             
-
 
1866
0009a8   6adb     CLRF      0xdb,0x0                                                                                        
-
 
1867
0009aa   0e06     MOVLW     0x6                                                                                             
-
 
1868
0009ac   6adb     CLRF      0xdb,0x0                                                                                        
-
 
1869
0009ae   d000     BRA       0x9b0          			return;	                                                                      F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1870
                                           	}                                                                               F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1871
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1872
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1873
0009b0   0e12     MOVLW     0x12           }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Main.c
-
 
1874
0009b2   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
-
 
1875
0009b4   e202     BC        0x9ba                                                                                           
-
 
1876
0009b6   6ae1     CLRF      0xe1,0x0                                                                                        
-
 
1877
0009b8   52e5     MOVF      0xe5,0x1,0x0                                                                                    
-
 
1878
0009ba   6ee1     MOVWF     0xe1,0x0                                                                                        
-
 
1879
0009bc   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1803
0009be   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1880
0009be   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1804
0009c0   ffd9                                                                                                               
1881
0009c0   ffd9                                                                                                               
1805
0009c2   0012     RETURN    0x0                                                                                             
1882
0009c2   0012     RETURN    0x0                                                                                             
1806
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1883
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Main.c
1807
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1884
                                           /*********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1808
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1885
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1809
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1886
                                            *                  Ticker service                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1810
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1887
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1811
                                           *	Function: uartBusy                                                             F:\MCP\projects\CAN\Source\uart.c
1888
                                            *********************************************************************           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1812
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1889
                                            * FileName:        Tick.c                                                       F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1813
                                           *	Input:	none.                                                                   F:\MCP\projects\CAN\Source\uart.c
1890
                                            *                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1814
                                           *	Output: If usart busy or not.                                                  F:\MCP\projects\CAN\Source\uart.c
1891
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1815
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1892
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1816
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1893
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1817
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1894
                                            ********************************************************************/           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1818
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1895
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1819
                                           char uartBusy(void)                                                              F:\MCP\projects\CAN\Source\uart.c
1896
                                           #define TICK_INCLUDE                                                             F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1820
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1897
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1821
0009c4   50ac     MOVF      0xac,0x0,0x0   	return !TXSTAbits.TRMT;                                                         F:\MCP\projects\CAN\Source\uart.c
1898
                                           #include <Tick.h>;                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1822
0009c6   0b02     ANDLW     0x2                                                                                             
1899
                                           #include <Compiler.h>                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1823
0009c8   0a02     XORLW     0x2                                                                                             
1900
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1824
0009ca   e001     BZ        0x9ce                                                                                           
1901
                                           #define TICK_TEMP_VALUE_1 ((INSTR_FREQ) / (TICKS_PER_SECOND * TICK_PRESCALE_VALUE)) F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1825
0009cc   0e01     MOVLW     0x1                                                                                             
1902
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1826
0009ce   d000     BRA       0x9d0                                                                                           
1903
                                           #if TICK_TEMP_VALUE_1 > 60000                                                    F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1827
0009d0   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\uart.c
1904
                                           #error TICK_PER_SECOND value cannot be programmed with current CLOCK_FREQ        F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1828
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1905
                                           #error Either lower TICK_PER_SECOND or manually configure the Timer              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1829
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1906
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1830
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1907
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1831
                                           *	Function: uartGet                                                              F:\MCP\projects\CAN\Source\uart.c
1908
                                           #define TICK_TEMP_VALUE         (65535 - TICK_TEMP_VALUE_1)                      F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1832
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1909
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1833
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\uart.c
1910
                                           #define TICK_COUNTER_HIGH       ((TICK_TEMP_VALUE >> 8) & 0xff)                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1834
                                           *	Output: Byte read                                                              F:\MCP\projects\CAN\Source\uart.c
1911
                                           #define TICK_COUNTER_LOW        (TICK_TEMP_VALUE & 0xff)                         F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1835
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1912
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1836
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1913
                                           #if (TICK_PRESCALE_VALUE == 2)                                                   F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1837
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\Source\uart.c
1914
                                               #define TIMER_PRESCALE  (0)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1838
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1915
                                           #elif ( TICK_PRESCALE_VALUE == 4 )                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1839
                                           BYTE uartGet(void)                                                               F:\MCP\projects\CAN\Source\uart.c
1916
                                               #define TIMER_PRESCALE  (1)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1840
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1917
                                           #elif ( TICK_PRESCALE_VALUE == 8 )                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1841
                                           	// Return the received data                                                     F:\MCP\projects\CAN\Source\uart.c
1918
                                               #define TIMER_PRESCALE  (2)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1842
0009d2   50ae     MOVF      0xae,0x0,0x0   	return RCREG;	                                                                  F:\MCP\projects\CAN\Source\uart.c
1919
                                           #elif ( TICK_PRESCALE_VALUE == 16 )                                              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1843
0009d4   d000     BRA       0x9d6                                                                                           
1920
                                               #define TIMER_PRESCALE  (3)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1844
0009d6   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\uart.c
1921
                                           #elif ( TICK_PRESCALE_VALUE == 32 )                                              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1845
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1922
                                               #define TIMER_PRESCALE  (4)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1846
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1923
                                           #elif ( TICK_PRESCALE_VALUE == 64 )                                              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1847
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1924
                                               #define TIMER_PRESCALE  (5)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1848
                                           *	Function: uartISR                                                              F:\MCP\projects\CAN\Source\uart.c
1925
                                           #elif ( TICK_PRESCALE_VALUE == 128 )                                             F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1849
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1926
                                               #define TIMER_PRESCALE  (6)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1850
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\uart.c
1927
                                           #elif ( TICK_PRESCALE_VALUE == 256 )                                             F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1851
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\uart.c
1928
                                               #define TIMER_PRESCALE  (7)                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1852
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1929
                                           #else                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1853
                                           *	Affects: call to uartParse                                                     F:\MCP\projects\CAN\Source\uart.c
1930
                                               #error Invalid TICK_PRESCALE_VALUE specified.                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1854
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\Source\uart.c
1931
                                           #endif                                                                           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1855
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1932
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1856
                                           void uartISR(void)                                                               F:\MCP\projects\CAN\Source\uart.c
1933
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1857
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1934
                                           TICK TickCount = 0;	// 10ms/unit                                                 F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1858
0009d8   509e     MOVF      0x9e,0x0,0x0   	if (PIR1bits.RCIF==1 && PIE1bits.RCIE==1)                                       F:\MCP\projects\CAN\Source\uart.c
1935
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1859
0009da   0b20     ANDLW     0x20                                                                                            
1936
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1860
0009dc   e00d     BZ        0x9f8                                                                                           
1937
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1861
0009de   509d     MOVF      0x9d,0x0,0x0                                                                                    
1938
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1862
0009e0   0b20     ANDLW     0x20                                                                                            
1939
                                           *	Function: TickInit                                                             F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1863
0009e2   e00a     BZ        0x9f8                                                                                           
1940
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1864
                                           	{                                                                               F:\MCP\projects\CAN\Source\uart.c
1941
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1865
0009e4   a2ab     BTFSS     0xab,0x1,0x0   		if (RCSTAbits.OERR) { RCSTAbits.CREN=0; RCSTAbits.CREN=1; }                    F:\MCP\projects\CAN\Source\uart.c
1942
                                           *	Output: Tick manager is initialized.                                           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1866
0009e6   d002     BRA       0x9ec                                                                                           
1943
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1867
0009e8   98ab     BCF       0xab,0x4,0x0                                                                                    
1944
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1868
0009ea   88ab     BSF       0xab,0x4,0x0                                                                                    
1945
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1869
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1946
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1870
0009ec   dff2     RCALL     0x9d2          		uartParse(uartGet());                                                          F:\MCP\projects\CAN\Source\uart.c
1947
                                           #define PERIOD (INSTR_FREQ/256/1000)*TICK_PERIOD_MS                              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1871
0009ee   6ee6     MOVWF     0xe6,0x0                                                                                        
1948
                                           void tickInit(void)                                                              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1872
0009f0   ec98     CALL      0x730,0x0                                                                                       
1949
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1873
0009f2   f003                                                                                                               
1950
                                               // Start the timer.                                                          F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1874
0009f4   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1951
000b6a   0e79     MOVLW     0x79               TMR0L = TICK_COUNTER_LOW;                                                    F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1875
0009f6   9a9e     BCF       0x9e,0x5,0x0   		PIR1bits.RCIF=0;                                                               F:\MCP\projects\CAN\Source\uart.c
1952
000b6c   6ed6     MOVWF     0xd6,0x0                                                                                        
1876
                                           	}                                                                               F:\MCP\projects\CAN\Source\uart.c
1953
000b6e   0efe     MOVLW     0xfe               TMR0H = TICK_COUNTER_HIGH;                                                   F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1877
0009f8   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\uart.c
1954
000b70   6ed7     MOVWF     0xd7,0x0                                                                                        
1878
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1955
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1879
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1956
                                               // 16-BIT, internal timer, PSA set to 1:256                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1880
                                           /*                                                                               F:\MCP\projects\CAN\Source\uart.c
1957
000b72   0e07     MOVLW     0x7                T0CON = 0b00000000 | TIMER_PRESCALE;                                         F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1881
                                           *	Function: uartDataRedy                                                         F:\MCP\projects\CAN\Source\uart.c
1958
000b74   6ed5     MOVWF     0xd5,0x0                                                                                        
1882
                                           *                                                                                F:\MCP\projects\CAN\Source\uart.c
1959
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1883
                                           *	Input:	none.                                                                   F:\MCP\projects\CAN\Source\uart.c
1960
                                               // Start the timer.                                                          F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1884
                                           *	Output: If usart data are redy to be read.                                     F:\MCP\projects\CAN\Source\uart.c
1961
000b76   8ed5     BSF       0xd5,0x7,0x0       T0CONbits.TMR0ON = 1;                                                        F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1885
                                           *	Pre-conditions: call to uartInit()                                             F:\MCP\projects\CAN\Source\uart.c
1962
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1886
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1963
000b78   84f2     BSF       0xf2,0x2,0x0       INTCONbits.TMR0IF = 1;                                                       F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1887
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\uart.c
1964
000b7a   8af2     BSF       0xf2,0x5,0x0       INTCONbits.TMR0IE = 1;                                                       F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1888
                                           */                                                                               F:\MCP\projects\CAN\Source\uart.c
1965
000b7c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1889
                                           char uartDataRedy(void)                                                          F:\MCP\projects\CAN\Source\uart.c
1966
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1890
                                           {                                                                                F:\MCP\projects\CAN\Source\uart.c
1967
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1891
0009fa   a2ab     BTFSS     0xab,0x1,0x0   	if(RCSTAbits.OERR)                                                              F:\MCP\projects\CAN\Source\uart.c
1968
                                           *	Function: TickGet                                                              F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1892
0009fc   d002     BRA       0xa02                                                                                           
1969
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1893
                                           	{                                                                               F:\MCP\projects\CAN\Source\uart.c
1970
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1894
0009fe   98ab     BCF       0xab,0x4,0x0   		RCSTAbits.CREN = 0;                                                            F:\MCP\projects\CAN\Source\uart.c
1971
                                           *	Output: Current tick value is given, 1 tick represents approximately 10ms      F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1895
000a00   88ab     BSF       0xab,0x4,0x0   		RCSTAbits.CREN = 1;                                                            F:\MCP\projects\CAN\Source\uart.c
1972
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1896
                                           	}                                                                               F:\MCP\projects\CAN\Source\uart.c
1973
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1897
000a02   509e     MOVF      0x9e,0x0,0x0     return PIR1bits.RCIF;                                                          F:\MCP\projects\CAN\Source\uart.c
1974
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1898
000a04   0b20     ANDLW     0x20                                                                                            
1975
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1899
000a06   e001     BZ        0xa0a                                                                                           
1976
                                           TICK tickGet(void)                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1900
000a08   0e01     MOVLW     0x1                                                                                             
1977
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1901
000a0a   d000     BRA       0xa0c                                                                                           
1978
000b7e   c074     MOVFF     0x74,0x18          return TickCount;                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
1902
000a0c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\uart.c
1979
000b80   f018                                                                                                               
1903
                                                                                                                            F:\MCP\projects\CAN\Source\uart.c
1980
000b82   c075     MOVFF     0x75,0x19                                                                                       
1904
                                           #endif                                                                           F:\MCP\projects\CAN\Source\uart.c
1981
000b84   f019                                                                                                               
-
 
1982
000b86   c076     MOVFF     0x76,0x1a                                                                                       
-
 
1983
000b88   f01a                                                                                                               
-
 
1984
000b8a   c077     MOVFF     0x77,0x1b                                                                                       
-
 
1985
000b8c   f01b                                                                                                               
-
 
1986
000b8e   d000     BRA       0xb90                                                                                           
-
 
1987
000b90   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1988
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1989
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1990
                                           /*                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1991
                                           *	Function: tickUpdate                                                           F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1992
                                           *                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1993
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1994
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1995
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1996
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1997
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1998
                                           */                                                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
1999
                                           void tickUpdate(void)                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2000
                                           {                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2001
000b92   a4f2     BTFSS     0xf2,0x2,0x0       if(INTCONbits.TMR0IF)                                                        F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2002
000b94   d00b     BRA       0xbac                                                                                           
-
 
2003
                                               {                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2004
000b96   0efe     MOVLW     0xfe                   TMR0H = TICK_COUNTER_HIGH;                                               F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2005
000b98   6ed7     MOVWF     0xd7,0x0                                                                                        
-
 
2006
000b9a   0e79     MOVLW     0x79                   TMR0L = TICK_COUNTER_LOW;                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2007
000b9c   6ed6     MOVWF     0xd6,0x0                                                                                        
-
 
2008
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2009
000b9e   0100     MOVLB     0x0                    TickCount++;                                                             F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2010
000ba0   2b74     INCF      0x74,0x1,0x1                                                                                    
-
 
2011
000ba2   0e00     MOVLW     0x0                                                                                             
-
 
2012
000ba4   2375     ADDWFC    0x75,0x1,0x1                                                                                    
-
 
2013
000ba6   2376     ADDWFC    0x76,0x1,0x1                                                                                    
-
 
2014
000ba8   2377     ADDWFC    0x77,0x1,0x1                                                                                    
-
 
2015
                                                                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2016
000baa   94f2     BCF       0xf2,0x2,0x0           INTCONbits.TMR0IF = 0;                                                   F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2017
                                               }                                                                            F:\MCP\projects\CAN\canToSerial\Source\Tick.c
-
 
2018
000bac   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canToSerial\Source\Tick.c