课程设计(论文)用纸
所累加的校检和比较。若相同,则回送一个“0”,表示正确传送并结束本次的传送过程;若不相同,则回送一个“F”,要求发送方重新发送数据,直到接收正确为止。
4.4.1 PC机发送文件子程序
图4.5 PC机发送文件子程序流程图
输入一个文件先判断时候正确,如果正确先去的文件句柄然后发送联络信号给PC机,然后判断此时是否有键按下,若有键按下直接返回DOC;反之没有键按下就到判断“是否收到有键按下”的信息,若没有则继续循环这个判断的过程,直到有键按下;若有则进行接下来的程序判断:先发统计好的总字节数,然后进行校检和,将计算好的校检和给受应答信号,判断此时是否有应答。如果有应答则进入循环计算字节总数的程序中累加校验和,计算总的校验和,直到没有应答为止,将文件关闭。至此PC机发送文件子程序就结束了。
第 16 页
课程设计(论文)用纸
4.4.2 PC机接收文件子程序
图4.6 PC机接收文件子程序流程图
从已经建立好的文件夹中找寻目标,并判断正误,若内容正确则发送联络信号并且判断其是否是已经接收,如没有接收到则转向判断“是否有键按下”,若有则直接返回DOC;若没有则要进入到循环判断的阶段中,直到有确定的信息被接收到为止。如果已经接收,则返回一个“.”的信号,进一步计算接收总字节数,统计校检和和接收到的校检和并判断校检是否正确,若正确则向外发送“0”并关闭文件,反之,如果校检错误则向外发送“F”进入判断校检和的循环中,直到校检正确,并向外发送“0”为止。
4.4.3 PC机主程序流程图设计
第 17 页
课程设计(论文)用纸
图4.7 PC机主函数流程图
在有了上述发送和接收文件两个子函数之后,就可以以直接调用主函数来实现功能。主函数的工作是在判断传输进入的命令是否正确,正确则进入初始化并且完成串口初始化,反之,如果错误,则显示“错误”,然后返回DOS。完成串口初始化后,根据键入的命令来决定是发送还是接收文件,最后返回DOS。
软件设计总流程图
第 18 页
课程设计(论文)用纸
图4.8 单片机与PC机通信程序流程图
第 19 页
课程设计(论文)用纸
第五章:总结语
经过一个星期的努力终于把设计顺利完成了。通过这一个星期的学习,我发现自己还有好多不足之处。
本设计就是采用MCS-51系列单片机,利用AT89C51单片机串行口,实现与PC机通讯。本设计中包括了单片机通讯的编制,串行通讯的硬环境,数据格式的协议,数据交换的协议等多方面的知识,在这个单片机串行口与PC机通讯设计中,我主要是说明它的原理和应用,然后用一个相对简单的实验来实现这个功能。通过这次设计使我对这一学期所学的知识更加的系统化、深层次化。通过这次设计学会了分析问题、处理问题的方法,可以说达到了举一反三的目的。为以后工作、学习都打下了比较坚实的基础。
总之,我们在设计过程中学到了许多。作为现代的大学生,如果仅停留在以往的层次上,是远远跟不上时代的步伐,也无法使自己立足在竞争如此激烈的社会里,通过此实验,让我看到了自己的水平和差距,虽然我们有很多不足,但是在我们的努力下,弥补了我们的缺憾。此次学习使我受益匪浅。从中学到很多以前没有接触到的错误,及其解决办法和某些程序的设计方法。增加了自己在编程方面的功底。
第 20 页