@ -15,7 +15,7 @@ void CAN::transmitMsg(Uint16 boxNumber, const CANMessage& message){
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  0x0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDL . all  =  0x0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MSGCTRL . bit . DLC  =  message . dataLength ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // p_MailBox->MSGCTRL.bit.DLC = message.dataLength;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  message . mdh . all ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDL . all  =  message . mdl . all ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
			
			 
			 
			
				@ -35,7 +35,7 @@ void CAN::transmitMsg(Uint16 boxNumber, const CANMessage& message){
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				} 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				void  CAN : : transmitMsg ( Uint16  boxNumber ,  const  Uint 32 &  message ) { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				void  CAN : : transmitMsg ( Uint16  boxNumber ,  const  Uint 64 &  message ) { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    if  ( boxNumber  >  31 )  return ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    Uint32  mboxControl ( 0 ) ; 
 
			
		 
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
			
			 
			 
			
				@ -46,8 +46,8 @@ void CAN::transmitMsg(Uint16 boxNumber, const Uint32& message){
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  0x0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDL . all  =  0x0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  message  > >  16 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				     
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  message  > >  32 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDL . all  =  message ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // Set TRS for mailbox
 
 
			
		 
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
			
			 
			 
			
				@ -56,17 +56,17 @@ void CAN::transmitMsg(Uint16 boxNumber, const Uint32& message){
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_CanRegs_ - > CANTRS . all  =  CanShadow_ . CANTRS . all ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // Wait for TA bit to be set
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    do  {  CanShadow_ . CANTA . all  =  p_CanRegs_ - > CANTA . all ;  } 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    while ( ( CanShadow_ . CANTA . all  &  mboxControl )  = =  0  ) ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // do { CanShadow_.CANTA.all = p_CanRegs_->CANTA.all; }
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // while((CanShadow_.CANTA.all & mboxControl) == 0 );
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // Clear TA (transmit acknowledge bit)
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    CanShadow_ . CANTA . all  =  0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    CanShadow_ . CANTA . all  | =  mboxControl ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_CanRegs_ - > CANTA . all  =  CanShadow_ . CANTA . all ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // CanShadow_.CANTA.all = 0;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // CanShadow_.CANTA.all |= mboxControl;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // p_CanRegs_->CANTA.all = CanShadow_.CANTA.all;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				} 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				void  CAN : : transmitMsg ( Uint16  boxNumber ,  const  Uint 32 &  message ,  const  Uint16  dlc ) { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				void  CAN : : transmitMsg ( Uint16  boxNumber ,  const  Uint 64 &  message ,  const  Uint16  dlc ) { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    if  ( boxNumber  >  31 )  return ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    Uint32  mboxControl ( 0 ) ; 
 
			
		 
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
			
			 
			 
			
				@ -79,7 +79,7 @@ void CAN::transmitMsg(Uint16 boxNumber, const Uint32& message, const Uint16 dlc)
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDL . all  =  0x0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MSGCTRL . bit . DLC  =  dlc ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  message  > >  16 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDH . all  =  message  > >  32 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_MailBox - > MDL . all  =  message ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // Set TRS for mailbox
 
 
			
		 
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
			
			 
			 
			
				@ -88,13 +88,13 @@ void CAN::transmitMsg(Uint16 boxNumber, const Uint32& message, const Uint16 dlc)
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_CanRegs_ - > CANTRS . all  =  CanShadow_ . CANTRS . all ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // Wait for TA bit to be set
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    do  {  CanShadow_ . CANTA . all  =  p_CanRegs_ - > CANTA . all ;  } 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    while ( ( CanShadow_ . CANTA . all  &  mboxControl )  = =  0  ) ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // do { CanShadow_.CANTA.all = p_CanRegs_->CANTA.all; }
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // while((CanShadow_.CANTA.all & mboxControl) == 0 );
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // Clear TA (transmit acknowledge bit)
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    CanShadow_ . CANTA . all  =  0 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    CanShadow_ . CANTA . all  | =  mboxControl ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    p_CanRegs_ - > CANTA . all  =  CanShadow_ . CANTA . all ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // CanShadow_.CANTA.all = 0;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // CanShadow_.CANTA.all |= mboxControl;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				    // p_CanRegs_->CANTA.all = CanShadow_.CANTA.all;
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				}