完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
文档里面说can外设支持CAN协议。 在can协议里面,有错误帧的概念。 当发现 Bit Check Error的时候,如何让STM32f4发出错误帧呢?请高手解答一下
|
|
相关推荐
3个回答
|
|
参考手册里关于寄存器部分也没有看到使能发送错误帧的位。 比较其他功能可以发现,很多协议固定部分都由硬件自己做了,不需要用户手动去执行了。用户只需要做配置,发送接收,状态检测就够了。 有条件的话可以按照协议规定模拟一下场景,看看是不是硬件自己会发送。
|
|
|
|
CAN通信里只有数据帧和遥控帧需要用户的配置和参与,而错误帧、过载帧之类的是无需用户配置和干预的,是CAN硬件节点自动处理的。具体到错误帧的发送,是CAN节点模块检测到错误后自动发送的,无需CPU的参与和掌控。
|
|
|
|
要让STM32F4发出错误帧,你可以通过设置CAN引擎的相关寄存器来模拟Bit Check Error。
具体步骤如下: 1. 确保CAN模块已经正确初始化,并且CAN总线正常工作。 2. 找到CAN错误控制寄存器(CAN_ESR)。 3. 将CAN错误标志位(ERR)设置为1,表示有错误发生。 4. 可以选择通过设置CAN错误码寄存器(CAN_ECR)来设置错误码。 5. 在设置完成后,CAN模块将自动发送错误帧。 需要注意的是,为了确保CAN总线的正常通信,你应该及时清除错误标志位,并恢复CAN模块到正常工作状态。 对于更详细的操作步骤和代码示例,你可以参考STM32F4的CAN外设手册,该手册可以在ST官方网站上找到。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1802 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1629 浏览 1 评论
1096 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
735 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1685 浏览 2 评论
1944浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
746浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
580浏览 3评论
602浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
565浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 02:13 , Processed in 0.953554 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号