两台PC机如何实现串行通信

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-06-27
怎么实现一台PC机的两个串口通信〉

1.需要专用线,2头都9针那种,线序大概1-1,2-3,3-2,4-4,5-5 2.\开始\程序\附件\通讯\超级终端,2个电脑都建一个超级终端程序,并运行,波特率要相同 3.一个电脑在菜单中选传送\发送文件\,另一个选\传送\接收文件\ 我用cisco的线在2台不能上网的98机器中试过,没问题,就是速度有些慢

有两种方法与PC通信:

1,加接一个USB转串口的硬件设备(网上很容易买到),这样既解决了数据线的连接又解决了单片机供电问题,但PC端可能需要安装USB驱动,而且要碰运气,往往因USB驱动问题无法一次成功;
2,通过RS232接口与PC通信,当然也少不了硬件支持,自己做或到网上买一RS232模块,步骤1:将模块9针D型接口连接至电脑COM1或COM2,按模块的标注将RXD和TXD及公共地连接至单片机相关电路,步骤2:通过PC端USB接口取电并连接至单片机相关电路,USB接口的PIN1通常为VCC(正电源端)PIN4通常为GND(负电源端)。这样做可能麻烦一些,但一次成功的概率会高很多。
如果你的电脑硬件配置中没有RS232接口的COM1或COM2,那你只能采用第1种方法了。

串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线Universal Serial Bus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。

串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。

典型地,串口用于ASCII码字符的传输。通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:
a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。
b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0~127(7位)。扩展的ASCII码是0~255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。
c,停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。
d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步
参考资料:http://qzsuper.spaces.msn.com/PersonalSpace.aspx

(1)接口的信号内容 实际上RS-232-C的25条引线中有许多是很少使用的,在计算机与终端通讯中一般只使用3-9条引线。
(2)接口的电气特性 在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻 辑“1”,-5— -15V;逻辑“0” +5— +15V 。噪声容限为2V。即 要求接收器能识别低至+3V的信号作为逻辑“0”,高到-3V的信号 作为逻辑“1”
(3) 接口的物理结构 RS-232-C接口连接器一般使用型号为DB-25的25芯插头座,通常插头在DCE端,插座在DTE端. 一些设备与PC机连接的RS-232-C接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。
所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。
(4) 传输电缆长度 由RS-232C标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大距离会远超过50英尺,美国DEC公司曾规定允许码元畸变为 10%而得出附表2 的实验结果。
其中1号电缆为屏蔽电缆,型号为DECP.NO.9107723 内有三对双绞线,每对由22# AWG 组成,其外覆以屏蔽网。
2号电缆为不带屏蔽的电缆。型号为DECP.NO.9105856-04是22#AWG的四芯电缆。

  • 单片机与PC机的串行通信问题
    答:我是单片机新手我想做一个单片机与PC串行通信的,要实现的功能是,计算机发送不同数值,单片机连接的4个LED相应亮灭,各位高手,教教单片机程序怎么写比较好!我用的C8051单片机,我想... 我是单片机新手我想做一个单片机与PC串行通信的,要实现的功能是,计算机发送不同数值,单片机连接的4个LED相应亮灭,各位高手,教教...
  • 如何实现pc机上的com口通信
    答:如何利用c语言编程实现两个pc机上的com口通信非常感谢,但是我想问问在linux下和在window下有什么区别,还有就是在linux下如何通过编程来控制通过串口来实现通信... 如何利用c语言编程实现两个pc机上的com口通信非常感谢,但是我想问问在linux下和在window下有什么区别,还有就是在linux下如何通过编程来控制通过串口来实现...
  • 如何实现PC机与单片机AT89C51的串行通信
    答:首先要看PC机有没有串口,即是电脑上的COM口,这是RS232口,有的话,就很方便。单片机的RXD,TXD两个脚就是串行通信的引脚,用一片MAX232,或MAX202,把RXD,TXD两脚接到MAX232上,组成一个RS232接口电路,MAX232的RXD,TXD接到DB9头上,再用一条串口线,连接单片机的DB9头和电脑上的串口,也是一个...
  • 如何实现PC机与单片机AT89C51的串行通信
    答:首先要看PC机有没有串口,即是电脑上的COM口,这是RS232口,有的话,就很方便。单片机的RXD,TXD两个脚就是串行通信的引脚,用一片MAX232,或MAX202,把RXD,TXD两脚接到MAX232上,组成一个RS232接口电路,MAX232的RXD,TXD接到DB9头上,再用一条串口线,连接单片机的DB9头和电脑上的串口,也是一个...
  • 如何用C语言实现PC间串口通信逐bit传输.
    答:答:能!但是这是一种非标准的协议类型,就不能用一般的UART控制器实现。对于单片机来说可以用普通IO口模拟,就像18B20的单线通信一样,一个bit一个bit的发。在计算机上你可以通过驱动软件控制串口或者并口中的一条引脚,再加上一条地线就可以与另外一台计算机的对应端口的引脚进行bit方式的数据收发了。
  • 51单片机与PC机串行通信
    答:做双方通信,你要确定以下内容:1、电路是否正常工作 2、波特率、起始位、停止位是否一致 3、用上位机小软件时,是否选择是字符发送接收还是十六进制数发送接收。串口中断程序中,不要加入太多程序,建议:串口中断程序中,写,判断是接收中断还是发送中断,是发送中断,执行空语句,是接收中断,接收到什么...
  • 单片机通过232接口传送到PC机,怎么控制传到远程的PC?
    答:232接口是一种串行接口 一般我们只用这种串行接口对 交换机、路由器 进行相关配置时才会用到。pc机和pc机之间的通讯用RJ-45接口也就是我们所说的网卡接口,实现两台pc机之间的数据传输最简单的是用一条交叉线直接相连就配置上静态IP和默认子网掩码就可以进行通讯了 可以用ping命令进行测试 如果需要传输...
  • 用vb编写pc机与下位机的串行通信
    答:需按照通信协议使用MsComm控件实现通信。按通信协议接收数据并进行数据处理。找本“人民邮电出版社”的“VISUAL BASIC 串口通信工程实例导航”一书,有较详细的7个实例代码参考。你提供EMAIL地址,可给你发该书的工程文件。
  • 关于如何实现高速DSP与PC串口通信的方法
    答:直到Rx接收到终止位。数据发送程序与数据接收程序原理相同,此处略。串口引脚作为通用I/O口实现 1.硬件设计 TMS320VC33微处理器的串口引脚也可作为通用I/O口,通过对I/0口的操作即可实现串行数据的接收和发送,将微处理器的数据接收引脚DR作为RS232的数据接收端,数据发送引脚DX作为RS232的数据发送端,...
  • 多个下位单片机与上位机pc通过串口通信的实现
    答:用PC机与多个51单片机通过RS232进行通讯。在多机通讯中,要保证主机与所选择的从机实现可靠的通信,必须保证串口具有识别的功能。在串行口控制寄存器SCON中有一位叫做SM2,就是为了多机通讯而设置的控制位。多机通讯的过程可以如下:1 首先从机初始化,开中断,让其以方式2或3接收(9位异步通讯方式)...