我用STM8——208做CAN总线,在正常模式下,数据能发出去,接收方也有了应答,但接收方就是没有FIFO挂起,查看接收标志位可以查到引脚正在接收,但就是没有消息挂起,不能中断,用查询方式也只是检测到引脚在接收,但没有消息挂起,请问是什么原因? 贴代码 初始化 { CAN_DeInit(); CAN_OperatingModeRequest(CAN_OperatingMode_Initialization);//进入初始化模式 CAN_IER|=0X02;//FIFO接收中断 do { y= CAN_Init(CAN_MasterCtrl_AllDisabled, CAN_Mode_Normal, CAN_SynJumpWidth_3TimeQuantum, CAN_BitSeg1_12TimeQuantum, CAN_BitSeg2_8TimeQuantum, CAN_ClockSource_Internal, 0x8f); }while(y==CAN_InitStatus_Failed); //进入正常模式,关闭所有主控选项 } 接收程序 rec_data= CAN_GetReceivedData(0x00); CAN_ClearITPendingBit(CAN_IT_FMP); //返回值: 8位数据 CAN_FIFORelease(); |
RE:stm8 208做CAN总线遇到的问题求助
回复:stm8 208做CAN总线遇到的问题求助
没有设置接收过滤寄存器。
我所有过滤器都关了,是一定要开过滤器才可以吗?
回复:stm8 208做CAN总线遇到的问题求助
没有设置接收过滤寄存器。
果真是,我之前还以为关闭所有过滤器就能接收任何报文
RE:stm8 208做CAN总线遇到的问题求助