coolkee5 发表于 2020-6-6 23:05:02

求助stm32f105 + TJA1041只能接收不能发送数据

环境 stm32f105rb,2路CAN【TJA1041】,CAN1和CAN2,目前CAN1可以正常的接收和发送,CAN2是只能接收不能发送。
目前发现的现象:CAN2的TXD和MCU连接,电压是2.93v,这个电压应该是不正常的。 正常的电压是3.5v(CAN1的TXD就是3.5v)
之前都是成熟的产品,最近要移植FreeRTOS代码导致。

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1, ENABLE);//使能CAN1总线时钟
#ifdef _CAN2
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN2, ENABLE);//使能CAN2总线时钟
#endif

通过断点,CAN1的总线时钟使能后TXD电压变成了3.5v就正常。CAN2的总线时钟使能后TXD电压就没有变成3.5v。看了寄存器,
RCC_APB1ENR 0x06000000,CAN1和CAN2的都已经使能了。

coolkee5 发表于 2020-6-7 09:52:16

哪位大神能指点一二:handshake。

butterflyspring 发表于 2020-6-12 11:24:13

按说不管代码对不对,收发器和MCU的电路也不能把电平拉低呀。所以检查一下硬件电路先吧:)
页: [1]
查看完整版本: 求助stm32f105 + TJA1041只能接收不能发送数据