完善资料让更多小伙伴认识你,还能领取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这个头文件不成功?要怎么添加好
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
651 浏览 0 评论
712 浏览 0 评论
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
4375 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
3176 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2629 浏览 0 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-9 18:04 , Processed in 1.207211 second(s), Total 92, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
6587