大搞有两个问题:用的是KF32A156_ CANFD_ TRANSMIT_POLLING
1.波特率官方没有写设置成多少分辨率:怎么配置成都是500K呀,md写的是默认波特率为仲裁段1Mbps,数据段2Mbps
Can_m_FdControllerInit(CANfd6, Canfd_Controller_AllConfig,Initindex_0);
--》 /* Set CAN Default baudrate */
Can_m_FdBaudrateSet(Can_Controller_Index, Can_ControllerConfig,0);
-------》const Can_Controller_BDRConfigType Canfd_Controller_AllClockAndBDRConfig[1] = {
/* Default 1M hz */
/* Clock and bandrate config 0 : Index 0 */
{
5U, /* Prescale */
1U, /* Swj */
14U, /* Tseg1 */
3U, /* Tseg2 */
CAN_SAMPLE_ONCE /* Sample time */
},
};
2.如何配置成普通can进行发送,接收?
Can_m_FdMailBox_Write(CANfd6, Mailbox_0, &Canfd_Sdu.Can_MailboxHeader[0]);
--》Canfd_Sdu_Type Canfd_Sdu =
{
{
{
{
{
0x00,
0x01,
0x02,
0x03,
0x04,
0x05,
0x06,
0x07,
},
Data_Length_8},//
0x100,
0x000,
CANFD_BRS_DISABLE,//比特率切换。决定在发送 CAN FD 帧时是否切换比特率。0 表示不切换,1 表示切换
CAN_FRAME_CLASSICAL,//作为can帧格式不是can fd格式
CAN_ID_STANDARD,//作为标准帧格式
MAIL_TRANSMIT,//邮件发送
},
},
1,
};
|