毕业论文--基于fpga的串口通信电路设计内容摘要:
力和直观易用的接口,越来越受到数字系统设计者的欢迎。 Quartus II 软件支持 APEX 系列、 Cyclone 系列、 Stratix 系列和 Excalibur 系列等新型系列器件的开发。 含有工作组计算、集成逻辑分析仪、 EDA 工具集成、多过 程支持、增强重编译和 IP 集成等特性。 支持百万门级的设计,支持高速 I/O设计 , 具有更强的设计能力和更快的编译速度。 Quartus II 开发软件为可编程片上系统( SOPC)设计提供了一个完整的设计环境。 无论是使用个人电脑、 NUIX或 Linux 工作站, Quartus II 都提供了方便设计、快速编译处理以及编程功能。 Quartus II 输入的设计过程可分为创建工程、输入文件、项目编译、项目校验和编程下载等几个步骤。 FPGA 开发板介绍 本设计中开发板采用 Altera 公司 Cyclone II 系列 EP2C5T144C8 或者EP2C8T144C8 芯片而设计的。 帮助用户降低学习成本和加快用户快速进入可编程逻辑器件的设计开发领域。 提供一个帮助用户快速学习可编程逻辑器件的硬件平台。 开发板上使用 JTAG 接口对芯片进行编程,也可以使用 AS 接口下载。 配送的 ByteBlaster II 下载线可以下载 Altera 公司的所有 FPGA/CPLD 芯片。 开发板上所有的 I/O 口都通过排针引了出来,板上都有标示。 引出来的 I/O用户可以任意配置分配管脚,方便用户开发自己的产品,最大限度为用户节约学习成本。 开发板硬件配置介绍: ( 1) CycloneII U1 EP2C5T144C8 或者 EP2C8T144C8 ( 2) IIC U5 AT24C04 或者 AT24C02 或者 AT24C01 ( 3) AS U6 EPCS1 或者 EPCS4 基于 FPGA的串口通讯电路设计 9 ( 4) UART 通用的 MAX232 转换或者 USB— 串口小板 ( 5) PS/2 A; PS/2 B ( 6) 8 个动态数码管 ( 7) 8 个 LED 灯 ( 8) BELL ( 9) LCD12864/LCD1602 接口 ( 10) 4 个独立按键 ( 11) 一个 FPGA 重配置按键 ( 12) JTAG AS 下载模式 ( 13) 上电模式:外接 5V DC 电源 ( 14) 50M 有源晶体 ( 15) 8 路数据输入,可以固定的输入 1(高电平)或者 0(低电平) 本程序用到的 LED 灯管脚分配原理图如 12 所示, I/O 口分配如下: D30 : PIN6 D31 : PIN6 D32 : PIN70、 D33 : PIN7 D34 : PIN7 D35 : PIN7D36 : PIN7 D37 : PIN60,当 I/O 口为低电平时 LED 点亮。 图 12 8个发光二极管 I/O口分配 基于 FPGA的串口通讯电路设计 10 本程序用到的串口通信,串口管脚分配原理图如 13 所示, I/O 口分配如下:TX : PIN RX : PIN8。 图 13 串口接口的 I/O口分配 开发板上没有用的 I/O 都接了出来,具体请 看学习板上的标示,板上更清楚。 没有用的 I/O 口如图 13 所示。 本设计中输出的节后也用到了其中几个 I/O 接口,后面分配的时候可以看到本设计具体分配的管脚。 基于 FPGA的串口通讯电路设计 11 图 14 没有用的 I/O口分配 本章小结 首先本章主要对 Verilog HDL 语言进行简要概述,介绍了 Verilog HDL 语言的发展历史和 Verilog HDL 硬件描述语言具备的能力。 其次还对 Quartus II 软件进行了简要概述, Quartus II 作为一种可编程逻辑的设计环境,由于其强大的设计能力 支持 APEX 系列、 Cyclone 系列、 Stratix 系列和 Excalibur 系列等新型系列器件的开发。 含有工作组计算、集成逻辑分析仪、EDA 工具集成、多过程支持、增强重编译和 IP 集成等特性。 支持百万门级的设计,支持高速 I/O 设计 , 具有更强的设计能力和更快的编译速度。 Quartus II 输入的设计过程可分为创建工程、输入文件、项目编译、项目校验和编程下载等几个步骤。 最后本章还对 FPGA 进行了简要概述,并且对本设计将用到的 FPGA 开发板进行了介绍,以及本设计中将要用到的 I/O 口都给出了图示。 后面的章节将用到本章介绍的 Verilog HDL语言和 Quartus II软件以及 FPGA开发板,还将对软件的使用和开发过程进行详细介绍。 基于 FPGA的串口通讯电路设计 12 第 2 章 串口通信协议简介 RS232[8]接口(又称 EIA RS232C)是目前最常用的一种串行通讯接口。 它是在 1970 年由美国电子工业协会( EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。 本章主要介绍 RS232 接口的原理介绍。 串口通信接口 串口即串行数据接口,是一种常用的数据接口。 在 PC 一般都有两个串行口( COM1 和 COM2),其形状如图 11 所示,是典型的 9 针 D 形 接口,也称为DB9。 由于串口多采用 RS232C 传输协议并长达数十年,因此也常被称为 RS232接口。 图 21 串口的物理形状示意图 串口主要用于网管控制或主业务数据的传输,支持数据的双向传输,速率9600115200bps,即可以完成和 PC 的通信,也可以完成与带有标准串口的外设相连,其典型的连接方式如图 12 所示。 其中串口接口分为带插孔和带插针的两种,其中插针端称为 DCE,插孔端称为 DTE。 图 22 串口连接的示意图 RS232 通信协议 RS232 全名是“数据终端设备( DTE)和数据通讯设备( DCE)之间串行基于 FPGA的串口通讯电路设计 13 二进制数据交换接口技术标准”,该标准规定采用 25 个脚的串口连接器( DB25),不仅对连接器的每个引脚的信号内容加以规定,还规定了各种信号的电平。 标准的 RS232C 协议具有 25 根信号线,其中有 4 根为数据线、 11 根控制线、 3 根定时线和 7 根备用线。 通常情况下,使用其中的 9 根线就可以实现 RS232串口通信。 通常 DB25 也可以像 DB9 那样使用,但是它们的针号和针孔之间的连接关系是不一样的,下面给出常用的 25 针 DB25 和 DB9 的对照表以及管脚说明 [9],如表 11 所示。 表 21 RS232C接口引脚定义 DB25 DB9 信号源 信号名 信号功能描述 2 3 DCE TXD 发送数据,终端通过此将信号发给调制器 3 2 DTE RXD 接收数据,终端通过此从调制器接收数据 4 7 DCE RTS 请求发送,当终端需要发送数据时,使能该信号,控制调制器进入发送状态 5 8 DTE CTS 允许发送,当调制器准备好接收数据时,使能该信号,通知终端开始发送数据 6 6 DTE DSR 数据就绪状态,当其状态有效时,表明调制器处于可用状态 7 5 GND GND 信号地,信号地是所有信号的参考电平 8 1 DTE DCD 载波检测,当信号有效时,表明调制器已经接通了通信链路,终端可以准备接收数据 20 4 DCE DTR 数据终端准备,当其信号有效时表明数据终端可以使用 22 9 DTE RI 响铃指示,当本地调制器收到交换台发送的振铃呼叫信号时,使能该信号,通知终端 最为简单且常用的 RS232C 连接方法就是三线连接法,即地、接收数据和发送数据三脚相连。 这是因为收、发数据是时分的,二者不会同时传输 [10]。 对于DB9 和 DB25,常用的 3 线连接 法的原则如表 12 所示。 表 22 DB DB25 常用的 3线连接法 DB9~DB9 DB25~DB25 DB9~DB25 2 3 3 2 2 2 3 2 2 3 3 3 5 5 7 7 5 7 基于 FPGA的串口通讯电路设计 14 串口通信时序分析 RS232C 的串行总线在空闲的时候保持为逻辑“ 1”状态,即串行连接线上的电平为 3~15V。 当需要传送一个字符时,首先会发送一个逻辑为“ 0”的起始位,表示开始发送数据;之后就逐个发送数据位、奇偶校验位和停止位(逻辑“ 1”),每一次传输 1 个字符( 8 个比特)。 由于任意两个 字符对应瞬间的时间间隔是可变的,因此也被称为异步格式 [11]。 典型的传输时序如图 13 所示。 图 23 RS232 协议的传输时序 在 RS232C 协议中,可以设置数据的传输速率。 除此之外,字符的位宽、奇偶校验位、停止位都可以被设置。 字符可以被设置成 5~8 比特,奇偶校验位可以被去除;停止位可以设置成 1 位、 2 位甚至 位。 每秒传输的比特数也被称为二进制波特率,即位周期的倒数,简称为比特率,用于衡量 RS232 的传输速率。 RS232C 有一系列波特 率标准: 110bps、 300bps、 600bps、 1200bps、 1800bps、2400 bps、 4800bps、 9600bps、 、 、 、 和 56kbps 等。 有两点注意的是:首先,在设置波特率时,必须同时通知通信双方;其次,波特率的计算包括了起始位、字符、校验位、停止位在内所有的比特,而不是仅针对字符 [12]。 发送数据过程:空闲状态,线路处于高电位;拉低线路一个数据位的时间 T,接着数据按低位到高位依次发送,数据发送完毕后,接着发送奇偶校验位和 停止位(停止位为高电位),一帧资料发送结束。 接收数据过程:空闲状态,线路处于高电位;当检测到线路的下降沿(线路电位由高电位变为低电位)时说明线路有数据传输,按照约定的波特率从低电位到高电位接收数据,数据发送完毕后,接着接收并比较奇偶校验位是否正确,如果正确则通知后续设备准备接收数据或存入缓存 [13]。 由于 UART 是异步传输,没有传输同步时钟。 为了能保证数据传输的正确性, UART 采用 16 倍数据波特率的时钟进行采样。 每个数据有 16 个时钟采样,LSB 字符 2 P SP st 起始位( start) 奇偶位( parity) 停止位( stop) st 字符间隔 MSB 基于 FPGA的串口通讯电路设计 15 取中间采样值,以保证采样不会滑码或误码。 一般 UART 一帧的数据位数为 8,这样即使每个数据有一个时钟的误差,接收端也能正确地采样到数据。 UART 的接收数据时序为 [14]:当检测到数据的下降沿是,表明线路上有数据进行传输,这时计数器 CNT 开始计数当计数器为 24=16+8 时,采样的值为第 0位数据;当计数器的值为 40 时,采样的值为第 1 位数据,依此类推,进行后面6 个数据的采样。 如果需要进行奇偶校验,则当计数器的值为 152 时,采样的值即为奇偶位;当计数器的值 168 时,采样的值为“ 1”表示停止位,一帧数据接收完成。 本设计将按上面的算法进行 Verilog HDL 语言编程与仿真。 本 章小结 本章主要介绍了 RS232 通信协议的基础知识,明确实现串口通信需要的端口和功能,为以下章节通过 Verilog HDL 硬件描述语言实现串口的通信。 目前,大部分处理器 都集成了 支持 RS232C 的 通用异步收 发器( Universal Asynchronous Receiver/Transmitter, UART。 本设计在后面提到的 UART 即串口通信控制器),辅助处理器和串行设备之间通信,设计人员只需要对其进行配置即可完成下列工作: ( 1) 完成处理器内部的并行数据到串行数据的转化以及外部串行数据到并行数据的转化。 ( 2) 完成输入数据的奇偶校验,以及在输出数据中插入奇偶校验比特。 ( 3) 完成数据传输和停止位的检测,并从中提取符号数据。 ( 4) 完成外部设备串口设备的管理和响应。 基于 FPGA的串口通讯电路设计 16 第 3 章 串口通信的 Verilog HDL 实现 本设计通过前面两张介绍的串口通信基本知识和 Verilog HDL 语言进行串口通信的实现,本设计实现的串口通信电路主要由波特率发生器、数据接收模块和数据发送模块这 3 个模块组成,强调功能划分明确,便于系统设计和调试。 设计功能说明 本实设计要求在 FPGA 开发板上实现波特率为 115200bps,停止位为 1 比特、1 比 特校验位的串口通信,并要求和 PC 机通过串口调试助手完成双向通信。 不仅要求将 PC通过键盘输入的数据显示在 PC机的串口调试助手的数据发送框中,还要求用 PC 发送数据的 ASCII 码来驱动 FPGA 开发板的 8 个 LED 灯。 开发板上接收到数据后将数据通过串口数据线发送回 PC 的串口调试助手上并显示在数据接收框中。 通过检测 LED 灯的亮灭来判断发送数据的 ASCII 码是否正确,并观察串口调试助手上接收到的数据与发送的数据是否一致。 波特率发生器。毕业论文--基于fpga的串口通信电路设计
相关推荐
3 焊锡渣 1 设备原因网板与 PC 之间间隙过大焊膏残留未能及时清除 2 人为原因网板不干净或清洁后仍有残留 3 原材料不良基本与其他不良相似 4 焊膏厚度不一 像这样的不良可能有很多种原因造成视情况而定如工作台网板各不水平两者前后或左右间隙不等有可能造成此类情况的不良 调整设备硬件使其两者水平 32 SMT 生产中的贴装
Message 数据重新封装。 JSP 网页调用 PMessage 的 getTo 方法可以直接获得字符串类型的地址。 MailUserData 类用来存放用户的相关信息,还有 对邮件文件夹操作的一些方法的定义,还有邮件管理的一些操作的定义,例如:发送邮件,删除邮件等。 系统模块的划分 按照本系统的总体功能划分,可以将这个电子邮件系统分成 5 大模块,首先是登录模块,作为验证需要
的基音周期中被广泛应用,这是因为相关处理 法抗波形相位失真强.另外它在硬件处理上结构简单。 本文对语音信号基音周期检测进行了分析,在此基础上采用了中心削波和三电平削波的方法对语音信号进行处理。 最后通过 MATAIJB 软件实现了语音信号的基音周期检测。 二 、靖点检测 汉语的音节末尾都是浊音、只用短时能量就能较好地判断一个词语的末点。 因此汉语孤立词语的末点检测不存在什么困难。
是不变的,由 凸轮 的升程决定。 柱塞每循环的供油量大小取决于供油行程 ,供油行程不受凸轮轴控制是可变的。 供油开始时刻不随供油行程的变化而变化。 转动柱塞可改变供油终了时 刻,从而改变供油量。 柱塞泵工作时,在喷油泵凸轮轴上的凸轮与柱塞 弹簧 的作用下,迫使柱塞作上、下往复运动,从而完成泵油任务,泵油过程可分为以下三个阶段。 进油过程 当凸轮的凸起部分转过去后,在弹簧力的作用下,柱塞向下运动
37 预定餐品测试 ..........................................................................................................37 预定餐位测试 .........................................................................
样,具有良好的自相关性,而且是一种结构确定、可以复制的周期性序列。 GPS 信号接收机就是利用这一特征使所接收的伪随机噪声码和机内产生的伪随机噪声码达到对齐同步,进而捕获和识别来自不同 GPS 卫星的伪随机噪声序列。 由于受 GPS 卫星至用户 GPS 接收机的路径信号传播延迟的影响,被接收的伪随机码和复制的伪随机码之间产生了平移;如果通过一个时间延迟器来对复制的伪随机码进行移动