STM32F205ZET6单片机,使用PA11和PA12进行CAN通信,收发器无论是ISO1050还是TJA1050,都不成功,发送信息时,CAN_TransmitStatus函数一直返回Pending,请问是为什么啊?
另外,使用CAN分析仪——收发器——PA11,PA12连接时,单片机的PA11和PA12引脚是有波形的,,两个引脚都有方波,TXD上的波形密集些,RXD上面的好像只有一个低脉冲,占空比很高,
主要是使用ISO1050芯片通讯,但是就无法发送数据,也没有办法进入到接收终端之中,中断函数我自认为配置好了,和库函数的配置是一样的,
ISO1050 电路为:有120欧终端电阻,CAN_TX和CAN_RX接上拉电阻472,CANH和CANL之间有120欧终端电阻,并且各串接了一个零欧电阻,
大家交流交流?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
楼主你搞错了,不是批评,也没有指导。我只是表达了个事实。乱的东西你也不会有耐心看的,我们将心比心。
无法进入接收中断,是不是你忘记配置nvic了,还是中断优先级跟其他中断的优先级打架呢?
还有gpio的配置上面,我用F405是如下的配置:
- GPIO_InitStructure.GPIO_Pin = CAN1_RX_GPIO_PIN| CAN1_TX_GPIO_PIN;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; //复用功能
- GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽输出
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz; //100MHz
- GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
复制代码还有,你需要再检查下,gpio是否调用复用函数。你是用can1还是can2这个一定要仔细核对。can的配置,过滤器的配置。我想我给你的资料里面都有介绍。
一周热门 更多>