硬件课程设计串口通信项目设计方案_第1页
硬件课程设计串口通信项目设计方案_第2页
硬件课程设计串口通信项目设计方案_第3页
硬件课程设计串口通信项目设计方案_第4页
硬件课程设计串口通信项目设计方案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 硬件课程设计串口通信 项目设计方案 第一章 课题背景 言 在通信领域内,有两种数据通信方式:并行通信和串行通信。随着计算机网络化和微机分级分布式应用系统的发展,通信的功能越来越重要。通信是指计算机与外界的信息传输,既包括计算机与计算机之间的传输,也包括计算机与外部设备,如终端、打印机和磁盘等设备之间的传输。 在 的主板上,有一种类型的接口可能为我们所忽视,那就是 行接口,在微软的 统中称其为 们可以通过设备管理器来查看硬件参数设置,如图 1。 迄今为止,几乎每一台 包含 质而言, 和外界通信所提供的一种串行数据传输的接口。 口是指 口,是微软定义的标准接口。 串口叫做串行接口,现在的 一般有两个串行口 和 。串行口不同于并行口之处在于它的数据和控制信息是一位接一位地传送出去的。虽然这样速度会慢一些,但传送距离较并行口更长,因此若要进行较长距离的通信时,应使用串行口。通常 使用的是 9 针 D 形连接器,也称之为 有的使用 的是老式的 连接器,也称之为 口,这种接口目前已经很少使用。 作为一种物理通信的途径和设备,它和目前风靡的另一种串行接口 提供的功能是一致的。不过 然已经开始被后起之秀 超,因为 传输速率已经远远超过了 尽管如此, 然具有非常广泛的应用,在相对长的一段时间里,难以被 接口取代。 口(又称 1970 年由美国电子工业协会( 合贝尔系统、调制解调器厂家及计算机终 端生产厂家共同制定,全名是 数据终端设备( 数据通讯设备( 间串行二进制数据交换接口技术标准 。 硬件原理众所周知, 存储芯片和 I/O 芯片的通信是并行的(并行传输的最大位数依赖于 字长、数据总线的宽度),一种叫做 用异步收发器, 芯片提供了并行数据传输和 行数据传输方式的转换。 2 行通信的基本概念 在微型计算机中,通信(数据交换)有两种方式:串行通信和并行 通信。串行通信 是指计算机与 I/O 设备之间仅通过一条传输线交换数据,数据的各位是按顺序依次一位接一位进行传送。并行通信 是指计算机与 I/O 设备之间通过多条传输线交换数据,数据的各位同时进行传送。应该理解所谓的并行和串行,仅是指 I/O 接口与 I/O 设备之间数据交换(通信)是并行或串行。无论怎样 。 二者比较:串行通信的速度慢,但使用的传输设备成本低,可利用现有的通信手段和通信设备,适合于计算机的远程通信;并行通信的速度快,但使用的传输设备成本高,适合于近距离的数据传送。 1 异步串行通信 所谓异步通信,是指数据传送以字符为单位,字符与字符间的传送是完全异步的,位与位之间的传送基本上是同步的。异步串行通信的特点可以概括为: 以字符为单位传送信息。 相邻两字符间的间隔是任意长。 接收时钟和发送时钟只要相近就可以。 异步方式特点简单的说就是:字符间异步,字符内部各位同步。 2 同步串行通信 所谓同步通信,是指数据传送是以数据块(一组字符)为单位,字符与字符之间、字符内部的位与位之间都同步。同步串行通信的特点可以概括为: 以数据块为单位传送信息。 在一个数据块(信息帧)内,字符与 字符间无间隔。 接收时钟与发送进钟严格同步。 特率因子、位周期 波特率 是指单位时间传输二进制数据的位数,其单位为位 /秒( B/S)或波特。它是一个用以衡量数据传送速率的量。一般串行异步通行的传送速度为50 19200 波特,串行同步通信的传送速度可达 500 千波特。 波特率因子 是指时钟脉冲频率与波特率的比。 位周期 是指每个数据位传送所需要的时间,它与波特率的关系是:。它用以反映连续二次采样数据之间的间隔时间 口的基本概念 串口是计算机上一种非常通用设备通信的 协议(不要与通用串行总线者 淆)。大多数计算机包含两个基于 串口。串口同时也是仪器仪表设备通用的通信协议;很多 容的设备也带有。同时,串口通信协议也可以用于获取远程采集设备的数据。 串口通信的概念非常简单,串口按位( 送和接收字节。尽管比按字节( 并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如 义并行通行状态时,规定设备线总常不得超过 20 米,并且任意两个设备间的长度不得超过 2米;而对于串口而言,长度可达 1200 米。 3 典型地,串口用于 字符的传输。通信使用 3 根线完成:( 1)地线,( 2)发送,( 3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配: a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的 个数。例如 300 波特表示每秒钟发送 300 个 我们提 到时钟周期时,我们就是指波特率例如如果协议需要 4800 波特率,那么时钟是 4800意味着串口通信在数据线上的采样率为 4800常电话线的波特率为 14400, 28800 和 36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是 备的通信。 b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是 8 位的,标准的值是 5、 7 和 8 位。如何设置取决于你想传送的信息。比如,标准的 是 0 127( 7 位) 。扩展的 是 0 255( 8 位)。如果数据使用简单的文本(标准 ),那么每个数据包使用 7位数据。每个包是指一个字节,包括开始 /停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语 “包 ”指任何通信的情况。 c,停止位:用于表示单个包的最后一位。典型的值为 1, 2 位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同 步的容忍程度越大,但是数据传输率同时也越慢。 d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是 011,那么对于偶校验,校验位为 0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位 1,这样就有 3 个逻辑高位。高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信 或者是否传输和接收数据是否不同步 准介绍 口(又称 目前最常用的一种 串行通讯接口 。它是在 1970 年由 美国 电子工业协会( 合 贝尔系统 、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。它的全名是 “数据终端设备( 数据通讯设备( 间 串行二进制数据交换接口技术标准 ”该标准规定采用一个 25 个脚的 接器,对连接器的每个引脚的信号内容加以规定,还对各种信 号的电平加以规定。 4 ( 1)接口的信号内容 实际上 25 条引线中有许多是很少使用的,在计算机与终端通讯中一般只使用 3引线。 常用的 9 条引线的信号内容见附表 1 所示 ( 2)接口的电气特性 在 任何一条信号线的电压均为负逻辑关系。即:逻 辑 “1”, 辑 “0” +5 +15V 。噪声容限为 2V。即 要求接收器能识别低至 +3V 的信号作为逻辑 “0”,高到 信号 作为逻辑 “1” ( 3)接口的物理结构 口连接器一般使用型号为 25 芯插头 座 ,通常插头在 ,插座在 . 一些设备与 连接的 口 ,因为不使用对方的传送控制信号 ,只需三条接口线 ,即 “发送数据 ”、 “接收数据 ”和 “信号地 ”。所以采用 9 芯插头座,传输线采用屏蔽双绞线。 ( 4)传输电缆长度 由 准规定在码元畸变小于 4%的情况下,传输电缆长度应为 50英尺,其实这个 4%的码元畸变是很保守的,在实际应用中,约 有 99%的用户是按码元畸变 10范围工作的,所以实际使用中最大距离会远超过 50 英尺,美国 司曾规定允许码元畸变为 10%而得出附表 2 的实验结果。其中 1 号电缆为屏蔽电缆,型号为 有三对双绞线,每对由 22# 成,其外覆以屏蔽网。 2 号电缆为不带屏蔽的电缆。型号为 2#四芯电缆。 美国电子工业协会 定的一种串行物理接口标 准。 英文 “推荐标准 ”的缩写, 232 为标识号, C 表示修改次数。 线 标准设有 25 条信号线,包括一个主通道和一个辅助通道,在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。 准规定的 数据传输速率 为每秒 50、 75、 100、 150、 300、 600、 1200、 2400、 4800、 9600、 19200 波特 。准规定,驱动器允许有 2500电容负载,通信距离将受此电容限制,例如,采用 150pF/m 的通信电缆时,最大通信距离为 15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是 单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于 20m 以内的通信。 5 第二章 设计简介及设计方案论述 口通信原理 串口通信原理: 所谓 串行通信 是指外设和计算机间使用一根数据信号线 ,数据在一根数据信号线上按位进行传输,每一位数据都占据一个固定的时间长度。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,当然,其传输速度比并行传输慢。相比之下,由于高速率的要求,处于计算机内部的串口之间的通讯仍然采用并行的通讯方式,所以串行口的本质就是实现 外围数据设备的数据格式转换(或者称为串并转换器),即当数据从外围设备输入计算机时,数据格式由位 (化为字节数据;反之,当计算机发送下行数据到外围设备时,串口又将字节数据转化为位数据。 串行端口的本质功能是作为 串行设备间的编码转换器。当数据从 过串行端口发送出去时,字节数据转换为串行的位。在接收数据时,串行的位被转换为字节数据。 在 境下,串口是系统资源的一部分。 应用程序要使用串口进行通信,必须在使用之前向操作系统提出资源申请要求(打开串口),通信完成后必须释放资 源(关闭串口)。 串口信号线的一个完整的 口有 22 根线,采用标准的 25 芯插头座(或者 9 芯插头座)。 25 芯和 9 芯的主要信号线相同。以下的介绍是以 25 芯的 例。 主要信号线定义: 2 脚:发送数据 3 脚:接收数据 4 脚:请求发送 5脚:清除发送 6 脚:数据设备就绪 20 脚:数据终端就绪 8 脚:数据载波检测 1 脚:保护地; 7 脚:信号地。 常用信号脚说明 如下: 表 2 针串口( 25 针串口( 针号 功能说明 缩写 针号 功能说明 缩写 1 数据载波检测 数据载波检测 接收数据 接收数据 发送数据 发送数据 数据终端准备 0 数据终端准备 信号地 信号地 数据设备准备好 数据准备好 请求发送 请求发送 清除发送 清除发送 振铃指示 2 振铃指示 6 电气特性: 数据传输速率最大可到 20K 大距离仅 15m. 注:看了微软的 关于串行通讯设备(不一定都是串口 率的设置,最大可支持到 256K 也不知道到底是什么串行通讯设备?但不管怎样,一般主机和单片机的串口通讯大多都在 9600 以满足通讯需求。 接口的典型应用: 大多数计算机应用系统与智能单元之间只需使用 3 到 5 根信号线即可工作。这时,除了 外,还需使 用 信号线。(当然,在程序中也需要对相应的信号线进行设置。) 以上接法,在设计程序时,直接进行数据的接收和发送就可以了,不需要对信号线的状态进行判断或设置。(如果应用的场合需要使用握手信号等,需要对相应的信号线的状态进行监测或设置。 “ 并行通信 ” 是把一个字符的各数位用几条线同时进行传输,传输速度快,信息率高。但它比串行通信所用的电缆多,故常用在传输距离较短(几米至几十米)、数据传输率较高的场合。 实现并行通信的接口就是并行接口。 并行接口可设计为只作为输入 /输出接口,也 可设计为既作为输入又作为输出的接口。它可以用两种方法实现,一种是利用同一个接口中的两个通路,一个作输入通路,一个作输出通路;另一种使用同一个双向通路,既作为输入又作为输出。 连接设备接口有 , 串行通信是指数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只要少数几条线就可以在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信, 连接设备接口有 。 串口是计算机上一种非常通 用设备通信的协议(不要与通用串行总线者 淆)。大多数计算机包含两个基于 串口。串口同时也是仪器仪表设备通用的通信协议;很多 容的设备也带有 32 口。同时,串口通信协议也可以用于获取远程采集设备的数据。 串口通信的概念非常简单,串口按位( 送和接收字节。尽管比按字节( 并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如 义并行通行状态时,规定设备线总 常不得超过 20 米,并且任意两个设备间的长度不得超过 2米;而对于串口而言,长度可达 1200 米。 件 简介 +为我们提供了一种好用的 件 支持应用程序对串口的访问,在应用程序中插入 要使用 件 序员必须将其添加入工程,其方法是:( 1)单击 主菜单 o 项;( 2)在弹出的话框中选择 件夹中的 项,如下图: 7 图 2本上, 诸多接口可以分为如下几类: ( 1)打开与设置串口接口函数; ( 2)获得串口设置和串口状态接口函数; ( 3)设置串口发送数据方式、缓冲区接口及发送数据接口函数; ( 4)设置串口接收数据方式、缓冲区接口及接收数据接口函数;( 5)设置与获取串口上发生的事件接口函数。 以下介绍设置中遇到的几个相关函数。 定使用的串口。 到当前使用的串口。 定串口的参数。一般设为默认参数 9600, N, 8, 1。这样方便与其他串口进行通讯。 得串口参数。 开或关闭串口,当一个程序打开串口时,另外的程序将无法使用该串口。 得串口状态。 入缓冲区中接受到的字符数。 次读取输入缓冲区的字符数。设置为 0 时,程序将读取缓冲区的全部字符。 取输入缓冲区。 出缓冲区中待发送的字符数。 入输出缓冲区。 一般而言,使用上述函数和属性就可以进行串口通讯了。 口通信基本步骤 实现串口通信的基本步骤如下流程图所示: 8 图 2清了程序的流程,下面的步 骤就是编写程序。 9 第三章 详细设计 立工程与使用控件 打开 立基于对话框的 用程序 如图 3 3项目 中插入 件 工程 - 增 加 到 工 程 -双击 择 默认值添加,多了个电话图标,这是增加 后串口通信控件。 如图 3 310 序界面布局 删除确认、取消和提示框,添加 “电话 ”、静态文本、按钮、编辑框,拖动添加的控件,根据喜好布局。 如下图 3示 图 3始化串口 查看 -建立类向导 择 类, D 为 击它,为它添加控制变量似的,选择 其它项修改,改后如图 图 311 对 函数中写入对串口的初始化语句,串口初始化语句由 制变量 设置串口控件属性。代码如下 : ; / ); /选择 ); /输入方式为二进制方式 024); /设置输入缓冲区大小 12); /设置输出缓冲区大小 /波特率 9600,无校验, 8 个数据位, 1 个停止位 9600,n,8,1); ) (1); /参数 1 表示每当串口接收缓冲区中有多于 /或等于 1 个字符时将引发一个接收数据的 件 ); /设置当前接收区数据长度为 0 ; /先预读缓冲区以清除残留数据 / to a 加串口事件消息处理函数 查看 -建立类向导 选择类 在 选择 后在 双击消息 弹出的对话框中将函数名改为 记 ),单击“ ,就加入了串口事件的消息处理函数,如图 312 图 3后编写 中的代码,主要任务是从串口接收数据并显示在接收编辑框中。 / k; 048; /设置 组 if(=2) /事件值为 2 表示接收缓冲区内有字符 ; /读缓冲区 /变量转换为 ; /得到有效数据长度 k=0;选择类 选中击 加 函数,如图 3 3后在函数中添加代码如下: / /读取编辑框内容 ;/发送 数据 程序编好了, 下面的问题就是选择数据传输的介质问题,可以使用 串口线,也可用虚拟串口。 口通信接线方法(三线制) 实际应用中,电子工程师在设计计算机与外围设备的通信时,通常在 9 针的基础再进行简化,只用其中的 2、 3、 5 三个管脚进行通信。这三个管脚分别是接收线、发送线和地线,在一般情况下即可满足通讯的要求,计算机和外部通讯的接线方法如 图 3 14 图 3得注意的是, 图 3 2、 3 两脚是交叉互联的,这很容易理解,因为一个设备的发送线必须联接到另外一台设备的接收线上,反之亦然。 另外说明一下, 232 信号的有效通讯距离是 15M。 首先,串口传输数据只要有接收数据针脚和发送针脚就能实现:同一个串口的接收脚和发送脚直接用线相连,两个串口相连或一个串口和多个串口相连 同一个串口的接收脚和发送脚直接用线相连 对 9 针串口和 25 针串口,均是 2 与 3 直接相连; 两个不同串口(不论是同一台计算机的两个串口或分别是不同计算机的串口) 表 3 针 9 针 25 针 25 针 9 针 25 针 2 3 3 2 2 2 3 2 2 3 3 3 5 5 7 7 5 7 上面表格是对微机标准串行口而言的 ,还有许多非标准设备,如接收 要记住一个原则:接收数据针脚(或线)与发送数据针脚(或线)相连,彼些交叉,信号地对应相接。 口通信中需要注意的几点 能直接与 口相连,市面上专门的各种转换器卖,必须通过转换器才能连接; 然程序没问题,却因为接线问题误事; 备一个好用的调试工具,如串口调试助手、串口精灵等,有事半功倍之效果; 拨时至少有一端是断电的, 否则串口易损坏。 15 口的 代替品 现在的大多数笔记本电脑中多数都不配备串口,但是串口通信如 单片机等一系列科技产品中依然存在广泛的应用,所以寻找 口的代替解决方案就成为当务之急,而主要存在以下两种解决方案。 使用 由于 现在大多数笔记本 电脑没有串口,所以 可以使 用虚拟串口软件代替物理串口。 件的主要功能用途其实是通过网络 射成相应的端口号。 打开虚拟串口软件 于软件已设置好,一打开就建立 个虚拟串口。这些虚 拟串口是相互连通的 图 3 串口转接卡 由于通用 口依然是串口通信,市面上提供了一种称之为 接串口 转接卡设备,且一并提供了驱动程序,将 转换成了 口 16 第四章 设计结果及分析 序结果 在使用串口调试助手的情况下,程序发送字符串的效果如图 4示: 图 4序基本实现了老师要求的相关功能。 计反思 程序虽然完成 了老师要求的相关功能但还存在以下几点不足之处: 1. 界面不够美观。 2. 程序的对与可操作的 ,波特率,校验位选择了静态方式写死在程序中还不够灵活。应当在后续实现中加以改进。 3. 不支持中文字符,以及文件的的发送,后续还要添加这些功能。 综上所述,程序虽然完成了,但还有很多改进的地方,我们还需要继续努力。 17 总 结 这次课程设计 是 使用 中的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论