完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
(1)官方提供的例程里面,例如返回的结果不是 HAL_OK 的结果,一般直接跳转到 错误处理的函数里面了。这样写的目的是给开发者根据实际情况自己写异常处理代码。
(2)比较现实是,在项目中,如果STM32运行死机了,是很可能可以在这种 库函数运行返回值不是 HAL_OK 中进行故障定位的。 (3)问题是 一旦出现了这种返回值异常的错误,记录在哪里比较好?芯片自带FLASH区域?EEPROM?在人工干预重启后可以读取出这个结果而且通过串口上报到服务器上,这样就可以远程定位故障。 (4)直属上司类比的给我讲 安卓手机开发有 buge……之类的崩溃记录工具,设备端的STM32是否可以利用同样的手段去记录出错日志?所以引出了我这里想展开讨论的话题。 (5)因为我用FreeRTOS开了5个任务,开启了看门狗,只在其中一个最可能卡死的循环体中放置了喂狗代码,但是通常不起作用,所以我才想起记录错误日志的方案。 |
|
相关推荐
1个回答
|
|
处理STM32的HAL库函数返回异常问题可以采取以下步骤:
1. 在官方提供的例程中,通常会将返回值不是HAL_OK的情况直接跳转到错误处理函数中。这样做的目的是为了让开发者能够根据实际情况自己编写异常处理代码。可以根据实际需求,在错误处理函数中添加相应的处理逻辑,比如输出日志、重启系统等。 2. 在项目中,如果STM32死机了,可以尝试在库函数返回值不是HAL_OK的地方进行故障定位。可以使用调试器、打印日志等方法,对代码执行过程进行跟踪和分析,以确定引起死机的原因。 3. 当出现返回值异常错误时,可以将这些异常记录在芯片自带的FLASH区域或者EEPROM中。在人工干预重启后,可以读取这些记录,并通过串口将记录上报到服务器上。这样,可以通过远程定位故障,更好地分析和解决问题。 4. 对于安卓手机开发中的bug和崩溃问题,可以将其类比到STM32开发中的异常处理。类似于安卓手机开发中的bug处理方式,我们也可以通过记录日志、异常定位等方式来解决STM32的异常问题。 总体来说,处理STM32的HAL库函数返回异常问题需要根据实际情况进行分析和处理。可以借鉴其他领域的经验和方法,结合STM32的特点来制定合适的异常处理策略。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1909 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1678 浏览 1 评论
1171 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
770 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1730 浏览 2 评论
1970浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
806浏览 4评论
stm32f4下spi+dma读取数据不对是什么原因导致的?
254浏览 3评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
624浏览 3评论
634浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-23 14:56 , Processed in 0.722472 second(s), Total 46, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号