jimi1205 发表于 2012-7-23 10:13:46

串口需要插拔才能收发信息

近日在调试一块电路板,用一块单片机加一块MAX232跟电脑进行数据的收发,现在出现这样一种现象,就是连接电路板和电脑的串口线如果事先接好,再通电,那么数据无法在串口调试助手里面显示(我程序里面设计会自动发送数据),而此时,拔掉电路板或者电脑那端的串口线再插上去,数据马上就出来了。我查了下主要是接地的问题,因为串口线我只用到了三根,拔掉串口线的接地线再插上去就可以正常通信,但同样批次的电路板,大部分是可以的,也就是不需要插拔串口线就可以通信,请问大家这是什么原因呢?

usingavr 发表于 2012-7-23 10:28:48

看是不是MAX232电容不对

lcw_swust 发表于 2012-7-23 10:52:51

USB转串口?

jimi1205 发表于 2012-7-23 11:11:03

电容是用0.1uf,芯片是SP3232,如果用USB转串口就没问题,但用PC自带的串口会出现上述这种情况

albert_w 发表于 2012-7-23 14:28:56

上示波器看...

bg6ixm 发表于 2012-7-23 14:33:06

找电源问题。

zuceyige 发表于 2012-7-23 14:36:42

板子上是不是还有其它干扰呢?我之前用USB转串口时会出现这样的问题,后来进行一些滤波后就好了。

在徘徊中前行 发表于 2012-7-23 15:08:04

我也是一直用三根线的哟,未见有这样的现象
而且电容用103,104我都试过,没问题,芯片用的是MAX232CPE

devcang 发表于 2012-7-23 15:55:22

初始化过程、读数据过程

jimi1205 发表于 2012-7-23 17:10:25

电路就是8楼的电路,我做的10块板中有两块板会这样,其他都正常,很奇怪

jimi1205 发表于 2012-7-23 17:32:10

回5楼的,示波器要怎么确定问题所在

chengzepeng 发表于 2012-7-23 17:35:25

看看波形啦!还有电压!

chunxx 发表于 2012-7-23 17:54:42

这个问题我遇到过,是SP3232电压值的问题。
RS232标准高低电平是+/-12V,MAX232、3232这种IC用电荷泵电路产生高电压,极限值也就是2倍压,
MAX232电源是+5V,倍压电路可产生-9V,3232的电源是3.3V,电荷泵产生的极限电压也就是6.4V,
这个电压被直接转换成RS232的高低电平。RS232的事实标准放得很宽,毕竟+12V现在越来越少用了,
电平达到+/-9V就稳定可工作了,+/-6.4V实在是低了一点,会出错,通信程序会收到一个Frame Error,如果
程序处理得好,及时清除这个Error,还是可以接收数据的,但毕竟是Error!
USB转串口的都用TTL电路了,实际上不按RS232的标准,发5V/0V也能接收,主板上的是标准MC1487电路,
不到9V不行。俺测过这个电压值之后,232通信只要有+5V电源的,一定用MAX232而不是3232,不得不用3.3V
电源的,一定声明不能长距离传输!

jimi1205 发表于 2012-7-23 23:35:55

13楼分析的很好,不过现在是这种情况,我用的SP3232芯片供电电压是5V的,我有试过拿一条网上买的那种带一块MAX232芯片的下载线直接接单片机的TXD,RXD,GND,+5V四个管脚去下载,结果下载不了,也不能收发(其余电路板是可以)如果用USB转串口的下载线去下载,就一点问题都没有,因此,应该不是芯片的问题。

jimi1205 发表于 2012-7-25 09:42:52

各位帮忙看下哦,还没找到解决的方法,唉

dadongleilei 发表于 2012-7-25 10:08:12

我们也用sp3232的,3.3V供电,基本没有什么问题;是不是你设置了流控什么之类呢?

右手执香 发表于 2012-7-25 15:06:19

短路的可能性很大~~

jimi1205 发表于 2012-7-25 18:09:03

没有啊,我做了10块电路板,有8块是可以的,只有2块要把接电脑端的地线拔了再插上去才可以通信,都没有做什么设置,正纳闷着呢,而且还遇到这样的情况,有两三块电路板,原本测试是没问题的,但是给用户使用的时候,会出现这次开机可以使用,下次开机有时候不能通信,有时候又可以,但大部分情况都可以,也是采用接电脑自带的DB9串口。
页: [1]
查看完整版本: 串口需要插拔才能收发信息