完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我在 STM32H745 和 STM32F042 处理器之间有一条 CAN 总线,使用标准 CAN 进行通信。传输,接收对除以下以外的任何数据包都可以正常工作:
我无法解释。数据字节以0xd2 0x01开头,STM32H7不接收。这一直工作正常,直到我将第二个字节从 0 更改为 1(这是一个版本消息,将主要版本从 0 更改为 1,因此更改)。逻辑分析仪连接到 STM32H7 的 RX 线。使用逻辑分析仪,我可以看到消息通过收发器一直传到 STM32H7。 我在两个 STM32F042 处理器之间使用相同的协议。说话没有问题。当一端切换到STM32H7时,则只有上述特定消息没有收到。其他一切似乎都很好。 如果我发送 <0xd2 0x00 etc> 或 <0xd2 0x02 etc> 或 <0xd2 0x03 etc> 接收没有问题。当第二个字符为 0x01 时,没有消息。 如果是过滤器或配置问题,我将不会收到任何消息。但我确实收到了所有消息。这仅在两个微控制器之间。 有任何想法吗 ?如果您查看该行,CRC 似乎全为 1。难道是那样吗?所有 1 都表示 CRC 错误吗?我重复一遍,这只是这条不吉利的消息。 感谢您提供任何线索。 |
|
相关推荐
1个回答
|
|
除了数据字节 5 之外没有填充,这是一个错误。从 'F042 发送相同的消息并进行比较。
我不熟悉 H7 中的 CAN 模块,但发现它不太可能是模块本身的错误,即我会从这是软件错误的前提开始。尝试使用尽可能少的软件来传输此消息,即没有 Cube、RTOS、中断等。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2711 浏览 1 评论
3235 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1806 浏览 1 评论
3643 浏览 6 评论
6030 浏览 21 评论
1332浏览 4评论
206浏览 3评论
194浏览 3评论
对H747I-DISCO写程序时将CN2的st-link复用为usart1,再次烧录时无法检测到stlink怎么解决?
348浏览 2评论
STM32G474RE芯片只是串口发个数据就发烫严重是怎么回事?
439浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 10:15 , Processed in 1.195931 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号