RT-Thread 打印信息到USB虚机串口(VPC)
实现虚拟串口请看我这篇文章STM32F407 CUBEMX RT-Thread USB虚拟串口(VCP)
我们目前RT-Thread打印的LOG信息和控制台都是通过串口实现的,我们既然有了USB虚拟串口,就可以直接在虚拟串口上打印;
menuconfig配置
将打印默认端口改成相应的名字vcom(根据情况)
#include <rtthread.h>
#include <rtdevice.h>
int main(void)
{
rt_console_set_device("vcom"); //设置打印默认在USB串口端
char buf[] = "hello world!\r\n";
while (1)
{
rt_kprintf(buf);
rt_thread_mdelay(500);
}
return RT_EOK;
}
2021.10.14更新:
这种方式在我使能MQTT和AT后出现问题,另一个方法实现:
这是官网提供的动态切换控制台的包。
void test()
{
static rt_device_t vcom_shell_device = NULL;
vcom_shell_device = rt_device_find("vcom");
if (vcom_shell_device)
{
vconsole_switch(vcom_shell_device);
}
}
MSH_CMD_EXPORT(test , test1);