利用开天斧实现冲哥串口转发时遇到的奇怪现象
大家好,我这里遇到个问题,请教下各位高手。本人目前在学冲哥的USB研讨会视频,第二部分视频中冲哥写了《4.CDC_STC32G_简易串口转发》程序,ISP软件通过CDC把数据发到STC32G,然后通过串口1经Link1D原样返回到电脑串口调试助手#1。我仿照着他的做法,用STC8H实验箱做实验,主频22.1184M,实验箱左边是DB9的串口2(P4.6、P4.7),所以又用了个232转USB的转接线返回电脑,程序收发无误。但同样的程序下载到开天斧时(因串口TTL输出,所以改用Link1D或一箭双雕转USB返回电脑),却出了问题。如图,8H8K64U接收USB-CDC数据和串口2发送这条路是对的(左侧电脑串口接收OK),但串口接收再发回电脑这段总是出现问题,有时正确,但经常会有乱码。我改为串口1,程序也改一下引脚映射为P3.6、P3.7,有时是同样的现象,但有时会很长时间才收到一个乱码,感觉像是硬件出了问题。Link1D、一箭双雕我都验证过,没问题。不同串口和对应的程序我也换了,甚至两针排线我也重新焊接了,并用两种导线进行连接,现象依旧。开天斧下载流水灯运行也没问题。真不知道哪里出了问题了,大家有何建议呢?
实验场景
是Link1D串口发送,开天斧串口接收并CDC发送到串口助手有问题? DebugLab 发表于 2024-12-14 11:36
是Link1D串口发送,开天斧串口接收并CDC发送到串口助手有问题?
波特率比较高,注意连接线要优质且接触良好
UART发送脚设置为推挽,接收脚设置为准双向或开漏并打开内部4K上拉试试
Link 1D也一样,重新下载固件时设置IO模式
如果降低波特率能恢复正常,一般是波特率过高时IO状态不合理导致上升沿过慢,这可以用示波器观察到 DebugLab 发表于 2024-12-14 11:36
是Link1D串口发送,开天斧串口接收并CDC发送到串口助手有问题?
对的,是这条通路总有乱码,但CDC发送到的是CDC串口助手窗口(不是单独的串口调试助手#2) 刚才我用CP2102的多功能转换器替换了Link1D,收发正常了,用一箭双雕替换也没问题,可能是Link1D设置有问题吧。但之前,我在用实验箱时,用Link1D+TTL转232转接线(或一箭双雕+TTL转232转接线),来替换USB转232时也都是好用的,大概是Link1D还需要再设置一下?我再仔细研究下Link1D吧
页:
[1]