Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
caihaitao
这家伙很懒,什么也没写!
注册于 4年前
回答
20
文章
0
关注者
0
关注TA
向TA提问
发私信
TA的回答
问
线程创建位置问题求助
发布于4年前
你写的函数,最后一定会执行__exit的地方的,如果上面的线程和定时器创建成功的话,那线程和定时器直接就被删除啦。这种写法有错误的, ``` void ec200_tcp_heart(void) { static rt_thread_t heart_thread_tid = RT_NULL; static rt_timer_t heart_timer_tid = RT_NULL; heart_thread_tid = rt_thread_create("heart_thread", ec200_heart_entry, RT_NULL, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE); if (heart_thread_tid != RT_NULL) { rt_thread_startup(heart_thread_tid); rt_kprintf("heart_thread startup!\n"); } else { goto __exit; } heart_timer_tid = rt_timer_create("heart_timer", ec200_heart_timer, RT_NULL, 10, RT_TIMER_FLAG_PERIODIC); if(heart_timer_tid != RT_NULL) { rt_timer_start(heart_timer_tid); rt_kprintf("heart_timer startup!\n"); } else { goto __exit; } return ; __exit: if (heart_thread_tid) rt_thread_delete(heart_thread_tid); if(heart_timer_tid) rt_timer_delete(heart_timer_tid); } ``` 添加下return,估计执行就没问题啦。
问
RT_NAME_MAX引发的惨案
发布于4年前
在大点的项目中长度为8是不够的,建议将RT_NAME_MAX宏设置为16
问
ulog组件能否输出float类型数据?
发布于4年前
在一个群里已经找到答案了。谢谢大家。
问
临界区和关中断,是否需要同时使用?
发布于4年前
rt_enter_critical(); //可以省略 关闭中断之后,SysTick的中断也被屏蔽了,暂时无法得到执行。不会发生线程调度。
问
关于线程堆栈大小以及溢出问题
发布于4年前
Cortex-M系列芯片栈是满减的;栈最高位置是:(0x20006C8C + 0x2800);现在栈指针为:0x200093DC,随着程序的运行,sp的值是动态调整的;只要sp的值不小于0x20006C8C,说明栈是没有溢出的。
问
object与thread结构体
发布于4年前
应该是出于对rt_thread结构体大小考虑的;可以看下结构体内存对齐方面的文章,自然就明白啦。
问
关于在rtthread中如何定义double类型
发布于4年前
系统里面没有对float和double数据类型进行封装。正常使用就可以。
问
rt_thread_mdelay延时哪段时间
发布于4年前
从调用rt_thread_mdelay()这一刻开始延时;延时时间根据你设置的时间。但是,前面代码执行所花费的时间是不包含在内的。
问
_SysTick_Config() 函数里_SYSTICK_PRI 寄存器功能?
发布于4年前
设置SysTick定时器中断优先级;设置的为最低优先级。
TA的主页
TA的回答
TA的提问
TA的文章
TA的粉丝
TA的关注
会员统计
注册于 4年前
个人主页被 2715 人浏览
回到
顶部
发布
问题
投诉
建议
问 线程创建位置问题求助