Test_TransmitWithAccMask
Default mainpagebasic-can-projectTest_TransmitWithAccMask
Description Source Call Graph
Start Line: 399
void Test_TransmitWithAccMask(unsigned char mailboxNumber, unsigned int dataLow, unsigned int dataHigh)
{
    printf("Transmit, with acceptance mask - Maibox Number: %02d - Data (Low/High): %08X %08X\n\r", 
         mailboxNumber, 
         dataLow,
         dataHigh); 
    
    canTransfer1.can_number = 0;
    canTransfer1.mailbox_number = mailboxNumber;
    canTransfer1.mode_reg = AT91C_CAN_MOT_TX | AT91C_CAN_PRIOR;
    canTransfer1.acceptance_mask_reg = AT91C_CAN_MIDvA & (1<<(18+5));// ID 11
    canTransfer1.identifier = AT91C_CAN_MIDvA & (1<<(18+5));     // ID 11
    canTransfer1.data_low_reg = dataLow;
    canTransfer1.data_high_reg = dataHigh;
    canTransfer1.control_reg = (AT91C_CAN_MDLC & (0x8<<16)); // Mailbox Data Length Code
    CAN_InitMailboxRegisters( &canTransfer1 );
    while( CAN_STATUS_SUCCESS != CAN_Write( &canTransfer1 ) ){}
    // wait answer
    while( CAN_IsInIdle(&canTransfer1) ) {}
    // return in recept
    canTransfer1.can_number = 0;
    canTransfer1.mailbox_number = 1;
    canTransfer1.mode_reg = AT91C_CAN_MOT_RX;
    canTransfer1.acceptance_mask_reg = 0;
    canTransfer1.identifier = AT91C_CAN_MIDvA & (0x0B<<18);  // ID 11
    canTransfer1.data_low_reg = 0x00000000;
    canTransfer1.data_high_reg = 0x00000000;
    canTransfer1.control_reg = 0x00000000;
    CAN_InitMailboxRegisters( &canTransfer1 );
    //InitCANInRecept();
}