在线时间2 小时
UID3137287
注册时间2015-7-5
NXP金币0
该用户从未签到
新手上路

- 积分
- 26
- 最后登录
- 2015-10-26
|
void Main_Task(uint_32 parameter)
{
_int_install_unexpected_isr();
_bsp_flexcan_io_init(CAN_DEVICE);
frequency = 125; //selected frequency
data_len_code = 1; //Data length
format = FLEXCAN_STANDARD; //Select message format
/* Select mailbox number */
RX_mailbox_num = 0;
TX_mailbox_num = 1;
RX_remote_mailbox_num = 2;
TX_remote_mailbox_num = 3;
//NODE==1
RX_identifier = 0x123;
TX_identifier = 0x321;
RX_remote_identifier = 0x0F0;
TX_remote_identifier = 0x00F;
bit_timing0 = bit_timing1 = 0; /* We use default settings */
flexcan_mode = FLEXCAN_LOOPBK_MODE; /* Select operation mode:FLEXCAN_LOOPBK_MODE | FLEXCAN_NORMAL_MODE*/
interrupt = FLEXCAN_ENABLE; /* Enable interrupt */
flexcan_error_interrupt = 1; /* Enable error interrupt */
FLEXCAN_Softreset ( CAN_DEVICE);/* Reset FLEXCAN device */
FLEXCAN_Initialize ( CAN_DEVICE, bit_timing0, bit_timing1, frequency, FLEXCAN_IPBUS_CLK);/* Initialize FLEXCAN device */
FLEXCAN_Select_mode( CAN_DEVICE, flexcan_mode);/* Select mode */
FLEXCAN_Set_global_stdmask (CAN_DEVICE, 0x222 );
if(flexcan_error_interrupt == 1)/* Enable error interrupts */
{
FLEXCAN_Install_isr_err_int(CAN_DEVICE, MY_FLEXCAN_ISR );
FLEXCAN_Install_isr_boff_int(CAN_DEVICE, MY_FLEXCAN_ISR );
FLEXCAN_Error_int_enable(CAN_DEVICE);
}
_lwevent_create(&event, LWEVENT_AUTO_CLEAR); /* Set up an event group */
_task_create(0, RX_TASK, 0);
_task_create(0, TX_TASK, 0);
FLEXCAN_Start(CAN_DEVICE);/* Start FLEXCAN */
while(1){}
}
maibox是用来的干嘛的?
mailbox和remote_mailbox有什么区别,
如果我采用flexcan_mode = FLEXCAN_LOOPBK_MODE;模式,发送的时候才用这个哪个mailbox_num,接收就要初始化哪个mailbox_num,
FLEXCAN_Initialize_mailbox( CAN_DEVICE, TX_remote_mailbox_num, TX_remote_identifier,8, FLEXCAN_TX, format,interrupt);
FLEXCAN_Initialize_mailbox( CAN_DEVICE, TX_mailbox_num, TX_identifier,data_len_code, FLEXCAN_TX, format,interrupt);/* Initialize mailbox */
FLEXCAN_Activate_mailbox(CAN_DEVICE, TX_mailbox_num, FLEXCAN_TX_MSG_BUFFER_NOT_ACTIVE);
。。。
result = FLEXCAN_Tx_message(CAN_DEVICE, TX_mailbox_num, TX_identifier, format, data_len_code, &data);
|
|