当没有连接COM(串行)端口或串行监视器打开时,arduino是否运行打印功能(print,println,printf等)?

当没有连接COM(串行)端口或串行监视器打开时,arduino是否运行打印功能(print,println,printf等)?

问题描述:

我想知道我的代码中的打印语句正在处理机器人未连接到com端口的处理周期。我正在运行一个时间敏感的进程,并有理由相信这些行的执行可能会减慢我的机器人速度。当没有连接COM(串行)端口或串行监视器打开时,arduino是否运行打印功能(print,println,printf等)?

是即使没有连接串口监视器或其他设备,也需要处理时间。

一个好的做法是在代码中有一个#define预处理器指令,指示您是否正在调试。

例如

#define DEBUG_PHASE

#ifdef DEBUG_PHASE 
printf(...); 
#endif 
+0

你无论如何都要使用这样的编译器开关,启用/禁用看门狗。或者,也许爱好者的东西甚至不会首先使用看门狗...... – Lundin 2015-03-02 12:46:38

当然是。即使没有监听,MCU仍然会通过解析格式字符串和发送串行数据的操作。