测试ESP32串口ModBus从机时,读取回来很多信息:
除了正常的 Modbus 响应数据(01 02 01 01 60 48)以外,还有大量额外的信息,甚至包含 ANSI 颜色控制符(\x1B[0;32m
)和 UTF-8 编码的中文字符。是因为你的设备或软件在返回 Modbus 数据时,附加了调试信息或日志输出。
由于ESP32C3只有一个串口,我除了使用它作为ModBus端口,它还会默认打印日志到串口0,实际上我观看日志使用USB虚拟串口
那么有没有办法关闭日志打印到串口0,只打印到虚拟串口呢?
只需要进入 menuconfig
修改日志输出端口
- 进入 Component Config → ESP System Settings
- 找到 Channel for console output(控制台输出通道)
- 选择 USB CDC 或 None(如果你不需要日志)
就OK了