Subversion Repositories HomeAutomation

Rev

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

Rev 50 Rev 53
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 20:37:35 2006
3
Listing File Generated: Mon Oct 23 23:10:30 2006
4
 
4
 
5
 
5
 
6
Address  Value    Disassembly              Source                                                                           File
6
Address  Value    Disassembly              Source                                                                           File
7
-------  -------  -----------------------  -------------------------------------------------------------------------------  -----
7
-------  -------  -----------------------  -------------------------------------------------------------------------------  -----
8
                                           /*********************************************************************           F:\MCP\projects\CAN\canNode\Source\Main.c
8
                                           /*********************************************************************           F:\MCP\projects\CAN\canNode\Source\Main.c
Line 15... Line 15...
15
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canNode\Source\Main.c
15
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canNode\Source\Main.c
16
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canNode\Source\Main.c
16
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canNode\Source\Main.c
17
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canNode\Source\Main.c
17
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canNode\Source\Main.c
18
                                            ********************************************************************/           F:\MCP\projects\CAN\canNode\Source\Main.c
18
                                            ********************************************************************/           F:\MCP\projects\CAN\canNode\Source\Main.c
19
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
19
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
20
                                           #include "../Include/compiler.h"                                                 F:\MCP\projects\CAN\canNode\Source\Main.c
20
                                           #include <compiler.h>                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
21
                                           #include "../Include/stackTasks.h"                                               F:\MCP\projects\CAN\canNode\Source\Main.c
21
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\canNode\Source\Main.c
22
                                           #include "../Include/Tick.h"                                                     F:\MCP\projects\CAN\canNode\Source\Main.c
22
                                           #include <Tick.h>                                                                F:\MCP\projects\CAN\canNode\Source\Main.c
23
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
23
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
24
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canNode\Source\Main.c
24
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canNode\Source\Main.c
25
                                           	#include "../Include/CAN.h"                                                     F:\MCP\projects\CAN\canNode\Source\Main.c
25
                                           	#include <CAN.h>                                                                F:\MCP\projects\CAN\canNode\Source\Main.c
26
                                           #endif                                                                           F:\MCP\projects\CAN\canNode\Source\Main.c
26
                                           #endif                                                                           F:\MCP\projects\CAN\canNode\Source\Main.c
27
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
27
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
28
                                           static void mainInit(void);                                                      F:\MCP\projects\CAN\canNode\Source\Main.c
28
                                           static void mainInit(void);                                                      F:\MCP\projects\CAN\canNode\Source\Main.c
29
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
29
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
30
0004ca   cfd9     MOVFF     0xfd9,0xfe6    void main()                                                                      F:\MCP\projects\CAN\canNode\Source\Main.c
30
0004ca   cfd9     MOVFF     0xfd9,0xfe6    void main()                                                                      F:\MCP\projects\CAN\canNode\Source\Main.c
Line 604... Line 604...
604
000868   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
604
000868   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
605
00086a   ffd9                                                                                                               
605
00086a   ffd9                                                                                                               
606
00086c   0012     RETURN    0x0                                                                                             
606
00086c   0012     RETURN    0x0                                                                                             
607
                                           #endif                                                                           F:\MCP\projects\CAN\canNode\Source\Main.c
607
                                           #endif                                                                           F:\MCP\projects\CAN\canNode\Source\Main.c
608
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
608
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Main.c
609
                                           /*********************************************************************           F:\MCP\projects\CAN\canNode\Source\CAN.c
609
                                           /*********************************************************************           F:\MCP\projects\CAN\Source\CAN.c
610
                                            *                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
610
                                            *                                                                               F:\MCP\projects\CAN\Source\CAN.c
611
                                            *                  CAN driver                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
611
                                            *                  CAN driver                                                   F:\MCP\projects\CAN\Source\CAN.c
612
                                            *                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
612
                                            *                                                                               F:\MCP\projects\CAN\Source\CAN.c
613
                                            *********************************************************************           F:\MCP\projects\CAN\canNode\Source\CAN.c
613
                                            *********************************************************************           F:\MCP\projects\CAN\Source\CAN.c
614
                                            * FileName:        CAN.c                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
614
                                            * FileName:        CAN.c                                                        F:\MCP\projects\CAN\Source\CAN.c
615
                                            *                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
615
                                            *                                                                               F:\MCP\projects\CAN\Source\CAN.c
616
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canNode\Source\CAN.c
616
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\Source\CAN.c
617
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canNode\Source\CAN.c
617
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\Source\CAN.c
618
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canNode\Source\CAN.c
618
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\Source\CAN.c
619
                                            ********************************************************************/           F:\MCP\projects\CAN\canNode\Source\CAN.c
619
                                            ********************************************************************/           F:\MCP\projects\CAN\Source\CAN.c
620
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
620
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
621
                                           #include "../Include/CANdefs.h"                                                  F:\MCP\projects\CAN\canNode\Source\CAN.c
621
                                           #include <CANdefs.h>                                                             F:\MCP\projects\CAN\Source\CAN.c
622
                                           #include "../Include/stackTasks.h"                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
622
                                           #include <stackTasks.h>                                                          F:\MCP\projects\CAN\Source\CAN.c
623
                                           #include "../Include/CAN.h"                                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
623
                                           #include <CAN.h>                                                                 F:\MCP\projects\CAN\Source\CAN.c
624
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
624
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
625
                                           static void canGetPacket(void);                                                  F:\MCP\projects\CAN\canNode\Source\CAN.c
625
                                           static void canGetPacket(void);                                                  F:\MCP\projects\CAN\Source\CAN.c
626
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
626
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
627
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
627
                                           #ifdef USE_CAN                                                                   F:\MCP\projects\CAN\Source\CAN.c
628
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
628
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
629
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
629
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
630
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
630
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
631
                                           *	Function: canInit                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
631
                                           *	Function: canInit                                                              F:\MCP\projects\CAN\Source\CAN.c
632
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
632
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
633
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
633
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\CAN.c
634
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
634
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\CAN.c
635
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
635
                                           *	Pre-conditions: none                                                           F:\MCP\projects\CAN\Source\CAN.c
636
                                           *	Affects: Changes can registers.                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
636
                                           *	Affects: Changes can registers.                                                F:\MCP\projects\CAN\Source\CAN.c
637
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
637
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\Source\CAN.c
638
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
638
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
639
                                           void canInit()                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
639
                                           void canInit()                                                                   F:\MCP\projects\CAN\Source\CAN.c
640
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
640
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
641
000044   0e80     MOVLW     0x80           	CANCON = 0x80; //request config mode                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
641
000044   0e80     MOVLW     0x80           	CANCON = 0x80; //request config mode                                            F:\MCP\projects\CAN\Source\CAN.c
642
000046   6e6f     MOVWF     0x6f,0x0                                                                                        
642
000046   6e6f     MOVWF     0x6f,0x0                                                                                        
643
000048   0ee0     MOVLW     0xe0           	while ((CANSTAT & 0xE0) != 0x80 ); //wait for config mode request               F:\MCP\projects\CAN\canNode\Source\CAN.c
643
000048   0ee0     MOVLW     0xe0           	while ((CANSTAT & 0xE0) != 0x80 ); //wait for config mode request               F:\MCP\projects\CAN\Source\CAN.c
644
00004a   146e     ANDWF     0x6e,0x0,0x0                                                                                    
644
00004a   146e     ANDWF     0x6e,0x0,0x0                                                                                    
645
00004c   0880     SUBLW     0x80                                                                                            
645
00004c   0880     SUBLW     0x80                                                                                            
646
00004e   e1fc     BNZ       0x48                                                                                            
646
00004e   e1fc     BNZ       0x48                                                                                            
647
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
647
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
648
                                           	// BAUD AND TQS                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
648
                                           	// BAUD AND TQS                                                                 F:\MCP\projects\CAN\Source\CAN.c
649
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
649
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
650
000050   6a70     CLRF      0x70,0x0       	BRGCON1=0;                                                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
650
000050   6a70     CLRF      0x70,0x0       	BRGCON1=0;                                                                      F:\MCP\projects\CAN\Source\CAN.c
651
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
651
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
652
                                           	// Sync_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
652
                                           	// Sync_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\Source\CAN.c
653
000052   9e70     BCF       0x70,0x7,0x0   	BRGCON1bits.SJW1=0;                                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
653
000052   9e70     BCF       0x70,0x7,0x0   	BRGCON1bits.SJW1=0;                                                             F:\MCP\projects\CAN\Source\CAN.c
654
000054   8c70     BSF       0x70,0x6,0x0   	BRGCON1bits.SJW0=1;                                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
654
000054   8c70     BSF       0x70,0x6,0x0   	BRGCON1bits.SJW0=1;                                                             F:\MCP\projects\CAN\Source\CAN.c
655
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
655
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
656
                                           	// Setting BRP.                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
656
                                           	// Setting BRP.                                                                 F:\MCP\projects\CAN\Source\CAN.c
657
000056   0e09     MOVLW     0x9            	BRGCON1=BRGCON1|CAN_BRP;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
657
000056   0e09     MOVLW     0x9            	BRGCON1=BRGCON1|CAN_BRP;                                                        F:\MCP\projects\CAN\Source\CAN.c
658
000058   1070     IORWF     0x70,0x0,0x0                                                                                    
658
000058   1070     IORWF     0x70,0x0,0x0                                                                                    
659
00005a   6e70     MOVWF     0x70,0x0                                                                                        
659
00005a   6e70     MOVWF     0x70,0x0                                                                                        
660
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
660
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
661
                                           	// Maximum PHEG1                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
661
                                           	// Maximum PHEG1                                                                F:\MCP\projects\CAN\Source\CAN.c
662
00005c   8e71     BSF       0x71,0x7,0x0   	BRGCON2bits.SEG2PHTS = 1;                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
662
00005c   8e71     BSF       0x71,0x7,0x0   	BRGCON2bits.SEG2PHTS = 1;                                                       F:\MCP\projects\CAN\Source\CAN.c
663
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
663
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
664
                                           	// Phase_Seg1 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
664
                                           	// Phase_Seg1 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\Source\CAN.c
665
00005e   9a71     BCF       0x71,0x5,0x0   	BRGCON2bits.SEG1PH2 = 0;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
665
00005e   9a71     BCF       0x71,0x5,0x0   	BRGCON2bits.SEG1PH2 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
666
000060   9871     BCF       0x71,0x4,0x0   	BRGCON2bits.SEG1PH1 = 0;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
666
000060   9871     BCF       0x71,0x4,0x0   	BRGCON2bits.SEG1PH1 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
667
000062   8671     BSF       0x71,0x3,0x0   	BRGCON2bits.SEG1PH0 = 1;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
667
000062   8671     BSF       0x71,0x3,0x0   	BRGCON2bits.SEG1PH0 = 1;                                                        F:\MCP\projects\CAN\Source\CAN.c
668
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
668
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
669
                                           	// Prop_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
669
                                           	// Prop_Seq = 2 x TQ = 1                                                        F:\MCP\projects\CAN\Source\CAN.c
670
000064   9471     BCF       0x71,0x2,0x0   	BRGCON2bits.PRSEG2 = 0;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
670
000064   9471     BCF       0x71,0x2,0x0   	BRGCON2bits.PRSEG2 = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
671
000066   9271     BCF       0x71,0x1,0x0   	BRGCON2bits.PRSEG1 = 0;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
671
000066   9271     BCF       0x71,0x1,0x0   	BRGCON2bits.PRSEG1 = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
672
000068   8071     BSF       0x71,0x0,0x0   	BRGCON2bits.PRSEG0 = 1;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
672
000068   8071     BSF       0x71,0x0,0x0   	BRGCON2bits.PRSEG0 = 1;                                                         F:\MCP\projects\CAN\Source\CAN.c
673
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
673
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
674
                                           	//  Enableing bus wake-up                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
674
                                           	//  Enableing bus wake-up                                                       F:\MCP\projects\CAN\Source\CAN.c
675
00006a   9e72     BCF       0x72,0x7,0x0   	BRGCON3bits.WAKDIS = 0;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
675
00006a   9e72     BCF       0x72,0x7,0x0   	BRGCON3bits.WAKDIS = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
676
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
676
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
677
                                           	// Dont use filter when wakeup                                                  F:\MCP\projects\CAN\canNode\Source\CAN.c
677
                                           	// Dont use filter when wakeup                                                  F:\MCP\projects\CAN\Source\CAN.c
678
00006c   9c72     BCF       0x72,0x6,0x0   	BRGCON3bits.WAKFIL = 0;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
678
00006c   9c72     BCF       0x72,0x6,0x0   	BRGCON3bits.WAKFIL = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
679
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
679
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
680
                                           	// Phase_Seg2 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
680
                                           	// Phase_Seg2 = 2 x TQ = 1                                                      F:\MCP\projects\CAN\Source\CAN.c
681
00006e   9472     BCF       0x72,0x2,0x0   	BRGCON3bits.SEG2PH2 = 0;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
681
00006e   9472     BCF       0x72,0x2,0x0   	BRGCON3bits.SEG2PH2 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
682
000070   9272     BCF       0x72,0x1,0x0   	BRGCON3bits.SEG2PH1 = 0;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
682
000070   9272     BCF       0x72,0x1,0x0   	BRGCON3bits.SEG2PH1 = 0;                                                        F:\MCP\projects\CAN\Source\CAN.c
683
000072   8072     BSF       0x72,0x0,0x0   	BRGCON3bits.SEG2PH0 = 1;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
683
000072   8072     BSF       0x72,0x0,0x0   	BRGCON3bits.SEG2PH0 = 1;                                                        F:\MCP\projects\CAN\Source\CAN.c
684
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
684
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
685
000074   6a77     CLRF      0x77,0x0       	ECANCON=0;                                                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
685
000074   6a77     CLRF      0x77,0x0       	ECANCON=0;                                                                      F:\MCP\projects\CAN\Source\CAN.c
686
000076   9e77     BCF       0x77,0x7,0x0   	ECANCONbits.MDSEL1 = 0;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
686
000076   9e77     BCF       0x77,0x7,0x0   	ECANCONbits.MDSEL1 = 0;                                                         F:\MCP\projects\CAN\Source\CAN.c
687
000078   8c77     BSF       0x77,0x6,0x0   	ECANCONbits.MDSEL0 = 1;                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
687
000078   8c77     BSF       0x77,0x6,0x0   	ECANCONbits.MDSEL0 = 1;                                                         F:\MCP\projects\CAN\Source\CAN.c
688
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
688
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
689
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
689
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
690
                                           	// FILTERS AND MASKS                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
690
                                           	// FILTERS AND MASKS                                                            F:\MCP\projects\CAN\Source\CAN.c
691
00007a   8c60     BSF       0x60,0x6,0x0   	RXB0CONbits.RXM1=1;                                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
691
00007a   8c60     BSF       0x60,0x6,0x0   	RXB0CONbits.RXM1=1;                                                             F:\MCP\projects\CAN\Source\CAN.c
692
00007c   9a60     BCF       0x60,0x5,0x0   	RXB0CONbits.RXM0=0;                                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
692
00007c   9a60     BCF       0x60,0x5,0x0   	RXB0CONbits.RXM0=0;                                                             F:\MCP\projects\CAN\Source\CAN.c
693
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
693
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
694
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
694
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
695
                                           	// INTERRUPTS                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
695
                                           	// INTERRUPTS                                                                   F:\MCP\projects\CAN\Source\CAN.c
696
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
696
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
697
                                           	// Diable transmit interrupt                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
697
                                           	// Diable transmit interrupt                                                    F:\MCP\projects\CAN\Source\CAN.c
698
00007e   010d     MOVLB     0xd            	TXBIE = 0;                                                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
698
00007e   010d     MOVLB     0xd            	TXBIE = 0;                                                                      F:\MCP\projects\CAN\Source\CAN.c
699
000080   6bfc     CLRF      0xfc,0x1                                                                                        
699
000080   6bfc     CLRF      0xfc,0x1                                                                                        
700
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
700
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
701
                                           	//rx any interrupt                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
701
                                           	//rx any interrupt                                                              F:\MCP\projects\CAN\Source\CAN.c
702
000082   6aa4     CLRF      0xa4,0x0       	PIR3 = 0;                                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
702
000082   6aa4     CLRF      0xa4,0x0       	PIR3 = 0;                                                                       F:\MCP\projects\CAN\Source\CAN.c
703
000084   0e03     MOVLW     0x3            	PIE3 = 0b00000011;                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
703
000084   0e03     MOVLW     0x3            	PIE3 = 0b00000011;                                                              F:\MCP\projects\CAN\Source\CAN.c
704
000086   6ea3     MOVWF     0xa3,0x0                                                                                        
704
000086   6ea3     MOVWF     0xa3,0x0                                                                                        
705
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
705
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
706
                                           	// High interrupt                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
706
                                           	// High interrupt                                                               F:\MCP\projects\CAN\Source\CAN.c
707
000088   6ea5     MOVWF     0xa5,0x0       	IPR3 =0b00000011;                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
707
000088   6ea5     MOVWF     0xa5,0x0       	IPR3 =0b00000011;                                                               F:\MCP\projects\CAN\Source\CAN.c
708
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
708
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
709
                                           	// Programmable buffers interrupt                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
709
                                           	// Programmable buffers interrupt                                               F:\MCP\projects\CAN\Source\CAN.c
710
00008a   69fa     SETF      0xfa,0x1       	BIE0  = 0xFF;	                                                                  F:\MCP\projects\CAN\canNode\Source\CAN.c
710
00008a   69fa     SETF      0xfa,0x1       	BIE0  = 0xFF;	                                                                  F:\MCP\projects\CAN\Source\CAN.c
711
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
711
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
712
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
712
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
713
                                           	//loopback mode or not                                                          F:\MCP\projects\CAN\canNode\Source\CAN.c
713
                                           	//loopback mode or not                                                          F:\MCP\projects\CAN\Source\CAN.c
714
                                           	#ifdef CAN_LOOPBACK_MODE                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
714
                                           	#ifdef CAN_LOOPBACK_MODE                                                        F:\MCP\projects\CAN\Source\CAN.c
715
                                           		CANCON = 0x40;//request loopback mode                                          F:\MCP\projects\CAN\canNode\Source\CAN.c
715
                                           		CANCON = 0x40;//request loopback mode                                          F:\MCP\projects\CAN\Source\CAN.c
716
                                           		while ((CANSTAT & 0xE0) != 0x40 );//wait for loopback mode                     F:\MCP\projects\CAN\canNode\Source\CAN.c
716
                                           		while ((CANSTAT & 0xE0) != 0x40 );//wait for loopback mode                     F:\MCP\projects\CAN\Source\CAN.c
717
                                           	#else                                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
717
                                           	#else                                                                           F:\MCP\projects\CAN\Source\CAN.c
718
00008c   6a6f     CLRF      0x6f,0x0       		CANCON = 0x00;//request normal mode                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
718
00008c   6a6f     CLRF      0x6f,0x0       		CANCON = 0x00;//request normal mode                                            F:\MCP\projects\CAN\Source\CAN.c
719
00008e   0ee0     MOVLW     0xe0           		while ((CANSTAT & 0xE0) != 0x00 );//wait for normal mode                       F:\MCP\projects\CAN\canNode\Source\CAN.c
719
00008e   0ee0     MOVLW     0xe0           		while ((CANSTAT & 0xE0) != 0x00 );//wait for normal mode                       F:\MCP\projects\CAN\Source\CAN.c
720
000090   146e     ANDWF     0x6e,0x0,0x0                                                                                    
720
000090   146e     ANDWF     0x6e,0x0,0x0                                                                                    
721
000092   e1fd     BNZ       0x8e                                                                                            
721
000092   e1fd     BNZ       0x8e                                                                                            
722
                                           	#endif                                                                          F:\MCP\projects\CAN\canNode\Source\CAN.c
722
                                           	#endif                                                                          F:\MCP\projects\CAN\Source\CAN.c
723
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
723
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
724
000094   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
724
000094   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\CAN.c
725
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
725
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
726
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
726
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
727
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
727
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
728
                                           *	Function: canISR                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
728
                                           *	Function: canISR                                                               F:\MCP\projects\CAN\Source\CAN.c
729
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
729
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
730
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
730
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\CAN.c
731
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
731
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\CAN.c
732
                                           *	Pre-conditions: a call to canInit()                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
732
                                           *	Pre-conditions: a call to canInit()                                            F:\MCP\projects\CAN\Source\CAN.c
733
                                           *	Affects: interrupt registers and receive data buffers                          F:\MCP\projects\CAN\canNode\Source\CAN.c
733
                                           *	Affects: interrupt registers and receive data buffers                          F:\MCP\projects\CAN\Source\CAN.c
734
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
734
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\Source\CAN.c
735
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
735
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
736
                                           void canISR()                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
736
                                           void canISR()                                                                    F:\MCP\projects\CAN\Source\CAN.c
737
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
737
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
738
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
738
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
739
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
739
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
740
000096   50a4     MOVF      0xa4,0x0,0x0   	if (PIR3bits.RXBnIF || PIR3bits.RXB1IF || PIR3bits.RXB0IF)                      F:\MCP\projects\CAN\canNode\Source\CAN.c
740
000096   50a4     MOVF      0xa4,0x0,0x0   	if (PIR3bits.RXBnIF || PIR3bits.RXB1IF || PIR3bits.RXB0IF)                      F:\MCP\projects\CAN\Source\CAN.c
741
000098   0b02     ANDLW     0x2                                                                                             
741
000098   0b02     ANDLW     0x2                                                                                             
742
00009a   e106     BNZ       0xa8                                                                                            
742
00009a   e106     BNZ       0xa8                                                                                            
743
00009c   50a4     MOVF      0xa4,0x0,0x0                                                                                    
743
00009c   50a4     MOVF      0xa4,0x0,0x0                                                                                    
744
00009e   0b02     ANDLW     0x2                                                                                             
744
00009e   0b02     ANDLW     0x2                                                                                             
745
0000a0   e103     BNZ       0xa8                                                                                            
745
0000a0   e103     BNZ       0xa8                                                                                            
746
0000a2   50a4     MOVF      0xa4,0x0,0x0                                                                                    
746
0000a2   50a4     MOVF      0xa4,0x0,0x0                                                                                    
747
0000a4   0b01     ANDLW     0x1                                                                                             
747
0000a4   0b01     ANDLW     0x1                                                                                             
748
0000a6   e03a     BZ        0x11c                                                                                           
748
0000a6   e03a     BZ        0x11c                                                                                           
749
                                           	{                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
749
                                           	{                                                                               F:\MCP\projects\CAN\Source\CAN.c
750
                                           		// Get which buffer that is ful.                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
750
                                           		// Get which buffer that is ful.                                               F:\MCP\projects\CAN\Source\CAN.c
751
0000a8   ae60     BTFSS     0x60,0x7,0x0   			 if (RXB0CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10000; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
751
0000a8   ae60     BTFSS     0x60,0x7,0x0   			 if (RXB0CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10000; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
752
0000aa   d004     BRA       0xb4                                                                                            
752
0000aa   d004     BRA       0xb4                                                                                            
753
0000ac   0e00     MOVLW     0x0                                                                                             
753
0000ac   0e00     MOVLW     0x0                                                                                             
754
0000ae   1477     ANDWF     0x77,0x0,0x0                                                                                    
754
0000ae   1477     ANDWF     0x77,0x0,0x0                                                                                    
755
0000b0   0910     IORLW     0x10                                                                                            
755
0000b0   0910     IORLW     0x10                                                                                            
756
0000b2   d02b     BRA       0x10a          		else if (RXB1CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10001; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
756
0000b2   d02b     BRA       0x10a          		else if (RXB1CONbits.RXFUL) { ECANCON=(ECANCON&0b00000)|0b10001; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
757
0000b4   010f     MOVLB     0xf                                                                                             
757
0000b4   010f     MOVLB     0xf                                                                                             
758
0000b6   af50     BTFSS     0x50,0x7,0x1                                                                                    
758
0000b6   af50     BTFSS     0x50,0x7,0x1                                                                                    
759
0000b8   d004     BRA       0xc2                                                                                            
759
0000b8   d004     BRA       0xc2                                                                                            
760
0000ba   0e00     MOVLW     0x0                                                                                             
760
0000ba   0e00     MOVLW     0x0                                                                                             
761
0000bc   1477     ANDWF     0x77,0x0,0x0                                                                                    
761
0000bc   1477     ANDWF     0x77,0x0,0x0                                                                                    
762
0000be   0911     IORLW     0x11                                                                                            
762
0000be   0911     IORLW     0x11                                                                                            
763
0000c0   d024     BRA       0x10a          		else if (B0CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10010; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
763
0000c0   d024     BRA       0x10a          		else if (B0CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10010; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
764
0000c2   010e     MOVLB     0xe                                                                                             
764
0000c2   010e     MOVLB     0xe                                                                                             
765
0000c4   af20     BTFSS     0x20,0x7,0x1                                                                                    
765
0000c4   af20     BTFSS     0x20,0x7,0x1                                                                                    
766
0000c6   d004     BRA       0xd0                                                                                            
766
0000c6   d004     BRA       0xd0                                                                                            
767
0000c8   0e00     MOVLW     0x0                                                                                             
767
0000c8   0e00     MOVLW     0x0                                                                                             
768
0000ca   1477     ANDWF     0x77,0x0,0x0                                                                                    
768
0000ca   1477     ANDWF     0x77,0x0,0x0                                                                                    
769
0000cc   0912     IORLW     0x12                                                                                            
769
0000cc   0912     IORLW     0x12                                                                                            
770
0000ce   d01d     BRA       0x10a          		else if (B1CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10011; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
770
0000ce   d01d     BRA       0x10a          		else if (B1CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10011; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
771
0000d0   af30     BTFSS     0x30,0x7,0x1                                                                                    
771
0000d0   af30     BTFSS     0x30,0x7,0x1                                                                                    
772
0000d2   d004     BRA       0xdc                                                                                            
772
0000d2   d004     BRA       0xdc                                                                                            
773
0000d4   0e00     MOVLW     0x0                                                                                             
773
0000d4   0e00     MOVLW     0x0                                                                                             
774
0000d6   1477     ANDWF     0x77,0x0,0x0                                                                                    
774
0000d6   1477     ANDWF     0x77,0x0,0x0                                                                                    
775
0000d8   0913     IORLW     0x13                                                                                            
775
0000d8   0913     IORLW     0x13                                                                                            
776
0000da   d017     BRA       0x10a          		else if (B2CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10100; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
776
0000da   d017     BRA       0x10a          		else if (B2CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10100; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
777
0000dc   af40     BTFSS     0x40,0x7,0x1                                                                                    
777
0000dc   af40     BTFSS     0x40,0x7,0x1                                                                                    
778
0000de   d004     BRA       0xe8                                                                                            
778
0000de   d004     BRA       0xe8                                                                                            
779
0000e0   0e00     MOVLW     0x0                                                                                             
779
0000e0   0e00     MOVLW     0x0                                                                                             
780
0000e2   1477     ANDWF     0x77,0x0,0x0                                                                                    
780
0000e2   1477     ANDWF     0x77,0x0,0x0                                                                                    
781
0000e4   0914     IORLW     0x14                                                                                            
781
0000e4   0914     IORLW     0x14                                                                                            
782
0000e6   d011     BRA       0x10a          		else if (B3CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10101; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
782
0000e6   d011     BRA       0x10a          		else if (B3CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10101; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
783
0000e8   af50     BTFSS     0x50,0x7,0x1                                                                                    
783
0000e8   af50     BTFSS     0x50,0x7,0x1                                                                                    
784
0000ea   d004     BRA       0xf4                                                                                            
784
0000ea   d004     BRA       0xf4                                                                                            
785
0000ec   0e00     MOVLW     0x0                                                                                             
785
0000ec   0e00     MOVLW     0x0                                                                                             
786
0000ee   1477     ANDWF     0x77,0x0,0x0                                                                                    
786
0000ee   1477     ANDWF     0x77,0x0,0x0                                                                                    
787
0000f0   0915     IORLW     0x15                                                                                            
787
0000f0   0915     IORLW     0x15                                                                                            
788
0000f2   d00b     BRA       0x10a          		else if (B4CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10110; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
788
0000f2   d00b     BRA       0x10a          		else if (B4CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10110; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
789
0000f4   af60     BTFSS     0x60,0x7,0x1                                                                                    
789
0000f4   af60     BTFSS     0x60,0x7,0x1                                                                                    
790
0000f6   d004     BRA       0x100                                                                                           
790
0000f6   d004     BRA       0x100                                                                                           
791
0000f8   0e00     MOVLW     0x0                                                                                             
791
0000f8   0e00     MOVLW     0x0                                                                                             
792
0000fa   1477     ANDWF     0x77,0x0,0x0                                                                                    
792
0000fa   1477     ANDWF     0x77,0x0,0x0                                                                                    
793
0000fc   0916     IORLW     0x16                                                                                            
793
0000fc   0916     IORLW     0x16                                                                                            
794
0000fe   d005     BRA       0x10a          		else if (B5CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10111; canGetPacket(); } F:\MCP\projects\CAN\canNode\Source\CAN.c
794
0000fe   d005     BRA       0x10a          		else if (B5CONbits.RXFUL) 	{ ECANCON=(ECANCON&0b00000)|0b10111; canGetPacket(); } F:\MCP\projects\CAN\Source\CAN.c
795
000100   af70     BTFSS     0x70,0x7,0x1                                                                                    
795
000100   af70     BTFSS     0x70,0x7,0x1                                                                                    
796
000102   d005     BRA       0x10e                                                                                           
796
000102   d005     BRA       0x10e                                                                                           
797
000104   0e00     MOVLW     0x0                                                                                             
797
000104   0e00     MOVLW     0x0                                                                                             
798
000106   1477     ANDWF     0x77,0x0,0x0                                                                                    
798
000106   1477     ANDWF     0x77,0x0,0x0                                                                                    
799
000108   0917     IORLW     0x17                                                                                            
799
000108   0917     IORLW     0x17                                                                                            
800
00010a   6e77     MOVWF     0x77,0x0                                                                                        
800
00010a   6e77     MOVWF     0x77,0x0                                                                                        
801
00010c   d808     RCALL     0x11e                                                                                           
801
00010c   d808     RCALL     0x11e                                                                                           
802
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
802
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
803
00010e   a2a4     BTFSS     0xa4,0x1,0x0   		if (PIR3bits.RXBnIF) {PIR3bits.RXBnIF = 0;}                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
803
00010e   a2a4     BTFSS     0xa4,0x1,0x0   		if (PIR3bits.RXBnIF) {PIR3bits.RXBnIF = 0;}                                    F:\MCP\projects\CAN\Source\CAN.c
804
000110   d003     BRA       0x118                                                                                           
804
000110   d003     BRA       0x118                                                                                           
805
000112   92a4     BCF       0xa4,0x1,0x0                                                                                    
805
000112   92a4     BCF       0xa4,0x1,0x0                                                                                    
806
000114   b2a4     BTFSC     0xa4,0x1,0x0   		if (PIR3bits.RXB1IF) {PIR3bits.RXB1IF = 0;}                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
806
000114   b2a4     BTFSC     0xa4,0x1,0x0   		if (PIR3bits.RXB1IF) {PIR3bits.RXB1IF = 0;}                                    F:\MCP\projects\CAN\Source\CAN.c
807
000116   92a4     BCF       0xa4,0x1,0x0                                                                                    
807
000116   92a4     BCF       0xa4,0x1,0x0                                                                                    
808
000118   b0a4     BTFSC     0xa4,0x0,0x0   		if (PIR3bits.RXB0IF) {PIR3bits.RXB0IF = 0;}                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
808
000118   b0a4     BTFSC     0xa4,0x0,0x0   		if (PIR3bits.RXB0IF) {PIR3bits.RXB0IF = 0;}                                    F:\MCP\projects\CAN\Source\CAN.c
809
00011a   90a4     BCF       0xa4,0x0,0x0                                                                                    
809
00011a   90a4     BCF       0xa4,0x0,0x0                                                                                    
810
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
810
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
811
                                           	}                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
811
                                           	}                                                                               F:\MCP\projects\CAN\Source\CAN.c
812
00011c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
812
00011c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\CAN.c
813
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
813
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
814
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
814
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
815
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
815
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
816
                                           *	Function: canGetPacket                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
816
                                           *	Function: canGetPacket                                                         F:\MCP\projects\CAN\Source\CAN.c
817
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
817
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
818
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
818
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\CAN.c
819
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
819
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\CAN.c
820
                                           *	Pre-conditions: a call to canISR and an packet is available and banked to RXB0 F:\MCP\projects\CAN\canNode\Source\CAN.c
820
                                           *	Pre-conditions: a call to canISR and an packet is available and banked to RXB0 F:\MCP\projects\CAN\Source\CAN.c
821
                                           *	Affects: Calls canParse() function in main for parsing received packet.        F:\MCP\projects\CAN\canNode\Source\CAN.c
821
                                           *	Affects: Calls canParse() function in main for parsing received packet.        F:\MCP\projects\CAN\Source\CAN.c
822
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
822
                                           *	Depends: none.                                                                 F:\MCP\projects\CAN\Source\CAN.c
823
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
823
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
824
00011e   cfd9     MOVFF     0xfd9,0xfe6    void canGetPacket()                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
824
00011e   cfd9     MOVFF     0xfd9,0xfe6    void canGetPacket()                                                              F:\MCP\projects\CAN\Source\CAN.c
825
000120   ffe6                                                                                                               
825
000120   ffe6                                                                                                               
826
000122   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
826
000122   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
827
000124   ffd9                                                                                                               
827
000124   ffd9                                                                                                               
828
000126   0e0e     MOVLW     0xe                                                                                             
828
000126   0e0e     MOVLW     0xe                                                                                             
829
000128   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
829
000128   26e1     ADDWF     0xe1,0x1,0x0                                                                                    
830
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
830
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
831
                                           		CAN_MESSAGE cm;                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
831
                                           		CAN_MESSAGE cm;                                                                F:\MCP\projects\CAN\Source\CAN.c
832
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
832
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
833
                                           		// Set extended mode or not.                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
833
                                           		// Set extended mode or not.                                                   F:\MCP\projects\CAN\Source\CAN.c
834
00012a   5062     MOVF      0x62,0x0,0x0   		cm.extended=(RXB0SIDLbits.EXID==0?FALSE:TRUE);                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
834
00012a   5062     MOVF      0x62,0x0,0x0   		cm.extended=(RXB0SIDLbits.EXID==0?FALSE:TRUE);                                 F:\MCP\projects\CAN\Source\CAN.c
835
00012c   0b08     ANDLW     0x8                                                                                             
835
00012c   0b08     ANDLW     0x8                                                                                             
836
00012e   e102     BNZ       0x134                                                                                           
836
00012e   e102     BNZ       0x134                                                                                           
837
000130   0e00     MOVLW     0x0                                                                                             
837
000130   0e00     MOVLW     0x0                                                                                             
838
000132   d001     BRA       0x136                                                                                           
838
000132   d001     BRA       0x136                                                                                           
839
000134   0e01     MOVLW     0x1                                                                                             
839
000134   0e01     MOVLW     0x1                                                                                             
840
000136   6ee7     MOVWF     0xe7,0x0                                                                                        
840
000136   6ee7     MOVWF     0xe7,0x0                                                                                        
841
000138   0e04     MOVLW     0x4                                                                                             
841
000138   0e04     MOVLW     0x4                                                                                             
842
00013a   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
842
00013a   cfe7     MOVFF     0xfe7,0xfdb                                                                                     
843
00013c   ffdb                                                                                                               
843
00013c   ffdb                                                                                                               
844
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
844
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
845
                                           		// Clear                                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
845
                                           		// Clear                                                                       F:\MCP\projects\CAN\Source\CAN.c
846
00013e   6ade     CLRF      0xde,0x0       		cm.ident=0;                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
846
00013e   6ade     CLRF      0xde,0x0       		cm.ident=0;                                                                    F:\MCP\projects\CAN\Source\CAN.c
847
000140   6ade     CLRF      0xde,0x0                                                                                        
847
000140   6ade     CLRF      0xde,0x0                                                                                        
848
000142   6ade     CLRF      0xde,0x0                                                                                        
848
000142   6ade     CLRF      0xde,0x0                                                                                        
849
000144   6add     CLRF      0xdd,0x0                                                                                        
849
000144   6add     CLRF      0xdd,0x0                                                                                        
850
000146   52dd     MOVF      0xdd,0x1,0x0                                                                                    
850
000146   52dd     MOVF      0xdd,0x1,0x0                                                                                    
851
000148   52dd     MOVF      0xdd,0x1,0x0                                                                                    
851
000148   52dd     MOVF      0xdd,0x1,0x0                                                                                    
852
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
852
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
853
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
853
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
854
00014a   04db     DECF      0xdb,0x0,0x0   		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
854
00014a   04db     DECF      0xdb,0x0,0x0   		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\Source\CAN.c
855
00014c   e163     BNZ       0x214                                                                                           
855
00014c   e163     BNZ       0x214                                                                                           
856
                                           		{                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
856
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
857
                                           			//Read extended ident.                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
857
                                           			//Read extended ident.                                                        F:\MCP\projects\CAN\Source\CAN.c
858
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
858
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
859
                                           			//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\canNode\Source\CAN.c
859
                                           			//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
860
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
860
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
861
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
861
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\Source\CAN.c
862
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
862
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\Source\CAN.c
863
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
863
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\Source\CAN.c
864
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
864
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\Source\CAN.c
865
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
865
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
866
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
866
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
867
00014e   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\canNode\Source\CAN.c
867
00014e   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
868
000150   6e00     MOVWF     0x0,0x0                                                                                         
868
000150   6e00     MOVWF     0x0,0x0                                                                                         
869
000152   6a01     CLRF      0x1,0x0                                                                                         
869
000152   6a01     CLRF      0x1,0x0                                                                                         
870
000154   6a02     CLRF      0x2,0x0                                                                                         
870
000154   6a02     CLRF      0x2,0x0                                                                                         
871
000156   6a03     CLRF      0x3,0x0                                                                                         
871
000156   6a03     CLRF      0x3,0x0                                                                                         
872
000158   0e15     MOVLW     0x15                                                                                            
872
000158   0e15     MOVLW     0x15                                                                                            
Line 960... Line 960...
960
000208   5011     MOVF      0x11,0x0,0x0                                                                                    
960
000208   5011     MOVF      0x11,0x0,0x0                                                                                    
961
00020a   2201     ADDWFC    0x1,0x1,0x0                                                                                     
961
00020a   2201     ADDWFC    0x1,0x1,0x0                                                                                     
962
00020c   5012     MOVF      0x12,0x0,0x0                                                                                    
962
00020c   5012     MOVF      0x12,0x0,0x0                                                                                    
963
00020e   2202     ADDWFC    0x2,0x1,0x0                                                                                     
963
00020e   2202     ADDWFC    0x2,0x1,0x0                                                                                     
964
000210   5013     MOVF      0x13,0x0,0x0                                                                                    
964
000210   5013     MOVF      0x13,0x0,0x0                                                                                    
965
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
965
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
966
                                           		}                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
966
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
967
000212   d023     BRA       0x25a          		else                                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
967
000212   d023     BRA       0x25a          		else                                                                           F:\MCP\projects\CAN\Source\CAN.c
968
                                           		{                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
968
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
969
                                           			//Read standard ident.                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
969
                                           			//Read standard ident.                                                        F:\MCP\projects\CAN\Source\CAN.c
970
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
970
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
971
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\canNode\Source\CAN.c
971
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\Source\CAN.c
972
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
972
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
973
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
973
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\Source\CAN.c
974
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
974
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\Source\CAN.c
975
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
975
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
976
000214   5061     MOVF      0x61,0x0,0x0   			cm.ident = (((DWORD)RXB0SIDH)<<3) + (((DWORD)RXB0SIDL)>>5);                   F:\MCP\projects\CAN\canNode\Source\CAN.c
976
000214   5061     MOVF      0x61,0x0,0x0   			cm.ident = (((DWORD)RXB0SIDH)<<3) + (((DWORD)RXB0SIDL)>>5);                   F:\MCP\projects\CAN\Source\CAN.c
977
000216   6e00     MOVWF     0x0,0x0                                                                                         
977
000216   6e00     MOVWF     0x0,0x0                                                                                         
978
000218   6a01     CLRF      0x1,0x0                                                                                         
978
000218   6a01     CLRF      0x1,0x0                                                                                         
979
00021a   6a02     CLRF      0x2,0x0                                                                                         
979
00021a   6a02     CLRF      0x2,0x0                                                                                         
980
00021c   6a03     CLRF      0x3,0x0                                                                                         
980
00021c   6a03     CLRF      0x3,0x0                                                                                         
981
00021e   0e03     MOVLW     0x3                                                                                             
981
00021e   0e03     MOVLW     0x3                                                                                             
Line 1018... Line 1018...
1018
000268   c002     MOVFF     0x2,0xfdb                                                                                       
1018
000268   c002     MOVFF     0x2,0xfdb                                                                                       
1019
00026a   ffdb                                                                                                               
1019
00026a   ffdb                                                                                                               
1020
00026c   0e03     MOVLW     0x3                                                                                             
1020
00026c   0e03     MOVLW     0x3                                                                                             
1021
00026e   c003     MOVFF     0x3,0xfdb                                                                                       
1021
00026e   c003     MOVFF     0x3,0xfdb                                                                                       
1022
000270   ffdb                                                                                                               
1022
000270   ffdb                                                                                                               
1023
                                           		}                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
1023
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
1024
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1024
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1025
                                           		// Data length                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
1025
                                           		// Data length                                                                 F:\MCP\projects\CAN\Source\CAN.c
1026
000272   0e05     MOVLW     0x5            		cm.data_length=RXB0DLC;                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
1026
000272   0e05     MOVLW     0x5            		cm.data_length=RXB0DLC;                                                        F:\MCP\projects\CAN\Source\CAN.c
1027
000274   cf65     MOVFF     0xf65,0xfdb                                                                                     
1027
000274   cf65     MOVFF     0xf65,0xfdb                                                                                     
1028
000276   ffdb                                                                                                               
1028
000276   ffdb                                                                                                               
1029
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1029
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1030
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
1030
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\Source\CAN.c
1031
000278   0e06     MOVLW     0x6            		cm.data[0]=RXB0D0;	cm.data[1]=RXB0D1;                                          F:\MCP\projects\CAN\canNode\Source\CAN.c
1031
000278   0e06     MOVLW     0x6            		cm.data[0]=RXB0D0;	cm.data[1]=RXB0D1;                                          F:\MCP\projects\CAN\Source\CAN.c
1032
00027a   cf66     MOVFF     0xf66,0xfdb                                                                                     
1032
00027a   cf66     MOVFF     0xf66,0xfdb                                                                                     
1033
00027c   ffdb                                                                                                               
1033
00027c   ffdb                                                                                                               
1034
00027e   0e07     MOVLW     0x7                                                                                             
1034
00027e   0e07     MOVLW     0x7                                                                                             
1035
000280   cf67     MOVFF     0xf67,0xfdb                                                                                     
1035
000280   cf67     MOVFF     0xf67,0xfdb                                                                                     
1036
000282   ffdb                                                                                                               
1036
000282   ffdb                                                                                                               
1037
000284   0e08     MOVLW     0x8            		cm.data[2]=RXB0D2; 	cm.data[3]=RXB0D3;                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1037
000284   0e08     MOVLW     0x8            		cm.data[2]=RXB0D2; 	cm.data[3]=RXB0D3;                                         F:\MCP\projects\CAN\Source\CAN.c
1038
000286   cf68     MOVFF     0xf68,0xfdb                                                                                     
1038
000286   cf68     MOVFF     0xf68,0xfdb                                                                                     
1039
000288   ffdb                                                                                                               
1039
000288   ffdb                                                                                                               
1040
00028a   0e09     MOVLW     0x9                                                                                             
1040
00028a   0e09     MOVLW     0x9                                                                                             
1041
00028c   cf69     MOVFF     0xf69,0xfdb                                                                                     
1041
00028c   cf69     MOVFF     0xf69,0xfdb                                                                                     
1042
00028e   ffdb                                                                                                               
1042
00028e   ffdb                                                                                                               
1043
000290   0e0a     MOVLW     0xa            		cm.data[4]=RXB0D4; 	cm.data[5]=RXB0D5;                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1043
000290   0e0a     MOVLW     0xa            		cm.data[4]=RXB0D4; 	cm.data[5]=RXB0D5;                                         F:\MCP\projects\CAN\Source\CAN.c
1044
000292   cf6a     MOVFF     0xf6a,0xfdb                                                                                     
1044
000292   cf6a     MOVFF     0xf6a,0xfdb                                                                                     
1045
000294   ffdb                                                                                                               
1045
000294   ffdb                                                                                                               
1046
000296   0e0b     MOVLW     0xb                                                                                             
1046
000296   0e0b     MOVLW     0xb                                                                                             
1047
000298   cf6b     MOVFF     0xf6b,0xfdb                                                                                     
1047
000298   cf6b     MOVFF     0xf6b,0xfdb                                                                                     
1048
00029a   ffdb                                                                                                               
1048
00029a   ffdb                                                                                                               
1049
00029c   0e0c     MOVLW     0xc            		cm.data[6]=RXB0D6; 	cm.data[7]=RXB0D7;                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1049
00029c   0e0c     MOVLW     0xc            		cm.data[6]=RXB0D6; 	cm.data[7]=RXB0D7;                                         F:\MCP\projects\CAN\Source\CAN.c
1050
00029e   cf6c     MOVFF     0xf6c,0xfdb                                                                                     
1050
00029e   cf6c     MOVFF     0xf6c,0xfdb                                                                                     
1051
0002a0   ffdb                                                                                                               
1051
0002a0   ffdb                                                                                                               
1052
0002a2   0e0d     MOVLW     0xd                                                                                             
1052
0002a2   0e0d     MOVLW     0xd                                                                                             
1053
0002a4   cf6d     MOVFF     0xf6d,0xfdb                                                                                     
1053
0002a4   cf6d     MOVFF     0xf6d,0xfdb                                                                                     
1054
0002a6   ffdb                                                                                                               
1054
0002a6   ffdb                                                                                                               
1055
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1055
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1056
                                           		// Clear ful status                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1056
                                           		// Clear ful status                                                            F:\MCP\projects\CAN\Source\CAN.c
1057
0002a8   9e60     BCF       0x60,0x7,0x0   		RXB0CONbits.RXFUL=0;                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
1057
0002a8   9e60     BCF       0x60,0x7,0x0   		RXB0CONbits.RXFUL=0;                                                           F:\MCP\projects\CAN\Source\CAN.c
1058
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1058
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1059
                                           		//Call main parser                                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
1059
                                           		//Call main parser                                                             F:\MCP\projects\CAN\Source\CAN.c
1060
0002aa   cfd9     MOVFF     0xfd9,0xfe9    		canParse(cm);                                                                  F:\MCP\projects\CAN\canNode\Source\CAN.c
1060
0002aa   cfd9     MOVFF     0xfd9,0xfe9    		canParse(cm);                                                                  F:\MCP\projects\CAN\Source\CAN.c
1061
0002ac   ffe9                                                                                                               
1061
0002ac   ffe9                                                                                                               
1062
0002ae   cfda     MOVFF     0xfda,0xfea                                                                                     
1062
0002ae   cfda     MOVFF     0xfda,0xfea                                                                                     
1063
0002b0   ffea                                                                                                               
1063
0002b0   ffea                                                                                                               
1064
0002b2   cfee     MOVFF     0xfee,0xfe6                                                                                     
1064
0002b2   cfee     MOVFF     0xfee,0xfe6                                                                                     
1065
0002b4   ffe6                                                                                                               
1065
0002b4   ffe6                                                                                                               
Line 1093... Line 1093...
1093
0002ec   f003                                                                                                               
1093
0002ec   f003                                                                                                               
1094
0002ee   6e00     MOVWF     0x0,0x0                                                                                         
1094
0002ee   6e00     MOVWF     0x0,0x0                                                                                         
1095
0002f0   0e0e     MOVLW     0xe                                                                                             
1095
0002f0   0e0e     MOVLW     0xe                                                                                             
1096
0002f2   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
1096
0002f2   5ee1     SUBWF     0xe1,0x1,0x0                                                                                    
1097
0002f4   5000     MOVF      0x0,0x0,0x0                                                                                     
1097
0002f4   5000     MOVF      0x0,0x0,0x0                                                                                     
1098
0002f6   0e0e     MOVLW     0xe            }                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
1098
0002f6   0e0e     MOVLW     0xe            }                                                                                F:\MCP\projects\CAN\Source\CAN.c
1099
0002f8   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
1099
0002f8   5ce1     SUBWF     0xe1,0x0,0x0                                                                                    
1100
0002fa   e202     BC        0x300                                                                                           
1100
0002fa   e202     BC        0x300                                                                                           
1101
0002fc   6ae1     CLRF      0xe1,0x0                                                                                        
1101
0002fc   6ae1     CLRF      0xe1,0x0                                                                                        
1102
0002fe   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1102
0002fe   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1103
000300   6ee1     MOVWF     0xe1,0x0                                                                                        
1103
000300   6ee1     MOVWF     0xe1,0x0                                                                                        
1104
000302   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1104
000302   52e5     MOVF      0xe5,0x1,0x0                                                                                    
1105
000304   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1105
000304   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1106
000306   ffd9                                                                                                               
1106
000306   ffd9                                                                                                               
1107
000308   0012     RETURN    0x0                                                                                             
1107
000308   0012     RETURN    0x0                                                                                             
1108
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1108
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1109
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1109
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1110
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
1110
                                           /*                                                                               F:\MCP\projects\CAN\Source\CAN.c
1111
                                           *	Function: canSendMessage                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
1111
                                           *	Function: canSendMessage                                                       F:\MCP\projects\CAN\Source\CAN.c
1112
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
1112
                                           *                                                                                F:\MCP\projects\CAN\Source\CAN.c
1113
                                           *	Input:	CAN_MESSAGE to send                                                     F:\MCP\projects\CAN\canNode\Source\CAN.c
1113
                                           *	Input:	CAN_MESSAGE to send                                                     F:\MCP\projects\CAN\Source\CAN.c
1114
                                           *	Output: True if packet scheduled sucess, false otherwise.                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1114
                                           *	Output: True if packet scheduled sucess, false otherwise.                      F:\MCP\projects\CAN\Source\CAN.c
1115
                                           *	Pre-conditions: canInit                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
1115
                                           *	Pre-conditions: canInit                                                        F:\MCP\projects\CAN\Source\CAN.c
1116
                                           *	Affects: ..                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
1116
                                           *	Affects: ..                                                                    F:\MCP\projects\CAN\Source\CAN.c
1117
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
1117
                                           *	Depends: ..                                                                    F:\MCP\projects\CAN\Source\CAN.c
1118
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
1118
                                           */                                                                               F:\MCP\projects\CAN\Source\CAN.c
1119
00030a   cfd9     MOVFF     0xfd9,0xfe6    BOOL canSendMessage(CAN_MESSAGE cm)                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
1119
00030a   cfd9     MOVFF     0xfd9,0xfe6    BOOL canSendMessage(CAN_MESSAGE cm)                                              F:\MCP\projects\CAN\Source\CAN.c
1120
00030c   ffe6                                                                                                               
1120
00030c   ffe6                                                                                                               
1121
00030e   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
1121
00030e   cfe1     MOVFF     0xfe1,0xfd9                                                                                     
1122
000310   ffd9                                                                                                               
1122
000310   ffd9                                                                                                               
1123
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
1123
                                           {                                                                                F:\MCP\projects\CAN\Source\CAN.c
1124
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
1124
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
1125
000312   010f     MOVLB     0xf            	if ( TXB0CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00011; }           F:\MCP\projects\CAN\canNode\Source\CAN.c
1125
000312   010f     MOVLB     0xf            	if ( TXB0CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00011; }           F:\MCP\projects\CAN\Source\CAN.c
1126
000314   b740     BTFSC     0x40,0x3,0x1                                                                                    
1126
000314   b740     BTFSC     0x40,0x3,0x1                                                                                    
1127
000316   d004     BRA       0x320                                                                                           
1127
000316   d004     BRA       0x320                                                                                           
1128
000318   0e00     MOVLW     0x0                                                                                             
1128
000318   0e00     MOVLW     0x0                                                                                             
1129
00031a   1477     ANDWF     0x77,0x0,0x0                                                                                    
1129
00031a   1477     ANDWF     0x77,0x0,0x0                                                                                    
1130
00031c   0903     IORLW     0x3                                                                                             
1130
00031c   0903     IORLW     0x3                                                                                             
1131
00031e   6e77     MOVWF     0x77,0x0                                                                                        
1131
00031e   6e77     MOVWF     0x77,0x0                                                                                        
1132
000320   010f     MOVLB     0xf            	if ( TXB1CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00100; }           F:\MCP\projects\CAN\canNode\Source\CAN.c
1132
000320   010f     MOVLB     0xf            	if ( TXB1CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00100; }           F:\MCP\projects\CAN\Source\CAN.c
1133
000322   b730     BTFSC     0x30,0x3,0x1                                                                                    
1133
000322   b730     BTFSC     0x30,0x3,0x1                                                                                    
1134
000324   d004     BRA       0x32e                                                                                           
1134
000324   d004     BRA       0x32e                                                                                           
1135
000326   0e00     MOVLW     0x0                                                                                             
1135
000326   0e00     MOVLW     0x0                                                                                             
1136
000328   1477     ANDWF     0x77,0x0,0x0                                                                                    
1136
000328   1477     ANDWF     0x77,0x0,0x0                                                                                    
1137
00032a   0904     IORLW     0x4                                                                                             
1137
00032a   0904     IORLW     0x4                                                                                             
1138
00032c   6e77     MOVWF     0x77,0x0                                                                                        
1138
00032c   6e77     MOVWF     0x77,0x0                                                                                        
1139
00032e   010f     MOVLB     0xf            	if ( TXB2CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00101; }           F:\MCP\projects\CAN\canNode\Source\CAN.c
1139
00032e   010f     MOVLB     0xf            	if ( TXB2CONbits.TXREQ == 0 )  { ECANCON=(ECANCON&0b00000)|0b00101; }           F:\MCP\projects\CAN\Source\CAN.c
1140
000330   b720     BTFSC     0x20,0x3,0x1                                                                                    
1140
000330   b720     BTFSC     0x20,0x3,0x1                                                                                    
1141
000332   d005     BRA       0x33e                                                                                           
1141
000332   d005     BRA       0x33e                                                                                           
1142
000334   0e00     MOVLW     0x0                                                                                             
1142
000334   0e00     MOVLW     0x0                                                                                             
1143
000336   1477     ANDWF     0x77,0x0,0x0                                                                                    
1143
000336   1477     ANDWF     0x77,0x0,0x0                                                                                    
1144
000338   0905     IORLW     0x5                                                                                             
1144
000338   0905     IORLW     0x5                                                                                             
1145
00033a   6e77     MOVWF     0x77,0x0                                                                                        
1145
00033a   6e77     MOVWF     0x77,0x0                                                                                        
1146
                                           	// None of the transmit buffers were empty.                                     F:\MCP\projects\CAN\canNode\Source\CAN.c
1146
                                           	// None of the transmit buffers were empty.                                     F:\MCP\projects\CAN\Source\CAN.c
1147
00033c   d002     BRA       0x342          	else { return FALSE;}                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
1147
00033c   d002     BRA       0x342          	else { return FALSE;}                                                           F:\MCP\projects\CAN\Source\CAN.c
1148
00033e   0e00     MOVLW     0x0                                                                                             
1148
00033e   0e00     MOVLW     0x0                                                                                             
1149
000340   d0c0     BRA       0x4c2                                                                                           
1149
000340   d0c0     BRA       0x4c2                                                                                           
1150
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1150
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1151
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1151
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1152
000342   0ef5     MOVLW     0xf5           		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1152
000342   0ef5     MOVLW     0xf5           		if (cm.extended==TRUE)                                                         F:\MCP\projects\CAN\Source\CAN.c
1153
000344   04db     DECF      0xdb,0x0,0x0                                                                                    
1153
000344   04db     DECF      0xdb,0x0,0x0                                                                                    
1154
000346   e15f     BNZ       0x406                                                                                           
1154
000346   e15f     BNZ       0x406                                                                                           
1155
                                           		{                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
1155
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
1156
                                           			//Write extended ident.                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
1156
                                           			//Write extended ident.                                                       F:\MCP\projects\CAN\Source\CAN.c
1157
                                           	                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
1157
                                           	                                                                                F:\MCP\projects\CAN\Source\CAN.c
1158
                                           			//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\canNode\Source\CAN.c
1158
                                           			//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
1159
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1159
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1160
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1160
                                                   	//RXB0SIDH 28 27 26 25 24 23 22 21                                      F:\MCP\projects\CAN\Source\CAN.c
1161
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1161
                                                   	//RXB0SIDL 20 19 18 xx xx xx 17 16                                      F:\MCP\projects\CAN\Source\CAN.c
1162
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1162
                                                   	//RXB0EIDH 15 14 13 12 11 10 09 08                                      F:\MCP\projects\CAN\Source\CAN.c
1163
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1163
                                                   	//RXB0EIDL 07 06 05 04 03 02 01 00                                      F:\MCP\projects\CAN\Source\CAN.c
1164
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1164
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1165
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1165
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1166
000348   0ef1     MOVLW     0xf1                   	RXB0SIDH =  (BYTE)((cm.ident>>21));                                     F:\MCP\projects\CAN\canNode\Source\CAN.c
1166
000348   0ef1     MOVLW     0xf1                   	RXB0SIDH =  (BYTE)((cm.ident>>21));                                     F:\MCP\projects\CAN\Source\CAN.c
1167
00034a   cfdb     MOVFF     0xfdb,0x0                                                                                       
1167
00034a   cfdb     MOVFF     0xfdb,0x0                                                                                       
1168
00034c   f000                                                                                                               
1168
00034c   f000                                                                                                               
1169
00034e   0ef2     MOVLW     0xf2                                                                                            
1169
00034e   0ef2     MOVLW     0xf2                                                                                            
1170
000350   cfdb     MOVFF     0xfdb,0x1                                                                                       
1170
000350   cfdb     MOVFF     0xfdb,0x1                                                                                       
1171
000352   f001                                                                                                               
1171
000352   f001                                                                                                               
Line 1183... Line 1183...
1183
00036a   3200     RRCF      0x0,0x1,0x0                                                                                     
1183
00036a   3200     RRCF      0x0,0x1,0x0                                                                                     
1184
00036c   06e8     DECF      0xe8,0x1,0x0                                                                                    
1184
00036c   06e8     DECF      0xe8,0x1,0x0                                                                                    
1185
00036e   e1f9     BNZ       0x362                                                                                           
1185
00036e   e1f9     BNZ       0x362                                                                                           
1186
000370   5000     MOVF      0x0,0x0,0x0                                                                                     
1186
000370   5000     MOVF      0x0,0x0,0x0                                                                                     
1187
000372   6e61     MOVWF     0x61,0x0                                                                                        
1187
000372   6e61     MOVWF     0x61,0x0                                                                                        
1188
000374   0ef1     MOVLW     0xf1                   	RXB0SIDL = ((BYTE)(cm.ident>>16) & 0x03) + ((BYTE)(cm.ident>>13) & 0xE0); F:\MCP\projects\CAN\canNode\Source\CAN.c
1188
000374   0ef1     MOVLW     0xf1                   	RXB0SIDL = ((BYTE)(cm.ident>>16) & 0x03) + ((BYTE)(cm.ident>>13) & 0xE0); F:\MCP\projects\CAN\Source\CAN.c
1189
000376   cfdb     MOVFF     0xfdb,0x5                                                                                       
1189
000376   cfdb     MOVFF     0xfdb,0x5                                                                                       
1190
000378   f005                                                                                                               
1190
000378   f005                                                                                                               
1191
00037a   0ef2     MOVLW     0xf2                                                                                            
1191
00037a   0ef2     MOVLW     0xf2                                                                                            
1192
00037c   cfdb     MOVFF     0xfdb,0x6                                                                                       
1192
00037c   cfdb     MOVFF     0xfdb,0x6                                                                                       
1193
00037e   f006                                                                                                               
1193
00037e   f006                                                                                                               
Line 1230... Line 1230...
1230
0003c8   e1f9     BNZ       0x3bc                                                                                           
1230
0003c8   e1f9     BNZ       0x3bc                                                                                           
1231
0003ca   0e03     MOVLW     0x3                                                                                             
1231
0003ca   0e03     MOVLW     0x3                                                                                             
1232
0003cc   1400     ANDWF     0x0,0x0,0x0                                                                                     
1232
0003cc   1400     ANDWF     0x0,0x0,0x0                                                                                     
1233
0003ce   2404     ADDWF     0x4,0x0,0x0                                                                                     
1233
0003ce   2404     ADDWF     0x4,0x0,0x0                                                                                     
1234
0003d0   6e62     MOVWF     0x62,0x0                                                                                        
1234
0003d0   6e62     MOVWF     0x62,0x0                                                                                        
1235
0003d2   0ef1     MOVLW     0xf1                   	RXB0EIDH =  (BYTE)(cm.ident>>8);                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
1235
0003d2   0ef1     MOVLW     0xf1                   	RXB0EIDH =  (BYTE)(cm.ident>>8);                                        F:\MCP\projects\CAN\Source\CAN.c
1236
0003d4   cfdb     MOVFF     0xfdb,0x0                                                                                       
1236
0003d4   cfdb     MOVFF     0xfdb,0x0                                                                                       
1237
0003d6   f000                                                                                                               
1237
0003d6   f000                                                                                                               
1238
0003d8   0ef2     MOVLW     0xf2                                                                                            
1238
0003d8   0ef2     MOVLW     0xf2                                                                                            
1239
0003da   cfdb     MOVFF     0xfdb,0x1                                                                                       
1239
0003da   cfdb     MOVFF     0xfdb,0x1                                                                                       
1240
0003dc   f001                                                                                                               
1240
0003dc   f001                                                                                                               
Line 1252... Line 1252...
1252
0003f4   3200     RRCF      0x0,0x1,0x0                                                                                     
1252
0003f4   3200     RRCF      0x0,0x1,0x0                                                                                     
1253
0003f6   06e8     DECF      0xe8,0x1,0x0                                                                                    
1253
0003f6   06e8     DECF      0xe8,0x1,0x0                                                                                    
1254
0003f8   e1f9     BNZ       0x3ec                                                                                           
1254
0003f8   e1f9     BNZ       0x3ec                                                                                           
1255
0003fa   5000     MOVF      0x0,0x0,0x0                                                                                     
1255
0003fa   5000     MOVF      0x0,0x0,0x0                                                                                     
1256
0003fc   6e63     MOVWF     0x63,0x0                                                                                        
1256
0003fc   6e63     MOVWF     0x63,0x0                                                                                        
1257
0003fe   0ef1     MOVLW     0xf1                   	RXB0EIDL =  (BYTE)cm.ident;                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
1257
0003fe   0ef1     MOVLW     0xf1                   	RXB0EIDL =  (BYTE)cm.ident;                                             F:\MCP\projects\CAN\Source\CAN.c
1258
000400   50db     MOVF      0xdb,0x0,0x0                                                                                    
1258
000400   50db     MOVF      0xdb,0x0,0x0                                                                                    
1259
000402   6e64     MOVWF     0x64,0x0                                                                                        
1259
000402   6e64     MOVWF     0x64,0x0                                                                                        
1260
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1260
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1261
                                           		}                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
1261
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
1262
000404   d02f     BRA       0x464          		else                                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
1262
000404   d02f     BRA       0x464          		else                                                                           F:\MCP\projects\CAN\Source\CAN.c
1263
                                           		{                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
1263
                                           		{                                                                              F:\MCP\projects\CAN\Source\CAN.c
1264
                                           			//Write standard ident.                                                       F:\MCP\projects\CAN\canNode\Source\CAN.c
1264
                                           			//Write standard ident.                                                       F:\MCP\projects\CAN\Source\CAN.c
1265
                                           		                                                                               F:\MCP\projects\CAN\canNode\Source\CAN.c
1265
                                           		                                                                               F:\MCP\projects\CAN\Source\CAN.c
1266
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\canNode\Source\CAN.c
1266
                                           			//xx xx xx xx xx 10 09 08   07 06 05 04 03 02 01 00                           F:\MCP\projects\CAN\Source\CAN.c
1267
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1267
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1268
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1268
                                                   	//RXB0SIDH 10 09 08 07 06 05 04 03                                      F:\MCP\projects\CAN\Source\CAN.c
1269
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\canNode\Source\CAN.c
1269
                                                   	//RXB0SIDL 02 01 00 xx xx xx xx xx                                      F:\MCP\projects\CAN\Source\CAN.c
1270
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1270
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1271
000406   0ef1     MOVLW     0xf1                  		RXB0SIDH=  (BYTE)(cm.ident>>3);                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1271
000406   0ef1     MOVLW     0xf1                  		RXB0SIDH=  (BYTE)(cm.ident>>3);                                         F:\MCP\projects\CAN\Source\CAN.c
1272
000408   cfdb     MOVFF     0xfdb,0x0                                                                                       
1272
000408   cfdb     MOVFF     0xfdb,0x0                                                                                       
1273
00040a   f000                                                                                                               
1273
00040a   f000                                                                                                               
1274
00040c   0ef2     MOVLW     0xf2                                                                                            
1274
00040c   0ef2     MOVLW     0xf2                                                                                            
1275
00040e   cfdb     MOVFF     0xfdb,0x1                                                                                       
1275
00040e   cfdb     MOVFF     0xfdb,0x1                                                                                       
1276
000410   f001                                                                                                               
1276
000410   f001                                                                                                               
Line 1288... Line 1288...
1288
000428   3200     RRCF      0x0,0x1,0x0                                                                                     
1288
000428   3200     RRCF      0x0,0x1,0x0                                                                                     
1289
00042a   06e8     DECF      0xe8,0x1,0x0                                                                                    
1289
00042a   06e8     DECF      0xe8,0x1,0x0                                                                                    
1290
00042c   e1f9     BNZ       0x420                                                                                           
1290
00042c   e1f9     BNZ       0x420                                                                                           
1291
00042e   5000     MOVF      0x0,0x0,0x0                                                                                     
1291
00042e   5000     MOVF      0x0,0x0,0x0                                                                                     
1292
000430   6e61     MOVWF     0x61,0x0                                                                                        
1292
000430   6e61     MOVWF     0x61,0x0                                                                                        
1293
000432   0ef1     MOVLW     0xf1                   	RXB0SIDL= ((BYTE)(cm.ident<<5) & 0xE0);                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
1293
000432   0ef1     MOVLW     0xf1                   	RXB0SIDL= ((BYTE)(cm.ident<<5) & 0xE0);                                 F:\MCP\projects\CAN\Source\CAN.c
1294
000434   cfdb     MOVFF     0xfdb,0x0                                                                                       
1294
000434   cfdb     MOVFF     0xfdb,0x0                                                                                       
1295
000436   f000                                                                                                               
1295
000436   f000                                                                                                               
1296
000438   0ef2     MOVLW     0xf2                                                                                            
1296
000438   0ef2     MOVLW     0xf2                                                                                            
1297
00043a   cfdb     MOVFF     0xfdb,0x1                                                                                       
1297
00043a   cfdb     MOVFF     0xfdb,0x1                                                                                       
1298
00043c   f001                                                                                                               
1298
00043c   f001                                                                                                               
Line 1313... Line 1313...
1313
00045a   06e8     DECF      0xe8,0x1,0x0                                                                                    
1313
00045a   06e8     DECF      0xe8,0x1,0x0                                                                                    
1314
00045c   e1f9     BNZ       0x450                                                                                           
1314
00045c   e1f9     BNZ       0x450                                                                                           
1315
00045e   0ee0     MOVLW     0xe0                                                                                            
1315
00045e   0ee0     MOVLW     0xe0                                                                                            
1316
000460   1400     ANDWF     0x0,0x0,0x0                                                                                     
1316
000460   1400     ANDWF     0x0,0x0,0x0                                                                                     
1317
000462   6e62     MOVWF     0x62,0x0                                                                                        
1317
000462   6e62     MOVWF     0x62,0x0                                                                                        
1318
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1318
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1319
                                           		}                                                                              F:\MCP\projects\CAN\canNode\Source\CAN.c
1319
                                           		}                                                                              F:\MCP\projects\CAN\Source\CAN.c
1320
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1320
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1321
                                           		// Data length                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
1321
                                           		// Data length                                                                 F:\MCP\projects\CAN\Source\CAN.c
1322
000464   0ef6     MOVLW     0xf6           		if (cm.data_length>8) RXB0DLC=8; else RXB0DLC=cm.data_length;                  F:\MCP\projects\CAN\canNode\Source\CAN.c
1322
000464   0ef6     MOVLW     0xf6           		if (cm.data_length>8) RXB0DLC=8; else RXB0DLC=cm.data_length;                  F:\MCP\projects\CAN\Source\CAN.c
1323
000466   50db     MOVF      0xdb,0x0,0x0                                                                                    
1323
000466   50db     MOVF      0xdb,0x0,0x0                                                                                    
1324
000468   0808     SUBLW     0x8                                                                                             
1324
000468   0808     SUBLW     0x8                                                                                             
1325
00046a   e203     BC        0x472                                                                                           
1325
00046a   e203     BC        0x472                                                                                           
1326
00046c   0e08     MOVLW     0x8                                                                                             
1326
00046c   0e08     MOVLW     0x8                                                                                             
1327
00046e   6e65     MOVWF     0x65,0x0                                                                                        
1327
00046e   6e65     MOVWF     0x65,0x0                                                                                        
1328
000470   d003     BRA       0x478                                                                                           
1328
000470   d003     BRA       0x478                                                                                           
1329
000472   0ef6     MOVLW     0xf6                                                                                            
1329
000472   0ef6     MOVLW     0xf6                                                                                            
1330
000474   50db     MOVF      0xdb,0x0,0x0                                                                                    
1330
000474   50db     MOVF      0xdb,0x0,0x0                                                                                    
1331
000476   6e65     MOVWF     0x65,0x0                                                                                        
1331
000476   6e65     MOVWF     0x65,0x0                                                                                        
1332
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1332
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1333
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
1333
                                           		// Data one bye one, for speed                                                 F:\MCP\projects\CAN\Source\CAN.c
1334
000478   0ef7     MOVLW     0xf7           		RXB0D0=cm.data[0];	RXB0D1=cm.data[1];                                          F:\MCP\projects\CAN\canNode\Source\CAN.c
1334
000478   0ef7     MOVLW     0xf7           		RXB0D0=cm.data[0];	RXB0D1=cm.data[1];                                          F:\MCP\projects\CAN\Source\CAN.c
1335
00047a   50db     MOVF      0xdb,0x0,0x0                                                                                    
1335
00047a   50db     MOVF      0xdb,0x0,0x0                                                                                    
1336
00047c   6e66     MOVWF     0x66,0x0                                                                                        
1336
00047c   6e66     MOVWF     0x66,0x0                                                                                        
1337
00047e   0ef8     MOVLW     0xf8                                                                                            
1337
00047e   0ef8     MOVLW     0xf8                                                                                            
1338
000480   50db     MOVF      0xdb,0x0,0x0                                                                                    
1338
000480   50db     MOVF      0xdb,0x0,0x0                                                                                    
1339
000482   6e67     MOVWF     0x67,0x0                                                                                        
1339
000482   6e67     MOVWF     0x67,0x0                                                                                        
1340
000484   0ef9     MOVLW     0xf9           		RXB0D2=cm.data[2]; 	RXB0D3=cm.data[3];                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1340
000484   0ef9     MOVLW     0xf9           		RXB0D2=cm.data[2]; 	RXB0D3=cm.data[3];                                         F:\MCP\projects\CAN\Source\CAN.c
1341
000486   50db     MOVF      0xdb,0x0,0x0                                                                                    
1341
000486   50db     MOVF      0xdb,0x0,0x0                                                                                    
1342
000488   6e68     MOVWF     0x68,0x0                                                                                        
1342
000488   6e68     MOVWF     0x68,0x0                                                                                        
1343
00048a   0efa     MOVLW     0xfa                                                                                            
1343
00048a   0efa     MOVLW     0xfa                                                                                            
1344
00048c   50db     MOVF      0xdb,0x0,0x0                                                                                    
1344
00048c   50db     MOVF      0xdb,0x0,0x0                                                                                    
1345
00048e   6e69     MOVWF     0x69,0x0                                                                                        
1345
00048e   6e69     MOVWF     0x69,0x0                                                                                        
1346
000490   0efb     MOVLW     0xfb           		RXB0D4=cm.data[4]; 	RXB0D5=cm.data[5];                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1346
000490   0efb     MOVLW     0xfb           		RXB0D4=cm.data[4]; 	RXB0D5=cm.data[5];                                         F:\MCP\projects\CAN\Source\CAN.c
1347
000492   50db     MOVF      0xdb,0x0,0x0                                                                                    
1347
000492   50db     MOVF      0xdb,0x0,0x0                                                                                    
1348
000494   6e6a     MOVWF     0x6a,0x0                                                                                        
1348
000494   6e6a     MOVWF     0x6a,0x0                                                                                        
1349
000496   0efc     MOVLW     0xfc                                                                                            
1349
000496   0efc     MOVLW     0xfc                                                                                            
1350
000498   50db     MOVF      0xdb,0x0,0x0                                                                                    
1350
000498   50db     MOVF      0xdb,0x0,0x0                                                                                    
1351
00049a   6e6b     MOVWF     0x6b,0x0                                                                                        
1351
00049a   6e6b     MOVWF     0x6b,0x0                                                                                        
1352
00049c   0efd     MOVLW     0xfd           		RXB0D6=cm.data[6]; 	RXB0D7=cm.data[7];                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1352
00049c   0efd     MOVLW     0xfd           		RXB0D6=cm.data[6]; 	RXB0D7=cm.data[7];                                         F:\MCP\projects\CAN\Source\CAN.c
1353
00049e   50db     MOVF      0xdb,0x0,0x0                                                                                    
1353
00049e   50db     MOVF      0xdb,0x0,0x0                                                                                    
1354
0004a0   6e6c     MOVWF     0x6c,0x0                                                                                        
1354
0004a0   6e6c     MOVWF     0x6c,0x0                                                                                        
1355
0004a2   0efe     MOVLW     0xfe                                                                                            
1355
0004a2   0efe     MOVLW     0xfe                                                                                            
1356
0004a4   50db     MOVF      0xdb,0x0,0x0                                                                                    
1356
0004a4   50db     MOVF      0xdb,0x0,0x0                                                                                    
1357
0004a6   6e6d     MOVWF     0x6d,0x0                                                                                        
1357
0004a6   6e6d     MOVWF     0x6d,0x0                                                                                        
1358
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1358
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1359
                                           		// set extended or not                                                         F:\MCP\projects\CAN\canNode\Source\CAN.c
1359
                                           		// set extended or not                                                         F:\MCP\projects\CAN\Source\CAN.c
1360
0004a8   0ef5     MOVLW     0xf5           		RXB0SIDLbits.EXID=(cm.extended==TRUE?1:0);                                     F:\MCP\projects\CAN\canNode\Source\CAN.c
1360
0004a8   0ef5     MOVLW     0xf5           		RXB0SIDLbits.EXID=(cm.extended==TRUE?1:0);                                     F:\MCP\projects\CAN\Source\CAN.c
1361
0004aa   04db     DECF      0xdb,0x0,0x0                                                                                    
1361
0004aa   04db     DECF      0xdb,0x0,0x0                                                                                    
1362
0004ac   e102     BNZ       0x4b2                                                                                           
1362
0004ac   e102     BNZ       0x4b2                                                                                           
1363
0004ae   0e01     MOVLW     0x1                                                                                             
1363
0004ae   0e01     MOVLW     0x1                                                                                             
1364
0004b0   d001     BRA       0x4b4                                                                                           
1364
0004b0   d001     BRA       0x4b4                                                                                           
1365
0004b2   0e00     MOVLW     0x0                                                                                             
1365
0004b2   0e00     MOVLW     0x0                                                                                             
1366
0004b4   b0e8     BTFSC     0xe8,0x0,0x0                                                                                    
1366
0004b4   b0e8     BTFSC     0xe8,0x0,0x0                                                                                    
1367
0004b6   8662     BSF       0x62,0x3,0x0                                                                                    
1367
0004b6   8662     BSF       0x62,0x3,0x0                                                                                    
1368
0004b8   a0e8     BTFSS     0xe8,0x0,0x0                                                                                    
1368
0004b8   a0e8     BTFSS     0xe8,0x0,0x0                                                                                    
1369
0004ba   9662     BCF       0x62,0x3,0x0                                                                                    
1369
0004ba   9662     BCF       0x62,0x3,0x0                                                                                    
1370
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1370
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1371
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1371
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1372
                                           		// mark as redy to transmit                                                    F:\MCP\projects\CAN\canNode\Source\CAN.c
1372
                                           		// mark as redy to transmit                                                    F:\MCP\projects\CAN\Source\CAN.c
1373
                                           		_asm                                                                           F:\MCP\projects\CAN\canNode\Source\CAN.c
1373
                                           		_asm                                                                           F:\MCP\projects\CAN\Source\CAN.c
1374
0004bc   8660     BSF       0x60,0x3,0x0   			bsf RXB0CON, 3, 0                                                             F:\MCP\projects\CAN\canNode\Source\CAN.c
1374
0004bc   8660     BSF       0x60,0x3,0x0   			bsf RXB0CON, 3, 0                                                             F:\MCP\projects\CAN\Source\CAN.c
1375
                                           		_endasm                                                                        F:\MCP\projects\CAN\canNode\Source\CAN.c
1375
                                           		_endasm                                                                        F:\MCP\projects\CAN\Source\CAN.c
1376
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1376
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1377
0004be   0e01     MOVLW     0x1            		return TRUE;                                                                   F:\MCP\projects\CAN\canNode\Source\CAN.c
1377
0004be   0e01     MOVLW     0x1            		return TRUE;                                                                   F:\MCP\projects\CAN\Source\CAN.c
1378
0004c0   d000     BRA       0x4c2                                                                                           
1378
0004c0   d000     BRA       0x4c2                                                                                           
1379
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1379
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1380
0004c2   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\canNode\Source\CAN.c
1380
0004c2   52e5     MOVF      0xe5,0x1,0x0   }                                                                                F:\MCP\projects\CAN\Source\CAN.c
1381
0004c4   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1381
0004c4   cfe7     MOVFF     0xfe7,0xfd9                                                                                     
1382
0004c6   ffd9                                                                                                               
1382
0004c6   ffd9                                                                                                               
1383
0004c8   0012     RETURN    0x0                                                                                             
1383
0004c8   0012     RETURN    0x0                                                                                             
1384
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1384
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1385
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1385
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1386
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\CAN.c
1386
                                                                                                                            F:\MCP\projects\CAN\Source\CAN.c
1387
                                           #endif //USE_CAN                                                                 F:\MCP\projects\CAN\canNode\Source\CAN.c
1387
                                           #endif //USE_CAN                                                                 F:\MCP\projects\CAN\Source\CAN.c
1388
                                           /*********************************************************************           F:\MCP\projects\CAN\canNode\Source\Tick.c
1388
                                           /*********************************************************************           F:\MCP\projects\CAN\Source\Tick.c
1389
                                            *                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1389
                                            *                                                                               F:\MCP\projects\CAN\Source\Tick.c
1390
                                            *                  Ticker service                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1390
                                            *                  Ticker service                                               F:\MCP\projects\CAN\Source\Tick.c
1391
                                            *                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1391
                                            *                                                                               F:\MCP\projects\CAN\Source\Tick.c
1392
                                            *********************************************************************           F:\MCP\projects\CAN\canNode\Source\Tick.c
1392
                                            *********************************************************************           F:\MCP\projects\CAN\Source\Tick.c
1393
                                            * FileName:        Tick.c                                                       F:\MCP\projects\CAN\canNode\Source\Tick.c
1393
                                            * FileName:        Tick.c                                                       F:\MCP\projects\CAN\Source\Tick.c
1394
                                            *                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1394
                                            *                                                                               F:\MCP\projects\CAN\Source\Tick.c
1395
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\canNode\Source\Tick.c
1395
                                            * Author               Date    Comment                                          F:\MCP\projects\CAN\Source\Tick.c
1396
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\canNode\Source\Tick.c
1396
                                            *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~           F:\MCP\projects\CAN\Source\Tick.c
1397
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\canNode\Source\Tick.c
1397
                                            * Johan Böhlin     21-10-06 	Original        (Rev 1.0)                          F:\MCP\projects\CAN\Source\Tick.c
1398
                                            ********************************************************************/           F:\MCP\projects\CAN\canNode\Source\Tick.c
1398
                                            ********************************************************************/           F:\MCP\projects\CAN\Source\Tick.c
1399
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1399
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1400
                                           #define TICK_INCLUDE                                                             F:\MCP\projects\CAN\canNode\Source\Tick.c
1400
                                           #define TICK_INCLUDE                                                             F:\MCP\projects\CAN\Source\Tick.c
1401
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1401
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1402
                                           #include &quot;..\Include\Tick.h&quot;                                                     F:\MCP\projects\CAN\canNode\Source\Tick.c
1402
                                           #include &lt;Tick.h&gt;                                                                F:\MCP\projects\CAN\Source\Tick.c
1403
                                           #include &quot;..\Include\Compiler.h&quot;                                                 F:\MCP\projects\CAN\canNode\Source\Tick.c
1403
                                           #include &lt;Compiler.h&gt;                                                            F:\MCP\projects\CAN\Source\Tick.c
1404
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1404
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1405
                                           #define TICK_TEMP_VALUE_1 ((INSTR_FREQ) / (TICKS_PER_SECOND * TICK_PRESCALE_VALUE)) F:\MCP\projects\CAN\canNode\Source\Tick.c
1405
                                           #define TICK_TEMP_VALUE_1 ((INSTR_FREQ) / (TICKS_PER_SECOND * TICK_PRESCALE_VALUE)) F:\MCP\projects\CAN\Source\Tick.c
1406
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1406
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1407
                                           #if TICK_TEMP_VALUE_1 > 60000                                                    F:\MCP\projects\CAN\canNode\Source\Tick.c
1407
                                           #if TICK_TEMP_VALUE_1 > 60000                                                    F:\MCP\projects\CAN\Source\Tick.c
1408
                                           #error TICK_PER_SECOND value cannot be programmed with current CLOCK_FREQ        F:\MCP\projects\CAN\canNode\Source\Tick.c
1408
                                           #error TICK_PER_SECOND value cannot be programmed with current CLOCK_FREQ        F:\MCP\projects\CAN\Source\Tick.c
1409
                                           #error Either lower TICK_PER_SECOND or manually configure the Timer              F:\MCP\projects\CAN\canNode\Source\Tick.c
1409
                                           #error Either lower TICK_PER_SECOND or manually configure the Timer              F:\MCP\projects\CAN\Source\Tick.c
1410
                                           #endif                                                                           F:\MCP\projects\CAN\canNode\Source\Tick.c
1410
                                           #endif                                                                           F:\MCP\projects\CAN\Source\Tick.c
1411
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1411
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1412
                                           #define TICK_TEMP_VALUE         (65535 - TICK_TEMP_VALUE_1)                      F:\MCP\projects\CAN\canNode\Source\Tick.c
1412
                                           #define TICK_TEMP_VALUE         (65535 - TICK_TEMP_VALUE_1)                      F:\MCP\projects\CAN\Source\Tick.c
1413
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1413
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1414
                                           #define TICK_COUNTER_HIGH       ((TICK_TEMP_VALUE >> 8) & 0xff)                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1414
                                           #define TICK_COUNTER_HIGH       ((TICK_TEMP_VALUE >> 8) & 0xff)                  F:\MCP\projects\CAN\Source\Tick.c
1415
                                           #define TICK_COUNTER_LOW        (TICK_TEMP_VALUE & 0xff)                         F:\MCP\projects\CAN\canNode\Source\Tick.c
1415
                                           #define TICK_COUNTER_LOW        (TICK_TEMP_VALUE & 0xff)                         F:\MCP\projects\CAN\Source\Tick.c
1416
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1416
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1417
                                           #if (TICK_PRESCALE_VALUE == 2)                                                   F:\MCP\projects\CAN\canNode\Source\Tick.c
1417
                                           #if (TICK_PRESCALE_VALUE == 2)                                                   F:\MCP\projects\CAN\Source\Tick.c
1418
                                               #define TIMER_PRESCALE  (0)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1418
                                               #define TIMER_PRESCALE  (0)                                                  F:\MCP\projects\CAN\Source\Tick.c
1419
                                           #elif ( TICK_PRESCALE_VALUE == 4 )                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1419
                                           #elif ( TICK_PRESCALE_VALUE == 4 )                                               F:\MCP\projects\CAN\Source\Tick.c
1420
                                               #define TIMER_PRESCALE  (1)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1420
                                               #define TIMER_PRESCALE  (1)                                                  F:\MCP\projects\CAN\Source\Tick.c
1421
                                           #elif ( TICK_PRESCALE_VALUE == 8 )                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1421
                                           #elif ( TICK_PRESCALE_VALUE == 8 )                                               F:\MCP\projects\CAN\Source\Tick.c
1422
                                               #define TIMER_PRESCALE  (2)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1422
                                               #define TIMER_PRESCALE  (2)                                                  F:\MCP\projects\CAN\Source\Tick.c
1423
                                           #elif ( TICK_PRESCALE_VALUE == 16 )                                              F:\MCP\projects\CAN\canNode\Source\Tick.c
1423
                                           #elif ( TICK_PRESCALE_VALUE == 16 )                                              F:\MCP\projects\CAN\Source\Tick.c
1424
                                               #define TIMER_PRESCALE  (3)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1424
                                               #define TIMER_PRESCALE  (3)                                                  F:\MCP\projects\CAN\Source\Tick.c
1425
                                           #elif ( TICK_PRESCALE_VALUE == 32 )                                              F:\MCP\projects\CAN\canNode\Source\Tick.c
1425
                                           #elif ( TICK_PRESCALE_VALUE == 32 )                                              F:\MCP\projects\CAN\Source\Tick.c
1426
                                               #define TIMER_PRESCALE  (4)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1426
                                               #define TIMER_PRESCALE  (4)                                                  F:\MCP\projects\CAN\Source\Tick.c
1427
                                           #elif ( TICK_PRESCALE_VALUE == 64 )                                              F:\MCP\projects\CAN\canNode\Source\Tick.c
1427
                                           #elif ( TICK_PRESCALE_VALUE == 64 )                                              F:\MCP\projects\CAN\Source\Tick.c
1428
                                               #define TIMER_PRESCALE  (5)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1428
                                               #define TIMER_PRESCALE  (5)                                                  F:\MCP\projects\CAN\Source\Tick.c
1429
                                           #elif ( TICK_PRESCALE_VALUE == 128 )                                             F:\MCP\projects\CAN\canNode\Source\Tick.c
1429
                                           #elif ( TICK_PRESCALE_VALUE == 128 )                                             F:\MCP\projects\CAN\Source\Tick.c
1430
                                               #define TIMER_PRESCALE  (6)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1430
                                               #define TIMER_PRESCALE  (6)                                                  F:\MCP\projects\CAN\Source\Tick.c
1431
                                           #elif ( TICK_PRESCALE_VALUE == 256 )                                             F:\MCP\projects\CAN\canNode\Source\Tick.c
1431
                                           #elif ( TICK_PRESCALE_VALUE == 256 )                                             F:\MCP\projects\CAN\Source\Tick.c
1432
                                               #define TIMER_PRESCALE  (7)                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1432
                                               #define TIMER_PRESCALE  (7)                                                  F:\MCP\projects\CAN\Source\Tick.c
1433
                                           #else                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1433
                                           #else                                                                            F:\MCP\projects\CAN\Source\Tick.c
1434
                                               #error Invalid TICK_PRESCALE_VALUE specified.                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1434
                                               #error Invalid TICK_PRESCALE_VALUE specified.                                F:\MCP\projects\CAN\Source\Tick.c
1435
                                           #endif                                                                           F:\MCP\projects\CAN\canNode\Source\Tick.c
1435
                                           #endif                                                                           F:\MCP\projects\CAN\Source\Tick.c
1436
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1436
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1437
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1437
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1438
                                           TICK TickCount = 0;	// 10ms/unit                                                 F:\MCP\projects\CAN\canNode\Source\Tick.c
1438
                                           TICK TickCount = 0;	// 10ms/unit                                                 F:\MCP\projects\CAN\Source\Tick.c
1439
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1439
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1440
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1440
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1441
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1441
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1442
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1442
                                           /*                                                                               F:\MCP\projects\CAN\Source\Tick.c
1443
                                           *	Function: TickInit                                                             F:\MCP\projects\CAN\canNode\Source\Tick.c
1443
                                           *	Function: TickInit                                                             F:\MCP\projects\CAN\Source\Tick.c
1444
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1444
                                           *                                                                                F:\MCP\projects\CAN\Source\Tick.c
1445
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canNode\Source\Tick.c
1445
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\Tick.c
1446
                                           *	Output: Tick manager is initialized.                                           F:\MCP\projects\CAN\canNode\Source\Tick.c
1446
                                           *	Output: Tick manager is initialized.                                           F:\MCP\projects\CAN\Source\Tick.c
1447
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\canNode\Source\Tick.c
1447
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\Source\Tick.c
1448
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1448
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1449
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1449
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1450
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1450
                                           */                                                                               F:\MCP\projects\CAN\Source\Tick.c
1451
                                           #define PERIOD (INSTR_FREQ/256/1000)*TICK_PERIOD_MS                              F:\MCP\projects\CAN\canNode\Source\Tick.c
1451
                                           #define PERIOD (INSTR_FREQ/256/1000)*TICK_PERIOD_MS                              F:\MCP\projects\CAN\Source\Tick.c
1452
                                           void tickInit(void)                                                              F:\MCP\projects\CAN\canNode\Source\Tick.c
1452
                                           void tickInit(void)                                                              F:\MCP\projects\CAN\Source\Tick.c
1453
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1453
                                           {                                                                                F:\MCP\projects\CAN\Source\Tick.c
1454
                                               // Start the timer.                                                          F:\MCP\projects\CAN\canNode\Source\Tick.c
1454
                                               // Start the timer.                                                          F:\MCP\projects\CAN\Source\Tick.c
1455
00090c   0e79     MOVLW     0x79               TMR0L = TICK_COUNTER_LOW;                                                    F:\MCP\projects\CAN\canNode\Source\Tick.c
1455
00090c   0e79     MOVLW     0x79               TMR0L = TICK_COUNTER_LOW;                                                    F:\MCP\projects\CAN\Source\Tick.c
1456
00090e   6ed6     MOVWF     0xd6,0x0                                                                                        
1456
00090e   6ed6     MOVWF     0xd6,0x0                                                                                        
1457
000910   0efe     MOVLW     0xfe               TMR0H = TICK_COUNTER_HIGH;                                                   F:\MCP\projects\CAN\canNode\Source\Tick.c
1457
000910   0efe     MOVLW     0xfe               TMR0H = TICK_COUNTER_HIGH;                                                   F:\MCP\projects\CAN\Source\Tick.c
1458
000912   6ed7     MOVWF     0xd7,0x0                                                                                        
1458
000912   6ed7     MOVWF     0xd7,0x0                                                                                        
1459
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1459
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1460
                                               // 16-BIT, internal timer, PSA set to 1:256                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1460
                                               // 16-BIT, internal timer, PSA set to 1:256                                  F:\MCP\projects\CAN\Source\Tick.c
1461
000914   0e07     MOVLW     0x7                T0CON = 0b00000000 | TIMER_PRESCALE;                                         F:\MCP\projects\CAN\canNode\Source\Tick.c
1461
000914   0e07     MOVLW     0x7                T0CON = 0b00000000 | TIMER_PRESCALE;                                         F:\MCP\projects\CAN\Source\Tick.c
1462
000916   6ed5     MOVWF     0xd5,0x0                                                                                        
1462
000916   6ed5     MOVWF     0xd5,0x0                                                                                        
1463
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1463
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1464
                                               // Start the timer.                                                          F:\MCP\projects\CAN\canNode\Source\Tick.c
1464
                                               // Start the timer.                                                          F:\MCP\projects\CAN\Source\Tick.c
1465
000918   8ed5     BSF       0xd5,0x7,0x0       T0CONbits.TMR0ON = 1;                                                        F:\MCP\projects\CAN\canNode\Source\Tick.c
1465
000918   8ed5     BSF       0xd5,0x7,0x0       T0CONbits.TMR0ON = 1;                                                        F:\MCP\projects\CAN\Source\Tick.c
1466
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1466
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1467
00091a   84f2     BSF       0xf2,0x2,0x0       INTCONbits.TMR0IF = 1;                                                       F:\MCP\projects\CAN\canNode\Source\Tick.c
1467
00091a   84f2     BSF       0xf2,0x2,0x0       INTCONbits.TMR0IF = 1;                                                       F:\MCP\projects\CAN\Source\Tick.c
1468
00091c   8af2     BSF       0xf2,0x5,0x0       INTCONbits.TMR0IE = 1;                                                       F:\MCP\projects\CAN\canNode\Source\Tick.c
1468
00091c   8af2     BSF       0xf2,0x5,0x0       INTCONbits.TMR0IE = 1;                                                       F:\MCP\projects\CAN\Source\Tick.c
1469
00091e   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1469
00091e   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\Tick.c
1470
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1470
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1471
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1471
                                           /*                                                                               F:\MCP\projects\CAN\Source\Tick.c
1472
                                           *	Function: TickGet                                                              F:\MCP\projects\CAN\canNode\Source\Tick.c
1472
                                           *	Function: TickGet                                                              F:\MCP\projects\CAN\Source\Tick.c
1473
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1473
                                           *                                                                                F:\MCP\projects\CAN\Source\Tick.c
1474
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canNode\Source\Tick.c
1474
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\Tick.c
1475
                                           *	Output: Current tick value is given, 1 tick represents approximately 10ms      F:\MCP\projects\CAN\canNode\Source\Tick.c
1475
                                           *	Output: Current tick value is given, 1 tick represents approximately 10ms      F:\MCP\projects\CAN\Source\Tick.c
1476
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\canNode\Source\Tick.c
1476
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\Source\Tick.c
1477
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1477
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1478
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1478
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1479
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1479
                                           */                                                                               F:\MCP\projects\CAN\Source\Tick.c
1480
                                           TICK tickGet(void)                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1480
                                           TICK tickGet(void)                                                               F:\MCP\projects\CAN\Source\Tick.c
1481
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1481
                                           {                                                                                F:\MCP\projects\CAN\Source\Tick.c
1482
000920   c072     MOVFF     0x72,0x18          return TickCount;                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1482
000920   c072     MOVFF     0x72,0x18          return TickCount;                                                            F:\MCP\projects\CAN\Source\Tick.c
1483
000922   f018                                                                                                               
1483
000922   f018                                                                                                               
1484
000924   c073     MOVFF     0x73,0x19                                                                                       
1484
000924   c073     MOVFF     0x73,0x19                                                                                       
1485
000926   f019                                                                                                               
1485
000926   f019                                                                                                               
1486
000928   c074     MOVFF     0x74,0x1a                                                                                       
1486
000928   c074     MOVFF     0x74,0x1a                                                                                       
1487
00092a   f01a                                                                                                               
1487
00092a   f01a                                                                                                               
1488
00092c   c075     MOVFF     0x75,0x1b                                                                                       
1488
00092c   c075     MOVFF     0x75,0x1b                                                                                       
1489
00092e   f01b                                                                                                               
1489
00092e   f01b                                                                                                               
1490
000930   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1490
000930   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\Tick.c
1491
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1491
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1492
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1492
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1493
                                           /*                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1493
                                           /*                                                                               F:\MCP\projects\CAN\Source\Tick.c
1494
                                           *	Function: tickUpdate                                                           F:\MCP\projects\CAN\canNode\Source\Tick.c
1494
                                           *	Function: tickUpdate                                                           F:\MCP\projects\CAN\Source\Tick.c
1495
                                           *                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1495
                                           *                                                                                F:\MCP\projects\CAN\Source\Tick.c
1496
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\canNode\Source\Tick.c
1496
                                           *	Input:	none                                                                    F:\MCP\projects\CAN\Source\Tick.c
1497
                                           *	Output: none                                                                   F:\MCP\projects\CAN\canNode\Source\Tick.c
1497
                                           *	Output: none                                                                   F:\MCP\projects\CAN\Source\Tick.c
1498
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\canNode\Source\Tick.c
1498
                                           *	Pre-conditions: TickInit                                                       F:\MCP\projects\CAN\Source\Tick.c
1499
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1499
                                           *	Affects: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1500
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\canNode\Source\Tick.c
1500
                                           *	Depends: none                                                                  F:\MCP\projects\CAN\Source\Tick.c
1501
                                           */                                                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1501
                                           */                                                                               F:\MCP\projects\CAN\Source\Tick.c
1502
                                           void tickUpdate(void)                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1502
                                           void tickUpdate(void)                                                            F:\MCP\projects\CAN\Source\Tick.c
1503
                                           {                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1503
                                           {                                                                                F:\MCP\projects\CAN\Source\Tick.c
1504
000932   a4f2     BTFSS     0xf2,0x2,0x0       if(INTCONbits.TMR0IF)                                                        F:\MCP\projects\CAN\canNode\Source\Tick.c
1504
000932   a4f2     BTFSS     0xf2,0x2,0x0       if(INTCONbits.TMR0IF)                                                        F:\MCP\projects\CAN\Source\Tick.c
1505
000934   d00b     BRA       0x94c                                                                                           
1505
000934   d00b     BRA       0x94c                                                                                           
1506
                                               {                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1506
                                               {                                                                            F:\MCP\projects\CAN\Source\Tick.c
1507
000936   0efe     MOVLW     0xfe                   TMR0H = TICK_COUNTER_HIGH;                                               F:\MCP\projects\CAN\canNode\Source\Tick.c
1507
000936   0efe     MOVLW     0xfe                   TMR0H = TICK_COUNTER_HIGH;                                               F:\MCP\projects\CAN\Source\Tick.c
1508
000938   6ed7     MOVWF     0xd7,0x0                                                                                        
1508
000938   6ed7     MOVWF     0xd7,0x0                                                                                        
1509
00093a   0e79     MOVLW     0x79                   TMR0L = TICK_COUNTER_LOW;                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1509
00093a   0e79     MOVLW     0x79                   TMR0L = TICK_COUNTER_LOW;                                                F:\MCP\projects\CAN\Source\Tick.c
1510
00093c   6ed6     MOVWF     0xd6,0x0                                                                                        
1510
00093c   6ed6     MOVWF     0xd6,0x0                                                                                        
1511
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1511
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1512
00093e   0100     MOVLB     0x0                    TickCount++;                                                             F:\MCP\projects\CAN\canNode\Source\Tick.c
1512
00093e   0100     MOVLB     0x0                    TickCount++;                                                             F:\MCP\projects\CAN\Source\Tick.c
1513
000940   2b72     INCF      0x72,0x1,0x1                                                                                    
1513
000940   2b72     INCF      0x72,0x1,0x1                                                                                    
1514
000942   0e00     MOVLW     0x0                                                                                             
1514
000942   0e00     MOVLW     0x0                                                                                             
1515
000944   2373     ADDWFC    0x73,0x1,0x1                                                                                    
1515
000944   2373     ADDWFC    0x73,0x1,0x1                                                                                    
1516
000946   2374     ADDWFC    0x74,0x1,0x1                                                                                    
1516
000946   2374     ADDWFC    0x74,0x1,0x1                                                                                    
1517
000948   2375     ADDWFC    0x75,0x1,0x1                                                                                    
1517
000948   2375     ADDWFC    0x75,0x1,0x1                                                                                    
1518
                                                                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1518
                                                                                                                            F:\MCP\projects\CAN\Source\Tick.c
1519
00094a   94f2     BCF       0xf2,0x2,0x0           INTCONbits.TMR0IF = 0;                                                   F:\MCP\projects\CAN\canNode\Source\Tick.c
1519
00094a   94f2     BCF       0xf2,0x2,0x0           INTCONbits.TMR0IF = 0;                                                   F:\MCP\projects\CAN\Source\Tick.c
1520
                                               }                                                                            F:\MCP\projects\CAN\canNode\Source\Tick.c
1520
                                               }                                                                            F:\MCP\projects\CAN\Source\Tick.c
1521
00094c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\canNode\Source\Tick.c
1521
00094c   0012     RETURN    0x0            }                                                                                F:\MCP\projects\CAN\Source\Tick.c