Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
ulog
内核调试
日志
请问如何查看内核的日志信息?
发布于 2024-11-27 21:12:58 浏览:183
订阅该版
如题,我在ulog中设置了打印等级为debug,设置后端为console,但是执行程序时并没有打印内核路径的日志信息。 ![screenshot_图片.png](https://oss-club.rt-thread.org/uploads/20241127/4c6459c1d11de477eb92ad18b1393616.png.webp) 代码如下: ```c #define THREAD_STACK_SIZE 1024 #define THREAD_PRIORITY 20 #define THREAD_TIMESLICE 10 /* 线程入口 */ static void thread_entry(void* parameter) { rt_uint32_t value; rt_uint32_t count = 0; value = (rt_uint32_t)parameter; while (1) { if(0 == (count % 5)) { rt_kprintf("thread %d is running ,thread %d count = %d\n", value , value , count); if(count> 200) return; } count++; if(value == 2) rt_thread_suspend(rt_thread_self()); rt_schedule(); } } int timeslice_sample(void) { LOG_D("LOG_D: RT-Thread is an open source IoT operating system from China.\r\n"); LOG_I("LOG_I: RT-Thread is an open source IoT operating system from China.\r\n"); LOG_W("LOG_W: RT-Thread is an open source IoT operating system from China.\r\n"); LOG_E("LOG_E: RT-Thread is an open source IoT operating system from China.\r\n"); rt_thread_t tid = RT_NULL; /* 创建线程 1 */ tid = rt_thread_create("thread1", thread_entry, (void*)1, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE); if (tid != RT_NULL) rt_thread_startup(tid); /* 创建线程 2 */ tid = rt_thread_create("thread2", thread_entry, (void*)2, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE); if (tid != RT_NULL) rt_thread_startup(tid); /* 创建线程 3 */ tid = rt_thread_create("thread3", thread_entry, (void*)3, THREAD_STACK_SIZE, THREAD_PRIORITY, THREAD_TIMESLICE); if (tid != RT_NULL) rt_thread_startup(tid); return 0; } /* 导出到 msh 命令列表中 */ MSH_CMD_EXPORT(timeslice_sample, timeslice sample); ``` 上面的代码执行`rt_thread_suspend(rt_thread_self());`时会跳转到下面函数执行: ```c rt_err_t rt_thread_suspend(rt_thread_t thread) { return rt_thread_suspend_with_flag(thread, RT_UNINTERRUPTIBLE); } RTM_EXPORT(rt_thread_suspend); rt_err_t rt_thread_suspend_with_flag(rt_thread_t thread, int suspend_flag) { return rt_thread_suspend_to_list(thread, RT_NULL, 0, suspend_flag); } RTM_EXPORT(rt_thread_suspend_with_flag); ``` 最后执行下面的代码: ```c rt_err_t rt_thread_suspend_to_list(rt_thread_t thread, rt_list_t *susp_list, int ipc_flags, int suspend_flag) { rt_base_t stat; rt_sched_lock_level_t slvl; /* parameter check */ RT_ASSERT(thread != RT_NULL); RT_ASSERT(rt_object_get_type((rt_object_t)thread) == RT_Object_Class_Thread); RT_ASSERT(thread == rt_thread_self()); LOG_D("thread suspend: %s", thread->parent.name); rt_sched_lock(&slvl); stat = rt_sched_thread_get_stat(thread); if ((stat != RT_THREAD_READY) && (stat != RT_THREAD_RUNNING)) { LOG_D("thread suspend: thread disorder, 0x%2x", thread->stat); rt_sched_unlock(slvl); return -RT_ERROR; } if (stat == RT_THREAD_RUNNING) { /* not suspend running status thread on other core */ RT_ASSERT(thread == rt_thread_self()); } …… ``` 这里必定会打印` LOG_D("thread suspend: %s", thread->parent.name);`但是我的终端上什么也没有显示,各位碰到过这种情况么? 我的硬件是esp32c3(riscv)
查看更多
张世争
2024-11-28
学以致用
在每个要打印的文件头部增加如下定义 ```c #define DBG_TAG "xxx" #define DBG_LVL DBG_LOG #include
``` 比如调度器的代码文件头部增加 ```c #define DBG_TAG "sched" #define DBG_LVL DBG_LOG #include
```
2
个回答
默认排序
按发布时间排序
a1012112796
2024-11-28
这家伙很懒,什么也没写!
在这里改 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20241128/ced567c448fab4f89e75ab01d9a66645.png.webp)
撰写答案
登录
注册新账号
关注者
0
被浏览
183
关于作者
qq1078249029
这家伙很懒,什么也没写!
提问
2
回答
8
被采纳
0
关注TA
发私信
相关问题
1
版本发布时怎样关闭LOG_D打印出的日志
2
怎样通过scons 配置日志输出usart,spi等初始化成功日志
3
请问哪里有rt_thread ulog日志存成文件的例程或者demo
4
文件系统的再次挂载问题
5
关于关闭打印调试信息输出
6
nano 中日志组件打印出现乱码问题
7
ulog_easyflash :Log sector header error
8
uog阻塞fish,无法输入
9
ulog的互斥信号量锁死
10
ulog组件能否输出float类型数据?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用RC522软件包驱动FM1722
2
常量数据类型和表达式陷阱分享
3
进行i2c驱动移植的经验总结
4
在VSCode中使用clang-format
5
我该如何使用这个微雪的WIFI400 WIFI-LPB-100在rtt里或者我该怎样为它开发驱动
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
UART
WIZnet_W5500
ota在线升级
freemodbus
PWM
flash
cubemx
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
编译报错
Debug
rt_mq_消息队列_msg_queue
SFUD
msh
keil_MDK
ulog
C++_cpp
MicroPython
本月问答贡献
踩姑娘的小蘑菇
4
个答案
1
次被采纳
红枫
4
个答案
1
次被采纳
张世争
4
个答案
1
次被采纳
Ryan_CW
4
个答案
1
次被采纳
xiaorui
1
个答案
1
次被采纳
本月文章贡献
catcatbing
3
篇文章
5
次点赞
qq1078249029
2
篇文章
2
次点赞
xnosky
2
篇文章
1
次点赞
Woshizhapuren
1
篇文章
5
次点赞
YZRD
1
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部