【记录】继续尝试通过TTL串口去访问pcDuino

【背景】

之前已经折腾了:

【记录】在无显示器,无HDMI显示的前提下去折腾pcDuino

最后是看到有人提到那个TTL的串口。

此处,找了3根跳线,然后加上自己的笔记本和USB转串口,看看能否通过pcDuino的TTL串口,去访问到pcDuino。

注:

1.关于TTL,不了解的可参考我最近的总结:

【整理】TTL和RS232之间的详细对比

2.关于RS232不了解的可以参考:

【整理】嵌入式外设之RS232

 

【折腾过程】

1.得先去搞懂,如何连接pcDuino上面三个TTL的引脚。

所以,先要去搞清楚RS232的引脚的位置和功能:

【整理】RS232的引脚的名称及位置和功能含义

2.知道了CH340的USB转接出来的RS232的引脚功能后,去连接好对应的线。

对应解法,参考:

Chapter 2: Serial Debug Port | pcDuino

中的:

pcduino ttl pins functions

然后打开SecureCRT配置如下:

securecrt serial com7 115200 8 none 1 no flow control

然后弄了半天,包括重启板子,结果SecureCRT中始终无输出。

3.后来,自己试了试,把对应的Pin2和Pin3的接线调换一下,结果就可以了有输出了。

其中接线如下:

connect pinouts for rs232 to ttl in pcduino

其中,关于RS232中pin脚的含义,可参考:

【整理】RS232的引脚的名称及位置和功能含义

对应的,SecureCRT中,有输出,但是是乱码:

securecrt show output but messy

4.所以,再去修改为别的波特率,看看能否正常显示。

结果竟然是,所有的波特率,从1200到115200,都试过了一遍,还是都是乱码。

且,反接pin2和pin3,也的确还是没有输出的。

然后注意到,设备管理器中的CH340中波特率是9600,所以去改为115200:

device manager to change ch340 baudrate to 115200 from 9600

看看是否有用。

结果问题依旧,SecureCRT还是乱码。

5.又试了半天,感觉是:

115200时,输入回车,还是有反馈的:显示字母C

其他波特率时,连反馈都没有。但是都是乱码。

另外也去设置了SecureCRT的字符编码为UTF-8:

set securecrt serial charset to utf8

但是也没用。

6.算了,去换用别的串口工具,比如超级终端,putty,再试试。

先去试试我自己之前整理的:

Win7 超级终端Hyper Terminal

结果也是乱码:

win7 hyper terminal ch340 com7 still messy

7.感觉,应该是pcDuino内部,串口配置有问题了。

8.后来找到pcDuino的原理图:

http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Dev/PCDuino/pcDuino_UserGuide_Rev02.pdf

但是发现是和我的板子不一样。

发现是0.2的版本。

貌似我手上的是v2?

然后终于找到了v2的使用手册:

http://download.abra-electronics.com/pdf/User%20Guide%20of%20pcDuino%20V2.pdf

对应的,串口的解释是:

pcduino v2 manual show p3 debug port

对应的P3的含义是:

pcduino p3 pinouts meaning

即,板子上,从左到又

左边是圆片,右边是镂空的圆圈,分别是1,2,3,对应的是TxD,GND,RxD。

因此,对应的要接(外部连入的)RS232的RxD,GND,TxD。

也才对应着我之前的连接图,是正确的。

所以:

网上资料,如果不清楚来源,真是害死人啊。

因为之前那些资料,说1,2,3是TxD,GND,RxD

那是通过pcDuino v0.2或v1的版本,貌似是参考的Arduino的设计。

而pcDuino v2,对应的引脚变了,变成此处的:“左边是圆片,右边是镂空的圆圈,分别是1,2,3,对应的是TxD,GND,RxD。”

算了,自己再画个图,更清楚点:

pcduino v2 debug port pinouts and functions

注意到:

我外部接进来的三根线:

  • 红色:TxD
  • 黑色:GND
  • 白色:RxD

正好对应着,板子上的:

  • RxD
  • GND
  • TxD

的。

9.突然想起来了:

会不会是:

我此处用的是(USB转出来的)RS232,而实际上,应该是使用TTL,才行的?

毕竟RS232和TTL的电平都是反的,所以肯定不行了。。

所以,如果是的话,那就只能是:

我正好刚买了个USB转RS232/RS485/TTL的芯片

(详见:【整理】TTL和RS232之间的详细对比

快到货了。

等过两天到货后,就再去试试:

从USB转出来TTL后,再去连接TTL到pcDuino上,然后再去用SecureCRT再去测试,或许就可以了。

 

【总结】

等USB转TTL的芯片到货后,再去试试。



2 Thoughts on “【记录】继续尝试通过TTL串口去访问pcDuino

  1. 请问一下,我现在做16F648A,RS232的通信。用了MAX232连接.串口工具用的是PUtty。现在PC端能够正常显示。可是从PC端输入指令会出现乱码。我的波特率设置的是正确的。请问这可能是什么原因造成的?一直找不到解决办法。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量