完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在开发 devBoard S32K3x4EVB-Q172,我正试图弄清楚 FlexCAN 是如何工作的。
我对 FlexCAN_Ip_ConfigRxMb() 函数有疑问。 根据我目前阅读的内容和目前测试的内容,我了解到 FlexCAN_Ip_ConfigRxMb() 函数确实设置了接收消息缓冲区。 但是我找不到uint32 msg_id参数有什么作用。据我了解,它用于过滤帧的ID以便读取或不读取帧。 1.是否有禁用此功能的选项? 2. 有什么方法可以读取所有传入的 CAN 帧而不通过它们的 CAN-ID 进行过滤? 3. 是否有任何关于 FlexCAN 的文档或培训材料? 我的配置设置尽可能简单。我附上了我正在使用的代码,以测试和验证 CAN 功能。 #include "Mcal.h" #include "Clock_Ip.h" #include "FlexCAN_Ip.h" #include "IntCtrl_Ip.h" #include "Siul2_Dio_Ip.h" #include "Siul2_Port_Ip.h" #define MSG_ID 0x601//20u #define RX_MB_IDX 1U #define TX_MB_IDX 0U volatile int exit_code = 0; uint8 dummyData[8] = {1,2,3,4,5,6,7}; volatile uint8_t i = 0; extern void CAN0_ORED_0_31_MB_IRQHandler(void); int main(void) { /* Write your code here */ Clock_Ip_Init(&Clock_Ip_aClockConfig[0]); Siul2_Port_Ip_Init(NUM_OF_CONFIGURED_PINS0, g_pin_mux_InitConfigArr0); //Put the transeiver to Normal Mode Siul2_Dio_Ip_WritePin(CAN_EN_PORT , CAN_EN_PIN , 1); Siul2_Dio_Ip_WritePin(CAN_nSTB_PORT, CAN_nSTB_PIN, 1); IntCtrl_Ip_EnableIrq(FlexCAN0_1_IRQn); IntCtrl_Ip_InstallHandler(FlexCAN0_1_IRQn, CAN0_ORED_0_31_MB_IRQHandler, NULL_PTR); Flexcan_Ip_DataInfoType rx_info = { .msg_id_type = FLEXCAN_MSG_ID_STD, .data_length = 8u, .is_polling = TRUE, .is_remote = FALSE }; Flexcan_Ip_MsgBuffType rxData; FlexCAN_Ip_Init(INST_FLEXCAN_0, &FlexCAN_State0, &FlexCAN_Config0); FlexCAN_Ip_SetStartMode(INST_FLEXCAN_0); FlexCAN_Ip_ConfigRxMb(INST_FLEXCAN_0, RX_MB_IDX, &rx_info, 0); rx_info.is_polling = FALSE; while(1) { // FlexCAN_Ip_Send(INST_FLEXCAN_0, TX_MB_IDX, &rx_info, MSG_ID, (uint8 *)&dummyData); FlexCAN_Ip_Receive(INST_FLEXCAN_0, RX_MB_IDX, &rxData, TRUE); if(FlexCAN_Ip_GetTransferStatus(INST_FLEXCAN_0, RX_MB_IDX) != FLEXCAN_STATUS_SUCCESS) { __asm__ ("nop"); FlexCAN_Ip_MainFunctionRead(INST_FLEXCAN_0, RX_MB_IDX); } // for (i= 0; i < 7; i++) // { // dummyData+= 1; // } } FlexCAN_Ip_SetStopMode(INST_FLEXCAN_0); FlexCAN_Ip_Deinit(INST_FLEXCAN_0); return 0; } 我的外围配置位于下图中: |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1829个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36049 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4173 浏览 0 评论
5768 浏览 1 评论
6549 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4007 浏览 0 评论
449浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
418浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
424浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
507浏览 2评论
544浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 17:51 , Processed in 0.944422 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号