RS-232串口通信设计课程设计
- 格式:docx
- 大小:423.96 KB
- 文档页数:36
h
h
《 CPLD/FPGA 》
课程设计报告
题 目: RS-232串口通信设计
院 (系): 信息科学与工程学院
专业班级: 通信工程11
学生姓名:
学 号:
指导教师:
2014年06 月 09 日至2014年 6 月 20 日
h
h RS-232串口通信设计 课程设计任务书
一、设计(调查报告/论文)题目
RS-232串口通信设计
二、设计(调查报告/论文)主要内容
下述设计内容需由学生个人独立完成:
1.理解电路原理图与工作过程;
2.掌握RS-232电气特性;
3.掌握RS-232通信原理及串口通信数据格式,并编程完成串行数据的发送、接收和显示;
4.能正确处理编程与调试过程中所遇到的问题。
三、原始资料
1. 通信与电子系统实验指导书;
2. CPLD/FPGA实验箱。
四、要求的设计(调查/论文)成果
1.程序结构合理,语言简洁,格式规范,注释详细;
2. 掌握RS-232的工作机制与原理;
3. 格式为:1位起始位,8位数据位,1位停止位,无奇偶校验位,波特率设定为300Baud。能与计算机正常通信;
4. 按要求完成课程设计报告,格式符合学校规范标准,字数不少于2000字。
五、进程安排
第1天 选题,课题讲解;
第2-3天 课题分析,完成设计方案;
第4-6天 软件编程;
第7-8天 软件调试,故障排查;
第9天 结果验收,评分;
第10天 撰写课设报告。
六、主要参考资料
[1] 陈曦. 通信与电子系统实验指导书,武汉:华中科技大学武昌分校.
[2] 谭会生.EDA技术及应用,西安:西安电子科技大学出版社,2010.
[3] 潘松,黄继业.EDA技术与VHDL,北京:清华大学出版社,2009.
指导教师(签名):
20 年 月 日 h
h 目 录
1. 课程设计的目的………………………………………………………………………4
2. 课程设计题目描述和要求……………………………………………………………4
3. 课程设计报告内容……………………………………………………………………4
3.1 课题设计方案及基本原理……………………………………………………………4
3.2 软件设计………………………………………………………………………………7
3.3 问题……………………………………………………………………………………14
4. 总结………………………………………………………………………………………15
5. 参考资料…………………………………………………………………………………16
附录 程序清单……………………………………………………………………………17
h
h 1.课程设计的目的:
(1)学习RS-232串口通信数据结构,并编程完成串行数据的接收和显示。
(2)掌握RS-232的工作机制与原理。
(3)熟练掌握Quartus2软件的使用。
(4)了解CPLD/FPGA实验箱。
2.课程设计题目描述和要求:
(1)课程设计题目:基于FPGA的串口通信程序设计。
(2)课程设计要求:
下述设计内容需由学生个人独立完成:
1.理解电路原理图与工作过程;
2.掌握RS-232电气特性;
3.掌握RS-232通信原理及串口通信数据格式,并编程完成串行数据的接收和
显示;
4.能正确处理编程与调试过程中所遇到的问题;
5. 在FPGA中构造一个异步串行通信控制模块,完成PC机发送的接收,并设计
显示模块,完成接收数据的显示
(3)要求的设计成果:
1.程序结构合理,语言简洁,格式规范,注释详细;
2. 掌握RS-232的工作机制与原理;
3. 格式为:1位起始位,8位数据位,1位停止位,无奇偶校验位,波特率设定
为300Baud。能与计算机正常通信;
4. 按要求完成课程设计报告,格式符合学校规范标准,字数不少于2000字。
3.课程设计报告内容: h
h 3.1课程设计方案及基本原理:
设计方案:
利用实验箱上的MAX232芯片控制通过适当分频(分频的目的是为了达到要求的波特率,控制数据传输速率)的串行输入信号,并将其转换为并行信号并通过实验箱上的数码管的后两位显示从计算机中传输出来的16进制数。例如在计算机端输入(FF)则会在试验箱上看到(000000FF)的显示图示。
基本原理:
RS-323C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在0~20000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。
EIA-RS-232C中+3V~+15V之间的电平为‘0’,-3V~-15V的电平为‘1’;与TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的TTL器件连接,必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,如MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。MAX232芯片可完成TTL←→EIA双向电平转换。h
h
1.串口通信:
(1)什么是串口通信:
串口是计算机上一种非常通用设备通信的协议。大多数计算机包含两个基于RS232
的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带
有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。 串行
接口(Serial port)又称“串口”,主要用于串行式逐位数据传输。常见的有一
般电脑应用的RS-232(使用 25 针或 9 针连接器)和工业电脑应用的半双RS-485
与全双工RS-422。
(2)串口接口规格:
串行接口按电气标准及协议来分,包括RS-232-C、RS-422、RS485、USB等。
RS-232-C、RS-422与RS-485标准只对接口的电气特性做出规定,不涉及接插件、
电缆或协议。USB是近几年发展起来的新型接口标准,主要应用于高速数据传输
领域。
(3)串口通信原理:
串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)
的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。
它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设
备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口
而言,长度可达1200米。典型地,串口用于ASCII码字符的传输。通信使用3根
线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在
一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须
的。 h
h 2.RS232芯片
(1)电气特性:
EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。
在TxD和RxD上:逻辑1(MARK)=-3V~-15V
逻辑0(SPACE)=+3~+15V
在RTS、CTS、DSR、DTR和DCD等控制线上:
信号有效(接通,ON状态,正电压)=+3V~+15V
信号无效(断开,OFF状态,负电压)=-3V~-15
(2)RS232接口定义: h
h
(3)RS232总线电平转换:
(4)RS232数据传输格式:
串行通信中,线路空闲时,线路的TTL电平总是高,经反向RS232的电平总是低。一个数据的开始RS232线路为高电平,结束时RS232为低电平。数据总是从低位向高位一位一位的传输。示波器读数时,左边是数据的低位。例如,对于16进制数据55H和aaH,当采用8位数据位、1位停位传输时位停止位传输时:55H=01010101B,高低位倒序后为10101010B,加入一个起始位0,一个停止位1,55H的数据格式为0101010101。aaH=10101010B,高低位倒序后为01010101B,加入一个起始位0,一个停止位1,aaH的数据格式为:0010101011
(5)RS232通信过程:
I:开始通信时,信号线为空闲(逻辑),当检测到由到的跳变时,开始对“接收
时钟”计数。
II:当计到8个时钟时,对输入信号进行检测,若仍为低电平,则确认这是“起
始位”,而不是干扰信号。
III:接收端检测到起始位后,隔16个接收时钟,对输入信号检测一次,把对应的值 h
h 作为D0位数据。若为逻辑1, 作为数据位1;若为逻辑0,作为数据位0。
IV:再隔16个接收时钟,对输入信号检测一次,把对应的值作为D1位数据。….,
直到全部数据位都输入。
V:检测校验位P(如果有的话)。
VI:接收到规定的数据位个数和校验位后,通信接口电路希望收到停止位S(逻辑
1),若此时未收到逻辑说明出现了错误在状态寄存器中置“帧错误”标志若没
若此时未收到逻辑1,说明出现了错误,在状态寄存器中置“帧错误”标志。若
没有错误,对全部数据位进行奇偶校验,无校验错时,把数据位从移位寄存器
中送数据输入寄存器。若校验错,在状态寄存器中置奇偶错标志。
VII:本幀信息全部接收完把线路上出现的高电平作为空闲位。
VIII:当信号再次变为低时,开始进入下一帧的检测。