通信工程专业综合训练(共享)

通信工程专业综合训练(共享)

ID:45619461

大小:355.55 KB

页数:65页

时间:2019-11-15

通信工程专业综合训练(共享)_第1页
通信工程专业综合训练(共享)_第2页
通信工程专业综合训练(共享)_第3页
通信工程专业综合训练(共享)_第4页
通信工程专业综合训练(共享)_第5页
资源描述:

《通信工程专业综合训练(共享)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、通信工程专业综合训练数据通信系统的设计与实现姓名:张会琪学号:01250423专业:通信工程学院:计算机与通信学院学校:兰州理工大学一、功能描述3二、系统分析与设计3三、主要技术4四、串口通信协议设计41、帧格式42、控制信号53、数据分帧及数据重整54、传输流程6五、原程序代码8六、主界面63七、小结63数据通信系统设计与实现一,功能描述本设计通过串口在两台计算机Z间建立连接,按照自定义串口通信协议进行信息交换,通过串口实现聊天、文件传输的功能。二,系统分析与设计系统架构方式如下图:内部缓冲区(接收及发送)串口通信协议CS

2、erialPortEx应用程序之.间数据交换接收端应用程用接收端应用程用内部缓冲区(接收及发送)串口通信协议CSerialPortExWin95/NT通信底层Win95/NT通信底层PC串口串口线PC串口rr三,主要技术使用API函数法实现串口通信,API是附带在Windows内部的一个极其重要的组成部分,Windows系统为其下运行的各种开发系统提供的开放式通用功能增强接口,并采用界•步方式来实现串口通信。四,串口通信协议设计串口通信协议设计思想基于帧传输方式,即在向串口发送数据时是一•帧一帧地发送。対于上层应用来说,应用

3、程序所发送的和所接收的都是流式数据,即如果应用程序需耍进行上层的协议解釋的说,它将而对这些流数据的重新拼装。为保证可靠的传输,在传输开始前,通过握手建立连接,在每一帧的传输小,采用发送/应答/更连/失败方式。1,帧格式此应丿IJ程序使用三种帧:控制帧、数据帧、语短语帧。控制帧与数据帧用于文件传输,短语帧用于短消息发送。(1)数据帧数据帧包括帧头、负载数据和校验和。帧头占6个字节,其中count表示负载数据长度(字节计算),Check1表示第二与笫三字节的校验和。0123450x000x00CountCheck1数据帧头负载数

4、据长coun(字节,最多不超过0x1000字节。校验和占两个字节,是对负载数据计算校验和的结果。(2)控制帧控制帧和控制信号合作完成通信同步与控制任务,他只是帧头,长为6字节。0123450x000x01nPackCheck1传输起始控制帧其中nPack表示本次传输共发送帧数,便于让接收方控制进度,Check1为第二与第三字节的校验和。当nPack二Check1=0时,表示木次传输结束,当接收方收到该帧时,不管是否已收到应接收帧数,都将结朿此次传输(计该帧为ABORT帧)。在没有发牛传输错误的情况下,一次传输只会出现两次控制

5、帧,第一次在传输开始时(计为控制首帧),第二次在传输结束时。(3)短语帧短语帧相对简单,帧中负载均为文本数据。发送与接收该帧不需建立连接也没冇错误控制,只是在帧头和帧尾插入了同步信号。0x03文本数据0x032.控制信号为提高通信效率,串口通信协议使用控制信号进行通信同步、纠错等各种控制任务。卜•而是串口通信协议定义的6种控制信号。constBYTESYN[l]={0xl};〃请求constBYTEACK[l]={0x2);〃响应constBYTERESEND[l]={0x4);〃重发constBYTEBUSY⑴二{0x7}

6、;〃忙constBYTEBYE[3]={6,0,6};//断开连接constBYTESTRfl]={0x3};〃短信息同步信号3.数据分帧及数据重组应用程序送过來的数据作为一个流按串口通信协议进行分帧,切割后为每个帧加上帧头和校验和,放入串口通信协议内部缓冲区内准备发送;在接收端,分帧的数据去掉帧头重新归到接收缓冲区流,由应用程序接收。数据分帧,加帧头、校验和应用程序数据VVVVVVV发送数据分帧过程校验和数据重组过程4•传输流程在发送数据前,串口通信I办议发送方将应用程序希望发送的数据进行分帧,然后按下面的步骤进行通信。(

7、1)握手•a.由发送端发SYN信号,等待反馈。•b.接收端收到SYN信号后发回ACK信号。•c.发送端收到ACK信号后,由发送端发出控制首帧。•d.接收端收到控制首帧后,CHECKSUM错误则发RESEND信号,然后重复步骤c〜d。如果正确,发ACK信号。•c.发送端收到ACK信号后,转到(2)数据传输的步骤a。(2)数据传输•a.由发送端发送笫i帧的帧头,等待反馈;若发送方发现该帧是ABORT帧,则转到(3)断开连接的步骤a。•b.接收端收到帧头后,帧长度校验和错误则发RESEND信号,然后重复步骤a〜b。如果正确,发AC

8、K信号。•c.若发送端收到ACK信号,则发送帧中数据和校验和。•d.接收端收到数据后,负载数据校验和错误则发RESEND信号,然后重复步骤c〜d。如果正确,发ACK信号。•e.若发送端收到ACK信号,则该帧数据发送成功。发送端发送SYN信号,开始下一帧的握手过程。•f.若接收端收到SYN信

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。