串口的基本知识

  其实你只要自己跟度娘撒撒娇,基本上都能得到半天都看不完的串口知识的各种文章。这篇文章在我看来也会成为资料的堆积和各种拷贝的集合。希望,我能写出点新意。不会使得你们看一眼就点了右上角的X。下面开始盖大楼:



  度娘的解释:

  串口接口的定义:

  串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢。

  串行通信:

  一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。

  串行通讯的特点是:

  数据位的传送,按位顺序进行,最少只需一根传输线即可完成;成本低但传送速度慢。串行通讯的距离可以从几米到几千米;根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。

  串行接口按电气标准及协议来分:

  RS-232-C、RS-422、RS485等。RS-232-C、RS-422与RS-485只对接口的电气特性做出规定,不涉及接插件、电缆或协议。



  软硬通信用到的知识:

  通常我们接触的是RS-232-C和RS-485;

  RS-232-C   只支持一个主机和一个下位机形成的网络,传输距离很短,最大距离只有15米。(如果你接入的设备是RS-232的,一定要注意这个问题,不然收不到信号        就悲剧了);

  RS-485      支持一对多的网络结构,可以一个上位机链接多个设备,最大传输距离约为1219米,最大传输速率为10Mb/s。传输速率和距离成反比。在我使用中一般同        一时间都是点对点的通信,一对多的是广播模式的通信;RS485的设备通信时,协议里一般都是有通信地址这个信息的。

  我接触到的一些比较复杂的情况:一个改造项目中,原厂的各种测试设备已经使用多年而且网络很复杂。同时存在以下多种情况:

  1.RS485转USB接口:因为主机上的串口数量不够,就用RS458转USB方便多插几个设备,或者不同网络的设备进来。这种转换是里面最简单的,需要一个转换接头,必   须要在主机上安装驱动才可以通信,一般是没有管理工具的。没有驱动,就只能干瞪眼;

  2.GPIB总线转RS485:当时遇到的情况是GPIB转RS485再转USB。GPIB转RS485再转USB是需要一个工业路由器来转换的,需不需要驱动看情况而定。当时现场是用  的anyWhereUSB这种设备进行转换的,需要一个管理工具,并且还得在里面配置好信息才能使用。比较变态的是这种设备实现的路由是点对点的。同一时间不可能有两  台主机连接这个转换设备;不过最后通信选择的是GPIB总线通信方式(因为是设备厂商提供的支持库,我没有深究里面到底是如何连接的);

  3.RS485转网口:这种转换需要用到一种转换接头。我遇到的是NPort5130,也是需要一个管理工具设置好相关地址,端口等参数才可以使用。

  当我把网络完全理解的时候,我都已经头大了,更别说里面各种已经停产的设备,已经停产并且供应商已经重组的公司的设备。哎!

  



  串口基础知识

  关于串口的其他信息接头的样子,电气特性等电工接线方面的知识,可以参考http://www.cnblogs.com/menlsh/archive/2013/01/28/2880580.html,我是没有电气方面的底子,这些东西我理解起来也很吃力,不能给你们讲出个123来。



  关于串口基本知识或者硬件知识最后想说的几句话:

1.RS485接线的时候是分正负极的,一定要确定正负极是否接对了。

2.线有没有接通是可以同万用表测量一下的,如果有5-15V的正负电压就说明线是通的。

3.正常的硬件和畅通的网络是我们开发测试的基础,而往往这个又不是我们负责的,所以一定要先排除现场问题之后,再开始我们的测试安装等步骤。

时间: 2024-08-09 05:20:32

串口的基本知识的相关文章

STM32串口通讯基本知识

Linux驱动开发之 四 (那些必须要了解的硬件知识 之 串口)

Linux驱动开发之 四 (那些必须要了解的硬件知识 之 串口) 在前面的文章中,我们了解处理器.存储器,在这篇文章中老谢想和大家聊聊在实际项目开发过程中串口的基本知识和作用. 一.串口简介 如果要非常细致的了解串口的定义,直接问度娘是最快的方式.老谢在这里就不再赘述.大致描述如下: RS-232协议,相比RS-422,RS-285有着更为广泛的应用,特别是嵌入式开发过程中,应用极为广泛,可谓工程师的眼睛.工程师们靠UART tool了解系统的运行状态.调试以及处理相关问题,而这一系列的信息交互

11、串口编程

1.串口的介绍     串口的介绍, 串口发送的顺序: 1.空闲位:这里是连续的 1 2.起始位:低电平 3.数据位:对于传输的数据位这里是自己去设定传输位数,可以5.6.7.8位,但是我们一般设置为  8位 串口的数据是从低位开始发送 4.奇偶校验位:保证传输数据位中的 1 的个数是奇数还是偶数.奇校验:保证数据位中的'1'是奇数个,当数据位中的'1'是奇数个的时候,那么校验位填零:当数据位中的'1'是偶数个的时候,则校验位填为'1'. 5.停止位:低电平.持续时间为一个或者 1.5 个字符的

创建C#串口通信程序详解

在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports.这个新的框架不但可以访问计算机上的串口,还可以和串口设备进行通信.我们将使用标准的RS 232 C 在PC间通信.它工作在全双工模式下,而且我们不打算使用任何的握手或流控制器,而是使用无modem连接.创建C#串口通信程序的具体实现是如何的呢?让我们开始吧: 创建C#串口通信程序之命名空间 System.IO.Ports命名空间中最重用的是SerialPort 类. 创建C#串

2016-7-4工作总结

姓名 王奈 时间 2016-7-4 学习内容 今天我的工作就是把吐槽墙实现之后的完整类图画出来,如下图所示: 除此之外,我还进行了对于串口通信方面知识的学习,完成了在多个主机之间的串口通信调试工作.其中存在的最大的问题就是通信协议的问题,包括硬件上面的协议,比如波特率的选择,通信方式,起止位的长度,信息长度等等,还有软件层面上的协议,比如消息解析模式等等.这两个部分在串口调试的过程中是非常麻烦的事情,我今天的工作就是尝试不同的方法最终解决这些问题. 所遇问题 串口通信不正确的问题 解决方案 检查

短信开发系列(三):短信接收引擎

短信开发系列目录: 短信开发系列(一):GSM手机短信开发初探短信开发系列(二):GSM手机短信开发之短信解码短信开发系列(三):短信接收引擎 之前写了短信接收处理的一些内容,今年事情实在太多了,就停顿了这么一大段的时间.接下来会继续完成相关的内容. 今天先写用之前写的短信类库的一个应用,短信接收引擎.可以用在处理一些短信的提醒:作为前面两篇文章的一个实战运用,可以作为一个多线程.委托和事件.串口等方面知识的一个综合运用. 先来分析一下整个程序的流程: - 启动线程 - 定时运行线程主函数 -

STM32 串口通信基础知识

2.STM32的串口通信原理 串口通信是单片机最基本的功能,很多传感器模块与单片机的连接都会用到串口功能.串口通信,顾名思义就是将一整条的内容,切成一“串”个体来发送或接收.发送的核心思想是:将字符串中的一个字符写到一个寄存器中(此寄存器只能存一个字符),写入后会自动通过串口发送,发送结束再写入下一个字符.接收时会直接装入单片机缓冲区的一个字符型数组中,由程序依次读这个数组. 上图是串口数据发送接收的过程做一个简单的图示.收发控制器根据寄存器配置,对数据存储转移部分的移位寄存器进行控制.当需要发

串口入门知识及总结

1 概念 串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口. 串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信(可以直接利用电话线作为传输线),从而大大降低了成本,特别适用于远距离通信,但传送速度较慢.一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯.串行通讯的特点是:数据位的传送,按位顺序进行,最少只需一根传输线即可完成:成本低但传送速度慢.串行通讯的距离

VC++串口通信基础知识

在Win32下,可以使用两种编程方式实现串口通信,其一是使用ActiveX控件(ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)),这种方法程序简单,但欠灵活.其二是调用Windows的API函数,这种方法可以清楚地掌握串口通信的机制,并且自由灵活. 本文我们只介绍API串口通信部分. 串口的操作可以有两种操作方式:同步操作方式和重叠操作方式(又称为异步操作方式).同步操作时,API函数会阻塞直到操作完成以后才能返回(在多线程