首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Linux频道
Google
首页 入门 Linux编程 系统管理 网络管理 Linux认证 Unix/BSD Linux数据库 Linux集群 Linux手册 Linux下载 Ubuntu 论坛 专题 RSS
您现在的位置: 中国IT实验室 >> Linux >> 网络管理 >> 网络管理 >> 正文

Linux操作系统下的串口通信学习笔记

  一、什么是串口通信

  串口通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1或者为0。

  二、串口通信的分类

  串口通信可以分为同步通信和异步通信两类。同步通信是按照软件识别同步字符来实现数据的发送和接收,异步通信是一种利用字符的再同步技术的通信方式。

  2.1同步通信

  同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。如图:

  单同步字符帧结构
  +-----+------+-------+------+-----+--------+-------+-------+
  |同步|数据 |数据 |数据 | ... |数据 |CRC1|CRC2|
  |字符|字符1|字符2|字符3| |字符N| | |
  +-----+------+-------+------+-----+--------+-------+-------+
  双同步字符帧结构
  +-----+--------+------+-------+---+-------+-------+--------+
  |同步 |同步 |数据 |数据 | ... |数据 |CRC1|CRC2|
  |字符1|字符2|字符1|字符2| |字符N| | |
  +-----+--------+------+-------+---+-------+-------+--------+

  它们均由同步字符、数据字符和校验字符(CRC)组成。其中同步字符位于帧开头,用于确认数据字符的开始。数据字符在同步字符之后,个数没有限制,由所需传输的数据块长度来决定;校验字符有1到2个,用于接收端对接收到的字符序列进行正确性的校验。

  同步通信的缺点是要求发送时钟和接收时钟保持严格的同步。

  2.2异步通信

  异步通信中,数据通常以字符或者字节为单位组成字符帧传送。字符帧由发送端逐帧发送,通过传输线被接收设备逐帧接收。发送端和接收端可以由各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。

  接收端检测到传输线上发送过来的低电平逻辑"0"(即字符帧起始位)时,确定发送端已开始发送数据,每当接收端收到字符帧中的停止位时,就知道一帧字符已经发送完毕。

  在异步通行中有两个比较重要的指标:字符帧格式和波特率。

  (1)字符帧,由起始位、数据位、奇偶校验位和停止位组成。如图:

  无空闲位字符帧
  +--+---+---+---+---+--+--+--+--+--+--+--+---+---+---+--+--+
  |D7|0/1| 1 | 0 |D0|D1|D2|D3|D4|D5|D6|D7|0/1| 1 | 0 |D0|D1|
  +--+---+---+---+--+--+--+--+--+--+--+--+---+---+---+--+--+
  奇偶 停 起 奇偶 停 起
  校验 止 始 校验 止 始
  位 位 位 位
  有空闲位字符帧
  +---+---+--+--+--+--+--+--+--+--+---+---+---+---+---+---+--+
  | 1 | 0 |D0|D1|D2|D3|D4|D5|D6|D7|0/1| 1 | 1 | 1 | 1 | 0 |D0|
  +---+---+--+--+--+--+--+--+--+--+---+---+---+---+---+---+--+
  空 起 奇偶 停 空 闲 位 起
  闲 始 校验 止 始
  位 位 位 位

【责编:Yoyo】
中国IT教育
相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·防范Linux病毒 打造没有病毒的乐土…
 ·Linux Shell编程实用指南…
 ·Linux日志分析与管理
 ·揭密Linux内存管理
 ·邮件服务Sendmail应用配置
 ·Linux 安全管理…
 ·Linux 下DNS服务器架设攻略…
 ·Linux 下的路由的配置与应用…
 ·专题:Apache实用手册
 ·全面剖析Linux文件系统
 今日更新
 认证培训
 频道精选
 Windows频道导航