单片机教程网

电脑版
提示:原网页已由神马搜索转码, 内容由www.51hei.com提供.
查看:343|回复:0
打印上一主题下一主题

RT_Thread中实现浮点数显示的函数

[复制链接]
跳转到指定楼层
楼主
ID:313887发表于 2023-12-25 22:19|只看该作者回帖奖励
RT_Thread系统在串口打印时出现如下所示的问题,

(rt_object_get_type((rt_object_t)thread) == RT_Object_Class_Thread) assertion failed at function:rt_thread_sleep, line number:576

此时的解决办法就是增加RT_Thread线程的内存大小
thread_adc=rt_thread_create("adc_thread", adc_entry, NULL, 256, 20,30);
改为
thread_adc=rt_thread_create("adc_thread", adc_entry, NULL, 1024, 20,30);

/*****************************单独进行浮点数显示的函数****************************************/
#define DBG_BUFF_MAX_LEN 256
int dbg_printf(const char *fmt,...)
{
   va_list args;
   static char rt_log_buf[DBG_BUFF_MAX_LEN]={0};

   va_start(args,fmt);
   int length=vsnprintf(rt_log_buf,sizeof(rt_log_buf)-1,fmt,args);

   rt_kputs(rt_log_buf);

   return length;
}

评分

黑币 +50
收起理由
+ 50
共享资料的黑币奖励!

查看全部评分

手机版|小黑屋|51黑电子论坛|51黑电子论坛6群QQ管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网