接口课程设计设计一个串行数据传输

上传人:新** 文档编号:431463556 上传时间:2022-12-19 格式:DOC 页数:23 大小:247.52KB
返回 下载 相关 举报
接口课程设计设计一个串行数据传输_第1页
第1页 / 共23页
接口课程设计设计一个串行数据传输_第2页
第2页 / 共23页
接口课程设计设计一个串行数据传输_第3页
第3页 / 共23页
接口课程设计设计一个串行数据传输_第4页
第4页 / 共23页
接口课程设计设计一个串行数据传输_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《接口课程设计设计一个串行数据传输》由会员分享,可在线阅读,更多相关《接口课程设计设计一个串行数据传输(23页珍藏版)》请在金锄头文库上搜索。

1、石河子大学信息科学与技术学院 接口课程设计题目名称: 设计一个串行数据传输 专业班级: 计科 09(1)班 学生姓名: 杜杰 学生学号: 2009082209 指导教师: 裘祖旗 完成日期:2012年01月05日目录1 题目及要求31.1题目:31.2要求:32功能设计32.1宏定义32.2函数33详细设计33.1设计方法33.2 设计思路33.3 重点、难点33.4流程图44、程序运行展示64.1发送数据的窗口:64.2接受数据的窗口:75总结76参考文献77附:源程序71 题目及要求1.1题目:设计一个串行数据传输1.2要求:1)用中断方式实现PC机间的相互通信(串口)2)菜单选择:设置波

2、特率、起停位、数据位、连接、退出等;3)设置打字发送区、显示接收区;4)在一台PC机上的发送区打字时并显示,同时在另一台PC机上的接收区显示;5)要求界面美观。2功能设计2.1宏定义1)clearscreen 定义清屏宏2)gb 定义光标定位宏2.2函数1)main 主函数2)moveshape 子函数3详细设计3.1设计方法 两个程序,分别针对两台PC机,一个是发送数据的程序sent.asm ,一个是接受数据的程序get.asm。 两个程序均有以下函数: 1)clearscreen 清屏宏 用到了BIOS中断06H。 2)gb 光标定位宏 用到了BIOS中断02H。 3)main 主函数主要

3、是寄存器初始化,调用moveshape子函数 4)moveshape 函数主要是用于根据用户需求改变8251A方式选择命令字格式,以及sent.asm程序中,moveshape函数还包括发送数据的程序,get.asm程序中,moveshape函数还包括接收数据的程序。3.2 设计思路 主要是根据用户选择改变8251A的方式选择命令字格式,然后将其带入后面程序中即可3.3 重点、难点 1)重点 根据不同的选择,改变8251A的方式选择命令字格式。 2)难点因为用户根据菜单选择可以使8251A的方式选择命令字有24种格式,因此得把24种方式选择命令字都带入后面程序。3.4流程图 1)main 主函

4、数开 始调用清屏函数寄存器初始化光标定位输出提示信息调用子函数moveshape结束 2)moveshape 子函数 选择a选择b选择7选择b选择4选择3选择2选择1开始设置显示方式跳到b2跳到b3跳到b1跳到b4结束输入数据位位数输入要发送的数据输入停止wei位位数选择a跳到c1跳到c2选择b输入停止wei位位数选择a跳到c3跳到c4选择b输入停止wei位位数选择a跳到c5跳到c6选择6输入波特选择5跳到d1跳到d2跳到d3选择7选择6输入波特选择5跳到d4跳到d5跳到d6输入停止wei位位数跳到c7跳到c8跳到m发送或接收数据程序4、程序运行展示4.1发送数据的窗口: 1)输入要发送的数据

5、: 2)输入你想要的数据位,停止位,波特率:4.2接受数据的窗口:输入你想要的数据位,停止位,波特率后,直接显示接收到的字符:(显示乱码,因为我没有连两台电脑试,因为时间不够了,但程序绝对没问题)5总结首先,我要感谢裘祖旗老师一学期来的辛苦劳动,在这里我要说“谢谢您,裘祖旗老师!”在过去的一学期,裘祖旗老师对我们不厌其烦的讲解,使我们学到了很多有用的知识。通过课程设计,我知道了实践的重要性,我会在以后的学习中注重实践的。同时,做课程设计的过程中,使我对汇编又重新认识了一遍,也熟悉了一遍,对我益处很大,在开始做时,我甚至忘了怎么去调试程序。最后,完成了这个程序我很开心。6参考文献1东扬生等编著:

6、“宏汇编语言MASM6实用大全”,科学出版社,19932求伯军主编:“新编深入DOS编程”,学苑出版社,19943沈美明 温冬婵 主编:“IBM-PC汇编语言程序设计”,清华大学出版社,20017附:源程序sent.asmdataseg segmentmessage1 db main menu ,13,10 db -,13,10 db | date | a:1tingzhiwei | bit |,13,10 db | 1 5 | b : 2 | 5 : 1 |,13,10 db | 2 6 | | 6 : 16 |,13,10 db | 3 7 | | 7 : 64 |,13,10 db |

7、4 8 | 0 exit | |,13,10 db -,13,10,$message2 dbplease into the sent date:,$message3 dbplease put into the date:,$message4 dbplease put into the tingzhiwei:,$message5 dbplease put into the bit:,$message6 dbexit or not:,$speed dw 0ffh color db 1 direction db e maxlen db 11charcnt dw ?pointer dw ?lineon

8、 db ?colon db ?dataseg endsoutput macro string;定义输出提示宏mov ah,09hlea dx,stringint 21hendmclearscreen macro ch1,cl1,dh1,dl1,bh1;定义清屏宏 mov ah,6 mov al,0 mov ch,ch1 mov cl,cl1 mov dh,dh1 mov dl,dl1 mov bh,bh1 int 10hendmgb macro dh1,dl1 ;定义光标定位宏 mov ah,2h mov bh,0h mov dh,dh1 mov dl,dl1 int 10hendmcodes

9、eg segment assume cs:codeseg,ds:datasegmain proc nearstart: sub ax,ax mov ax,dataseg mov ds,axA11: clearscreen 0,0,24,79,07h ;清屏开窗口5 clearscreen 0,10,9,70,22h clearscreen 1,11,8,69,4eh gb 2,0 output message1 ;输出提示 output message2 lea dx,maxlen mov ah,0ah int 21h call moveshape ret main endpmoveshape

10、 proc near ;子函数 gb 12,0 output message3 mov ah,01h ;判断键盘状态 int 21h cmp al,1 ;根据键盘输入的选择,做相应的处理 jz b1 cmp al,2 jz p1 cmp al,3 jz p2 cmp al,4 jz p3 b1: gb 14,0 output message4 mov ah,01h ;判断键盘状态 int 21h cmp al,a ;根据键盘输入的选择,做相应的处理 jz c1 cmp al,b jz c2p1:jmp b2p2:jmp b3p3:jmp b4c1:gb 16,0 output message5 mov ah,01h ;判断键盘状态 int 21h cmp al,5 ;根据键盘输入的选择,做相应的处理 jz d1 cmp al,6 jz d2 cmp al,7 jz d3d1:mov bh,71h jmp md2:mov bh,72h jmp md3:mov bh,73h jmp mc2:gb 16,0 output message5 mov ah,01h ;判断键盘状态 int 21h cmp al,5 ;根据键

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号