串行口数据传输的仿真和硬件实现实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

串行口数据传输的仿真

及硬件实现

第*组

班级:**********

姓名:*** ***

指导老师:***

一、实验目的:

串行口数据传输是数字系统中常用的一种数据传输方式。本次课程设计要求学生综合数字逻辑电路和串行口通信的有关知识,用硬件独立设计完成一个简单的串行口数据传输系统,并用FPGA可编程逻辑器件进行仿真。

二、实验仪器

1 双踪示波器 1台

2 直流稳压电源 1台

3 频率计 1台

4 数字万用表 1台

5 面包板 1台

三、实验内容与设计:

1、实验内容:一个简单的串行口数据传输系统的系统框图如下:

由图可见,系统分为发送端,接收端两部分。发送端主要是同步字符、结束字符、时钟电路和信息码发生器。

接收端包括串/并转换电路、字符检测电路、控制电路、锁存接收和显示电路。

2、各部分功能的端口设置:

(1)时钟电路:晶振的时钟输入信号、通过分频后提供系统使用的输出信号。

(2)信号发生电路:时钟电路发出的时钟信号输入端、生成的序列输出端。

(3)串并转换电路:时钟信号输入、串行序列输入端、并行序列输出端。

(4)字符检测电路:若采用并行检测,有并行数据输入端、检测信号输出端;

若采用串行检测,有串行数据接入端、时钟信号输入端、

检测信号输出端。

(5)控制电路:时钟信号输如端、检测信号输入端、控制信号输出端。

(6)锁存电路:控制信号输入端、并行数据输入端、并行数据输出端。

(7)显示电路:并行数据输入端。

3、各部分的逻辑设计:

(1)时钟电路设计:

由于晶振产生的时钟频率为1MHz,而为了显示稳定,需要的时钟频率为2Hz以下,所以需要分频。本次设计采用的是同步计数器来进行分频,输出端为Qa~Qd,分频系数为2N (N为端口数)。每个74LS163最多为24=16分频,而需要的分频系数:106÷2=5×105≈219。所以需要5块74LS163芯片用作分频。具体电路图如下:

所得的输出频率约为2Hz.

(2)序列信号发生器设计:

本次实验需要产生的序列为15位循环码“111100010011010”,通过检验可知,此序列产生的15个4位序列不互相重复,因此可以用4个D触发器来构造序列发生器。此序列信号发生器的反馈电路可以通过“与”、“或”、“非”逻辑门或数据选择器实现。本次实验中,我们使用了数据选择器。

状态表及卡诺图如下所示:

Q4 Q3 Q2 Q1 D 1 1 1 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0

0 1 0 0 1

1 0 0 1 1 0 0 1 1 0

0 1 1 0 1

1 1 0 1 0 1 0 1 0 1

0 1 0 1 1

1 0 1 1 1 0 1 1 1 1 Q4Q3

Q2Q100 01 11 10

00 φ 1 0 1

01 0 1 0 1

11 0 1 0 1

10 0 1 0 1

为使系统能够自启动,令φ=1。

使用Q4Q3作为数据选择器的输入,有

C0=,C1=1,C2=1,C3=0

故序列信号发生器的电路图设计如下所

(3)串并转换电路的设计

因为系统需要7位并行输出,所以串并转换电路可由两块移位寄存器74LS194级

联构成。电路图如下:

(4)串行字符检测电路的设计:

串行字符检测实际就是依次对字符进行检测,符合同步码的输出1,否则输出0。但若对7位同步码都进行检测,需要的触发器较多,电路将非常复杂。通过观察发现同步码后4位1000在整个序列中是唯一的,因此实验中通过检测1000来达到检测同步码的效果。检测电路可通过状态机来实现。

状态转移图如下所示:

1/0 0/11/01/00/0

0/0

对A 、B 、C 、D 进行编码: A 00,B 01,C 11,D 10

X=0 X=1 00 00 01 01 11 01 11 10 01 10

00

01

卡诺图如下:

Q 2Q 1 D 00 01 11 10 0 0 1 1 0 1

Q 2n+1 Q 2Q 1 D 00 01 11 10 0 0 0 0 1 1

Z 由卡诺图可得: D 2=Q 2n+1

=Q 1 D 1=Q 1n+1=Q1+D Z=Q2··

A

B

D

C

0/0 1/0 Z

X=0 X=1 00 0 0 01 0 0 11 0 0 10

1

Q 2Q 1 D 00 01 11 10 0 0 1 0 0 1

1

1

1

1

Q 1n+1

可用D触发器实现,电路图如下所示:

(5)并行字符检测电路的设计:

并行字符检测,即将原序列经串并转换电路后产生的并行信号与同步码1111000相比较,当与同步码相同时,即产生一个高电平。此检测电路可通过两个比较器实现,比较时应由低位到高位依次进行。本实验采用了两个数据比较器74LS85级联的方式。

电路图如下所示:

(6)控制电路的设计:

字符检测电路若检测到同步码就会对控制电路输出一个信号,控制电路对此信号做出反应,以此来控制锁存电路的开关。检测信号通过控制电路使锁存器开启,此后检测信号对锁存器的影响就不存在了。

电路图如下所示:

(7)锁存电路的设计:

锁存电路比较简单,只需要一块74LS273锁存芯片就可以。只要把7个数据输入端分别连接到串并转换电路的并行输出端,再将控制电路的输出端接到锁存器的时钟输入端即可。电路如下所示:

(8)显示电路的设计:

将锁存器的7个输出端接到数码显示管的7个管脚即可实现显示电路。要注意的是,数码管的abcdefg七个管脚分别对应数据的高位到低位。

相关文档
最新文档