问题出现原因
由于串口调试中经常需要通过断电对单片机烧录程序,所以制作了一个转接带开关的USB 转接口,如下图所示,其中按键控制的是OUT口的电源通断。但为了能够数据传输,有两根传输数据的线是一直连接的。在使用usb进行程序烧录中没有问题,后来使用USB转ttl连接串口助手时发现串口助手无法识别串口了。
解决方式及分析
把USB转TLL的RX和TX连接单片机,电源也同时连接好,然后4条线同时上电,这样能够识别。后来发现不是线问题,而是对USB
转TTL的供电问题,也是因为多加了一个自制开关。如下图,实际是很容易想到的问题,但没有遇到就会无意间忽略了。
过程中还遇到了波特率的问题
以前故意调整过错误的波特率,发现虽然不发送数据,但会出现乱码的字符。这次发现9600和115200的波特率差别时,串口助手不会接收到数据、可能是波特率差别太大了。