1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
//接收BD910定位数据任务
void bd910_update(void *p_arg) { OS_ERR err; p_arg = p_arg; while(1) { iCom5Len=getBDFrame(RecvCom5); delay_us(100); if(iCom5Len>70) { LED8=1; OSTaskSemPost(&SendTcpTCB,OS_OPT_POST_NONE,&err); //使用系统内建信号量向任务task2发送信号量 } else { LED8=0; } OStimeDlyHMSM(0,0,0,100,OS_OPT_TIME_HMSM_STRICT,&err); //延时500ms } } 为什么一跑这个任务,过一会程序就会死机。如果把iCom5Len=getBDFrame(RecvCom5);屏蔽了,程序就能正常的意志运行,这句代码的意思是从串口5中接收数据到数组中。 而且让程序在裸机下跑也是没有问题的,这是什么原因? |
|
相关推荐
4个回答
|
|
getBDFrame检查下你这个函数,是否有什么问题
|
|
|
|
我认为是程序设计错误,仔细看看iCom5Len=getBDFrame(RecvCom5);
|
|
|
|
这句话没错,只是接受没有用中断
|
|
|
|
确实是函数问题,我不是用中断来接收的,可能接收过程中有任务调度,改了中断接受就好了
|
|
|
|
只有小组成员才能发言,加入小组>>
798 浏览 0 评论
1154 浏览 1 评论
2531 浏览 5 评论
2863 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2713 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1083浏览 3评论
195浏览 2评论
461浏览 2评论
374浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
455浏览 1评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 20:59 , Processed in 1.109062 second(s), Total 54, Slave 45 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号