完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我对RTOS不是很熟悉,我找了一下,返回的值应该改为xTaskGetTickCount这个函数。
|
|
|
|
HAL_GetTick这个函数里面的计数器是否在增加,如果没有,修改为rtos中的计数器。
|
|
|
|
插上仿真器进一步跟踪后,发现死的位置是在if((Timeout == 0) || ((HAL_GetTick() - tickstart) > Timeout))这一句里,还不是if里面的语句,也就是在判断的时候出现了卡死。所以应该是在运行HAL_GetTick()这个函数里出现的卡死,这是为什么呢?等大神、、、
|
|
|
|
本帖最后由 电小龙 于 2017-11-27 11:41 编辑 好像是你说的hal_gettick方面的问题,我现在该怎样处理呢?修改为rtos中的计时器怎么改呢? |
|
|
|
|
|
|
|
太感谢了,刚刚试了是可以的,又学到了新知识了、、、 |
|
|
|
客气了,大家都是在实践中学习。
|
|
|
|
楼主你好,你的问题描述中,把CAN的通信线断开是什么意思,还有最后您是怎么解决问题的?
|
|
|
|
把通信线断开是我在CAN数据传输过程中一旦断开数据线,设备就死机了。然后最终解决的方法是在hal_gettick函数中用了frertos的函数来替代本来的Hal库里的自带的函数。 |
|
|
|
hu_wfllllllllfl 发表于 2019-1-17 08:27 谢谢! |
|
|
|
楼主,我在hal.c里把hal_gettick函数的返回值换成xTaskGetTickCount();但是添加task.h这个头文件不成功?要怎么添加好
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2201 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
2027 浏览 3 评论
4633 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
2171 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
2705 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 03:50 , Processed in 1.183206 second(s), Total 64, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号