首页 | 资讯动态 | linux基础 | 系统管理 | 网络管理 | 编程开发 | linux数据库 | 服务器技术 | linux相关 | linux认证 | 嵌入式 | 下载中心 | 专题 | linux招聘 | HR | 镜像
OKLinux中文技术站
·设为首页
·加入收藏
·联系我们
系统管理: 中文环境 系统管理 桌面应用 内核技术 | Linux基础: 基础入门 安装配置 常用命令 经验技巧 软件应用 | Linux数据库: Mysql Postgre Oracle DB2 Sybase other
网络管理: 网络安全 网络应用 Linux服务器 环境配置 黑客安全 | 编程开发: PHP CC++ Python Perl Shell 嵌入式开发 java jsp | PHP技术: PHP基础 PHP技巧 PHP应用 PHP文摘
搜索中心 Linux招聘 Linux专题 Apache | Linux相关: 硬件相关 Linux解决方案 Linux认证 企业应用 其它Unix | 相关下载: 资料下载 参考手册 开发工具 服务器类 软路由 其它
 技术搜索:
会员中心 注册会员 高级搜索  
  → 当前位置:首页>linux基础>经验技巧>正文

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

http://www.oklinux.cn  2006-01-01  csdn  姜江   会员收藏  游客收藏  【 】 
您查看的文章来源于http://www.oklinux.cn

一、什么是串口通信

串口通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为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|

+---+---+--+--+--+--+--+--+--+--+---+---+---+---+---+---+--+

空 起 奇偶 停 空 闲 位 起

闲 始 校验 止 始

位 位 位 位

共12页: 上一页 1 [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] 下一页

上一篇:Linux命令:改变文件或目录的访问权限   下一篇:如何在外置 USB 硬盘中安装 breezy

收藏于收藏夹】 【评论】 【推荐】 【打印】 【关闭
相关文档
·如何在外置 USB 硬盘中安装 breezy
·Linux命令:改变文件或目录的访问权限
·Linux系统执行程序时内存管理的情景
·轻松玩转:Red Hat9.0安装配置指南
·Linux操作系统:快速内存操作技术
·Linux操作系统:LVS ipvsadm命令参考
·linux下乱码问题的终极解决方法!
·优化策略:从头开始对ubuntu进行优化
·实用技巧:巧用FC5的“添加/删除程序”
·RedHat提供ADSL共享上网的解决办法
·Vim实用技术第一部分:实用技巧
·你必须选择我:UNIX操作系统优势总结
·用Linux操作系统包管理器简化生活
·手把手教您配置Linux目录服务器
·Linux攻略:正确安装VMWARE TOOLS
·类UNIX系统基础:文件安全与权限
发表评论
密码: 匿名评论
评论内容:

(不超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
 
  最新文档
·VMWare克隆后Ubuntu的“No such device
·Linux 游戏作弊工具:GameConqueror 0.
·Ubuntu 9.10下jre安装中文字体
·Ubuntu 下使用 apt 快速安装软件
·Ubuntu 9.10用Prism将webQQ桌面化
·Linux系统下读取目录中文件名信息题解
·Linux环境下提高网络传输性能方法简介
·Ubuntu 9.10 图形界面无边框问题解决
·Ubuntu 9.10 下SNORT源码安装及问题解
·Linux apachectl命令详解
·Linux系统调用fork()用法详解
·Ubuntu wubi使用警告
  阅读排行
·安装Ubuntu分区的推荐方案及方法
·Linux下安装tar.gz、rpm、tar.bz2软件
·Windows XP虚拟机vmware中安装Linux步
·新手看招:调试工具GDB基本知识全接触
·Ubuntu下安装苹果MAC风格主题(图)
·Ubuntu 3D桌面特效展示!超绚目(图)
·新手学堂 Ubuntu中安装bin文件
·Ubuntu下安装MP3播放器Audacious
·Linux爱好者入门教程
·Ubuntu下安装aMule并与firefox关联(图)
·Ubuntu 8.04下fcitx输入法的安装及使用
·配置nVidia显卡修改Ubuntu分辨率
·Ubuntu看安装Sopcast看网络电视(配图)
·VM中Linux虚拟机下安装VMware Tools
·Fedora 9 配置yum源
网摘收藏: