【串口通信】——入门篇,简单了解

原创 2013年12月04日 21:48:55

    最近在研究串口通信,通过自己这几天的研究,颇有些心得,当然这个时候还是想到和大家一起分享我的实现过程。首先我要说明的是我是用vb.net 实现的。如果是有关vb.net的语法问题不懂得这里我不做解释。

 

【一】、为什么要学习使用串口通信:

 

    计算机与外设或计算机之间的通信通常有两种方式:并行通信和串行通信。并行通信指数据的各位同时传送。并行方式传输数据速度快,但占用的通信线多,传输数据的可靠性随距离的增加而下降,只适用于近距离的数据传送。串行通信是指在单根数据线上将数据一位一位地依次传送。发送过程中,每发送完一个数据,再发送第二个,依此类推。接受数据时,每次从单根数据线上一位一位地依次接受,再把它们拼成一个完整的数据。在远距离数据通信中,一般采用串行通信方式,它具有占用通信线少、成本低等优点。

 

【二】、串口通信与USB接口的对比:

 

  USB是英文 Universal SerialBus 的缩写,翻译成中文的含义是“通用串行总线”。 从技术上看,USB是一种串行总线系统,它的最大特性是支持即插即用和热插拔功能。在Windows2000的操作系统中,任何一款标准的USB设备可以在任何时间、任何状态下与计算机连接,并且能够马上开始工作。

  USB诞生于1994年,是由康柏、IBM、Intel和Microsoft共同推出的,旨在统一外设接口,如打印机、外置Modem、扫描仪、鼠标等的接口,以便于用户进行便捷的安装和使用,逐步取代以往的串口、并口和PS/2接口。

 

     大家看到这里可能会觉得USB接口完胜原始串口了。但是我们为什么还要学习串口编程呢。

 

    USB接口和原始串口(三个EIA标准)的对比:

 

  目前在IT领域,USB接口可谓春风得意。人们在市场上可以看到,每一款计算机主板都带有不少于2个USB接口,USB打印机、USB调制解调器、USB鼠标、USB音箱、USB存储器等产品越来越多,USB接口已经占据了串行通信技术的垄断地位。

 

     但是,在工业领域,使用USB接口的产品则甚为少见。在工业领域,人们更要求产品的可靠性和稳定性,目前,EIA标准下的串行通信技术完全可以满足人们对工业设备传输的各种性能要求,而且,这些产品价格非常低廉。相比之下,USB价格较高,并且其即插即用的功能在工业通信中没有优势。因为工业设备一般连接好以后很少进行重复插拔,USB特性的优越性不能很好地被体现出来,也就得不到工业界的普遍认可。因此,在工业领域,EIA标准依然占据统治地位。

 

【三】、什么是串口通信:

 

    串行接口是一种可以将接受来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接受的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。

 

    串口通信是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低。

    串口是计算机上一种非常通用的设备通信协议。大多数计算机(不包括笔记本电脑)包含两个基于RS-232的串口(COM1COM2)。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。

 

【四】、串口通信的原理:

 

     串口通信(SerialCommunications)的概念非常简单,串口按位(bit)发送和接收字节(第一段也有涉及)。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于ASCII码字符的传输。通信使用3根线完成,分别是地线、发送、接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验(这几个重要的参数在我的文章中没有)。对于两个进行通信的端口,这些参数必须匹配,否则无法通信。



【五】、本文定位:

    本文的内容大部分是摘自百度百科,本文最适合两种人阅读,一、从来没有接触过串口通信的人。通过这篇文章可以有一个大概的了解;二、正在摸索使用串口通信的人,这种人往往查看了好多的资料,但是总是存在很多的疑惑,正好本文对串口通信的最基本的知识进行总结,以及摆明了串口通信的使用价值和地位,接下来我会写系列文章来带大家一点点的入门。

    如果你正在被串口通信而苦恼多日,不妨回来我们一起回味一下这篇文章。


版权声明:本文为博主原创文章,未经博主允许不得转载。

【51单片机】(手把手教你)串口通信-基础篇

通信方式 并行 适合短距离通信,并行通信控制简单、相对传输速度快(8位一起传输)。 串行 只能一位一位的传送。 同步(了解) 建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。此时...
  • wait_for_taht_day5
  • wait_for_taht_day5
  • 2016年01月23日 01:11
  • 24552

串口通信的基本知识

[编辑简介]:本文介绍了串口通讯的基本概念、数据格式、通讯方式、典型的串口通讯标准等内容。 [关键词]:串口通讯,RS232,RS485,停止位,奇校验,偶校验 1 串口通讯     串口通...
  • huwei2003
  • huwei2003
  • 2014年07月02日 14:41
  • 41489

串口编程入门

最近本人在做有关串口通信的编程,可谓边学边用,在网上看到一篇好文,将它翻译过来,大家一起学习,其中有翻译错误的地方,还请多多指教!这是一篇在Windows (NT 系列) 系统上进行串口通信的入门资料...
  • firefox1
  • firefox1
  • 2006年10月30日 16:15
  • 3478

UsbServices串口通信

关于安卓的USB串口,先从github上下载了别人写的demo,大家可以借鉴下:https://github.com/felHR85/SerialPortExample 里面的类很简单,但是如果你不...
  • qq895767507
  • qq895767507
  • 2016年06月07日 13:25
  • 381

VC++USB及串口通信程序(附工程)

为公司开发产品测试程序,实际上是基于VC++的USB通信及串口通信。当初编写程序时,网上找了很多资料及程序,感觉大都只是说了一点点,没有一个完整的工程以供其他开发者借鉴,完全要靠开发者东拼西凑,最后凑...
  • phmatthaus
  • phmatthaus
  • 2016年04月12日 11:09
  • 5520

USB转串口驱动代码分析

1、USB插入时,创建设备 DriverObject->DriverExtension->AddDevice = USB2COM_PnPAddDevice; 步一、调用USB2COM_C...
  • chenyujing1234
  • chenyujing1234
  • 2012年08月09日 15:55
  • 9412

Java USB串口编程(64位和32位)

最近公司的项目需要和硬件打交道,而我负责硬件对接这块的主要工作,这几天把java中的串口编程熟悉了下,其中大多是涉及到环境的配置,接下来我把自己做的过程中遇到的问题整理一下,供大家产考!       ...
  • kent45
  • kent45
  • 2015年10月21日 16:47
  • 6651

单片机串口通信技术

串口通信 随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通信功能愈来愈显得重要。计算机通信是指计算机与外部设备或计算机与计算机之间的信息交换。 通信有并行通信和串行通信两种方式。在多微机系统...
  • scottly1
  • scottly1
  • 2014年06月01日 09:39
  • 1692

单片机简单入门串口通信

  • 2009年06月09日 10:21
  • 15KB
  • 下载

Visual C++实践与提高——串口通信与工程应用篇1

  • 2007年07月06日 21:55
  • 9.49MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【串口通信】——入门篇,简单了解
举报原因:
原因补充:

(最多只允许输入30个字)