77范文网 - 专业文章范例文档资料分享平台

异步串行接口电路及通信系统设计设计报告(2)

来源:网络收集 时间:2019-01-10 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

目录

目录

一 、课题设计概述及原理 ??????????????????????????1

1.1设计目的???????????????????????????????1 1.2设计要求???????????????????????????????1 1.3设计内容???????????????????????????????1 1.4设计原理???????????????????????????????1 1.4.1 串行通信的基本概念 ????????????????????????1 1.4.1.1 数据传输方式 ????????????????????????1 1.4.1.2 波特率????????????????????????????2 1.4.1.3 误码率????????????????????????????2 1.4.1.4 串行通信的基本方式??????????????????????2 1.4.2 异步串行通信标准接口???????????????????????2 1.4.3 异步通信的控制时钟????????????????????????3 1.4.4 全双工串行通信模块UART ?????????????????????4 二 、系统设计方案 ??????????????????????????????6

2.1 顶层逻辑设计图 ???????????????????????????6 2.2 设计说明 ??????????????????????????????6 2.3 单元程序设计及仿真分析 ???????????????????????7 三 、单元程序设计及仿真分析 ?????????????????????????7

3.1系统时钟50分频 ???????????????????????????8 3.2 1MHz时钟1M分频???????????????????????????8 3.3 波特率产生模块????????????????????????????9 3.4 地址寻址模块电路图 ?????????????????????????10 3.5 数据接收模块 ????????????????????????????11 3.6 数据发送模块电路图 ?????????????????????????12 3.7 LED显示模块 ???????????????????????????13 3.8 ROM数据存储模块???????????????????????????14 四 、系统原理图设计及仿真分析????????????????????????15 五 、硬件实验结果及时序分析结果 ?????????????????????16 六 、总结??????????????????????????????????17 七 、参考文献????????????????????????????????19 八 、附录??????????????????????????????????20

附录Ⅰ(分工说明)???????????????????????????20 附录Ⅱ(设计程序)???????????????????????????20 325分频 ????????????????????????????20

地址模块 ????????????????????????????21 rom模块 ????????????????????????????21 uart接收模块???????????????????????????22 uart发送模块 ??????????????????????????25 显示模块 ????????????????????????????28

III

异步串行接口电路及通信系统设计

一、 课题设计概述及原理

1.1设计目的

1) 掌握串行通讯中的状态机的工作原理和设计方法。

2) 掌握串并转换和并串转换的工作原理和设计方法。 3) 掌握寄存器、BCD数码管的工作原理和设计方法。 4) 掌握自建ROM数据存储的原理和方法。 5) 掌握异步串行通讯电路及系统的设计方法。

6) 掌握在EDA系统软件QuartusⅡ环境下基于FPGA/CPLD的数字系统设计方

法,掌握该环境下功能仿真、时序仿真、管脚锁定和芯片下载的方法。

1.2设计要求

设计一个能进行异步全双工串行通信的模块,该模块以固定的串行数据传送格式收发数据。要求如下:

1) 每帧数据供10 位,其中 1位启动位,8位数据位,1位停止位 。 2) 波特率为:9600。 3) 收发误码率<1% 。

4) 实现与PC机的通信,PC机端采用串口调试助手。在 PC 机端,用串口调

试助手发送和显示数据;在 FPGA 端,发送的数据来自于自建ROM内存储的数据,数据量为200,接受数据由串口调试助手发送,并由数码管显示接受数据值。

1.3设计内容

1) 设计异步串行接口电路、分频器、ROM、全双工串行通信模块和译码显示

电路。

2) 设计系统顶层电路。

3) 进行功能仿真和时序仿真。

4) 对仿真结果进行分析,确认仿真结果达到了设计要求。

5) 在EDA硬件开发系统上进行硬件验证与测试,确保设计电路系统能正确的

工作。

1.4设计原理

1.4.1 串行通信的基本概念

1.4.1.1数据传输方式

在串行通信中,数据在通信线路上的传送有三种方式: ①单工方式 数据只能按一个固定的方向传送。

②半双工方式 数据可以分时在连个方向传输,但不能同时双向传输。

1

异步串行接口电路及通信系统设计

③全双工方式 数据可以同时在两个方向上传输。 本设计选用的是全双工方式。

1.4.1.2 波特率

即单位时间内传送的二进制数据的位数,也称数据位率,单位为bit/s(位/秒)。波特率是衡量串行数据传送速度快慢的重要指标和参量。

在串行通信中,数据的接收和发送都必须要有时钟信号对传送的数据进行定位和同步控制。波特率与收/发时钟频率的关系如下:

收/发时钟频率 = n×波特率

n的取值一般为1、16、32、64等。同步通信必须满足n=1,异步通信中常采用n=16.

1.4.1.3 误码率

即数据经过传输后发生错误的位数(码元数)与总传输位数(码总元数)之比,其与通信线路质量、干扰大小及波特率等因素有关。

1.4.1.4 串行通信的基本方式(两种)

①异步串行方式 数据流中,字符间异步,字符内部各位间同步。 ②同步串行方式 数据流中,字符间以及字符内部各位间都同步。 目前PC机的串行接口基本都采用的异步通信方式,故本设计也采用此方式。

1.4.2 异步串行通信标准接口

通信协议,即通信规程,指通信双方在信息传输格式上的一种约定。 在数据通信中,收/发器之间传送的是一组二进制的“0”“1”位串,而“0”“1”在不同的位置可能有不同的含义。有的只用于同步,有的代表通信双方的地址,有的是控制信息,有的是为了差错控制而附加上的冗余位,有的则是真正的需要传输的数据。这些都需要在通信协议中事先进行约定,以形成收/发双方共同遵守的格式。

逐位传送的串行通信中,接收端必须能够识别每个二进制位的开始和结束,即位定时;还要能识别每个字符的开始和结束,即字符定时。异步串行通信时,每个字符作为一帧独立的信息,可随机出现在数据流中,即每个字符出现在数据流中的相对时间是任意的。一个字符一旦出现后,字符中的各位便以预先固定的时钟频率进行传送。为确保异步通信的正确性,必须找到一种可以使收/发双方在随机传送的字符间实现同步的方法,即在字符格式中设置起始位和停止位。

如图所示:

2

异步串行接口电路及通信系统设计

每帧信息(即每个字符)由4部分组成: ① 1位起始位,规定为低电平“0”;

②5-8位数据位,紧跟于起始位的后面。规定从低位向高位依次传送; ③0位或1位奇偶校验位;

④1位,3/2位或2位停止位,规定为高电平。

起始位标志着每个字符的开始,通知接收器开始装配一个字符,以便和发送器取得同步;停止位标志着每个字符的结束。通过起始位和停止位的结合,实现异步字符传输的同步。异步通信的关键是接收器必须准确地发现每个字符开始出现的时刻,因此协议规定起始位和结束位必须采用相反的极性,利用前一个字符的高电平停止位到后一个字符的低电平起始位的负跳变,接收器便知道这是一个字符的开始,以此作为新字符内位检测与采样的时间基准。为保持相邻两个字符的转换是一个负跳变,故通信协议规定字符与字符间出现的空闲状态(冗余位)也用“1”填充。

按课程设计要求,我们的设计的传输格式为1位起始位,1位停止位和8位数据位,无奇偶校验位。

1.4.3 异步通信的控制时钟

因为在异步通信中,同步只在一个字符间保持,每个字符在传输时都会有新的起始位和停止位,故发送时钟和接收时钟只需分别使用两个频率相同的局部时钟,无需使用同一个时钟。由于收/发器使用的为各自独立控制的时钟,他们的频率虽然要求要相同,但不可能真正严格的相同,它们的上下始终边沿总会不可避免地出现一定程度的偏移。这种收/发时钟的相对误差会导致接收端的采样错误,为保证数据能正确传送,除了用起始位、停止位和空闲位提供正确的时间基准外,还可以采用接收器在码元中心进行采样,获得最大收/发时钟频率偏差容限的方法来实现。为了保证在每个码元的中心位置采样,在准确知道起始位前沿的前提下,接收器在起始位前沿到来后,先等半个周期采样一次,然后每过一个位周期采样一次,直至收到停止位。

为提高采样的分辨能力和抗干扰能力,接收器应采用比波特率高的时钟来控制采样时间。利用经16倍波特率的接收时钟实现再同步的过程如上图所示。利用这种经16倍频的接收时钟对串行数据流进行检测和采样,接收器能在一个位

3

异步串行接口电路及通信系统设计

周期的1/16时间内决定出字符的开始。不仅有利于实现收发同步,还有利于抗干扰和提高异步串行通信的可靠性。

其采样、检测过程为:停止位或任意数目空闲位的后面,接收器在每个接收时钟的上升沿对输入数据流进行采样,通过检测是否有9个连续的低电平来确定它是否为起始位,如果是,则确认其为起始位,并且对应的是起始位中心,然后,以此为准确的时间基准,每隔16个时钟周期采样一次,检测一个数据位;如果不是严格的9个连续的低电平,则认为这是一个干扰信号,将其删除。

1.4.4 全双工串行通信模块UART

UART(Universal Asynchronous Receiver & Transmitter)即通用异步收发器,是串行通信的一种协议,它规定串行通信的波特率、起始/停止位、数据位、校验位等格式,以及各种异步握手信号。也可将UATR理解为通用串行数据总线,该总线双向通信,可以实现全双工传输和接收。UART能提供RS-232C数据终端设备接口,使计算机可以和调制解调器或其它使用RS-232C接口的串行设备通信,包括监控调试器和其它器件。

计算机内部采用的是并行数据,不能直接把数据发到Modem,必须经过UART的整理才能进行异步传输,其过程为:CPU先把准备写入串行设备的数据放到UART的寄存器中,再通过FIFO(First Input First Output,先入先出队列)传送到串行设备;在UART模块中对要输出的数据流进行加工,使消息帧格式变为从一个低起始位开始,后面是5~8个数据位,一个可用的奇偶校验位和一个或几个高位停止位;接收时,接收器发现开始位(即’0’)时就判断数据准备发送,并尝试与发送器始终频率同步,UART从消息帧中去掉起始位和结束位,对进来的字节进行奇偶校验,并将数据字节从串行转换成并行。

上图为UART实现原理图,UART内核模块的功能是控制接收、数据加载和数据发送的过程,常用状态机来实现。在数据接收时,UART内核模块负责控制波特率发生器和移位寄存器,使得移位寄存器在波特率时钟的驱动

4

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库异步串行接口电路及通信系统设计设计报告(2)在线全文阅读。

异步串行接口电路及通信系统设计设计报告(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/419742.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: