版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Abstract:Thecompetitionhitssubsystemsoftwarereceiveandthemanagementsystemmanagementsystem,regardingtsystemrequirementfunctioncomplete,theoperationissimpKeywords::VisualBasic,serialcommunication,comp 3 3 4 4 5 6 7 8 8 9参考文献 21 22 23在计算机的发展历史上,运算和控制一直是计换也常常困扰着人们的认识思路和研发目标。这是一对矛盾,对于不同的课题或截然不同的2个方面,用相同的价值去衡量显然是不合适的。在20世纪70年代,半导体微电子专家为了绕开这个矛盾,深有远虑地另辟蹊径,按照嵌入式微控器系统的发展思路,交一个微型计算核心部件集成在一个芯片上,这就形成最早的单片机。如今单片机的用途十分广泛,这次毕业设计的内容就是利用单片机与微机之间的数据传输和处理来实现竞赛打分系统。大屏幕,给观众强烈的视觉感受,凝聚比赛现场气氛,体现评委用于企事业单位、学校、娱乐行业等组织的各类选拔赛、技能比武、运动会等活动,如:歌手大赛、演讲比赛、朗诵比赛、模特选拔赛、演员考试、技能且象电视节目一样专业。本评分系统操作简单,实用性强,是开手!本系统由计算机、打分终端、显示终端等组成,采用总线结构,连线少、结构简单,便于扩展。在20世纪70年代,半导体微电子专家按照嵌入式微控器系统的发展思路,交芯片组成,结构奇特,具有与众不同的指令系统,深受民用电器和仪器仪表领域的欢迎和重视.从此,单片机开始迅速发展,应用领域也在不断扩大。现已成为微型计算机的重要分支,单片机的发展过程通常可以分为一下几个发展过程。(1)第一代单片机(1974-1976):这是单片机发展的起步阶段.在这个时期生产的单片机特点是,制造工艺落后和集成度低,而且采用了双片形式.典型的代表产品有Fairchild公司2)第二代单片机(1976-1978):这是单片机的第二发展阶段.这个时代生产的单片机随应用范围也不是很广,典型的产品有Inrel公(3)第三代单片机(1979-1982):这是八位单片机成熟的阶段.这一代单片机和前两代相度的增加,更有甚者是新集成了全双工串行通信接口电路.在指令系统方面,普遍增设了乘除有Intel公司的MCS-51系列机,Motorola公司的MC6801系机,TI公司的TMS此外,Rockwell,NS,GI和日本松下等公司也先后生产了自己的单片机系列.(4)第四代单片机(1983年以后):这是十六位单片机和八位高性能单片机并行发展的时代,十六位机的特点是,工艺先进,集成度高和内部功能强,加法运算速度可达到1uS以上,而且允许用户采用面向工业控制的专用语言,如PL/MPLUSC和Forth语言等.代便产品有HPC16040等。然而,由于十六位单片机价格比较贵,销售量不大,大量应用领域需要的是高性能,大容量和多功能新型八位单片机.这些单片机有Intel公司的88044(双CPU工作),Zilog公WDC公司的65C124(内含网络接口电路),等等。增强;2.内部资源增多;3.引脚的多功能化;4.低电压低功耗。问并使用这些WindowsAPI及其它外部DLL,调用他们的方法与调用visualbasic程相同。ActiveAPI控件的使用和OLE自动化是增强vb功能的另外一个途径,通过员能够访问外部应用程序提供的大量对象。是指可视化的编程方法,basic是指在原有basi计培训,也能开发出不错的程序,现在vb已经有了数百个语句,函数及关键词,其中有很多和windowsGUI有直接关系。本打分系统采用了vb编程。竞赛打分时通常有多个评委,每人一个终端,各个终端通过电缆与计算机相连,由计算机按照某种评分规则计算选手的最终得分,再显示的大屏幕上要确定各个终端与计算机的通信问题。打分终端与主机的打印口相连接,采用总线方式,如下图所示:每个打分终端设置不同的地址,用地址译码器对地址线上的查询方式读取第个打分终端上的数据。每一个打分终端单独用三根通信线与主机连接,主机需要有多串口卡。如下图所示:这种方式软件设计简单,通信距离远(数十米但连线多,另外,且主机需要有多串口卡。每个打分终端设置不同的地址,主机采用查询方式读取第个打分终端上的数据。但软件设计稍复杂。基于上述三种方式的优缺点,我们选用了第三种方式,即RS-485总线方式。打分终端是一个单片机系统,包括显示器,键盘、RS485接口等部件。并行口和一个串行口,两个16位计数/定时器,5个中断源,这些内部资源完全可以满足本设计的需要。或小数。为了简化硬件,本设计只制作了三个打分终端。本应使用单片机控制大型LED数码管显示总得数码管作显示终端。竞赛打分系统主机负责对终端进行查询,读取分值,并进行统计、显示总分、存储等。我们使用了商品化的转换器。打分终端数量少,所以不能去掉最高分和最低分,采用求总分或求均分的方法。软件设计为在屏幕上显示一个表格,分别显示每个评委的打分及统计的总分(或均软件除了统计成绩外,还应能够保存成绩,并可打开以往保存的比赛成绩。打分系统主保存保存从图5.1.1的框图可以分为两个主要的窗口,既打分系统的主界面和显示得分表的界面,在主界面我们主要是进行打分前的设置,例如比赛的名称,人数,采用何种记分规则等等。而第二个主要窗口是用来显示各中可以对各位选手的成绩进行排序,并且可以按照预先设置好的所打的分数,并且记录他们的总分或者是平均分数。并且在该窗成绩或者调出以往选手的成绩。当系统收到评委的打分时,系统数据显示主窗口对应的文本框中,同时填入成绩表对应的单元格的一致性。该界面主要是显示裁判打分,并且显示选手姓名,编号和得分。在图5.2.1中有两个按钮“前一选手”和“下一选手”其实EndIfEndIf就实现了上面的判断功能,若已达最后一行,I则将该键设置为不可按照新的Index值将相应编号选手的得分情况显示在主窗体上。应选手得分情况,同时判断是否已经达到表格第一行,EndIf通常情况下,要去掉一个最高分,一个最低分,然后计算最有三个打分终端,因此无法实现上述功能。在本系统里计算选手和评委人数,可以求总分或着求均分,其默认为求总分。图5.2.4就是设置求分方法的界面。其设置求均分或者总分的代码如下:DimIAsInteger,NAsIntN=Combo1.TextForm2.Text1(I).BackColor=&H8000000Form2.Label3(I).Visible=NextIForm2.Label3(I).Visible=NextIIfOption1ThenEndIf在设置求分方法后,我们并没有马上计算总分或者是均分,而是把这个工作放在了判人数,同时实现把没有被选择的裁判所在的格子变成灰色。于接收数据是随机的,所以我们采用中断方式接收,在程序中建立了一个该控件的MSComm1_OnComm的事件过程,并将其设置为当收到第5个字符时开始中断,打分中断上1个字节累加和,所以每次通讯至少6据的字符个数不等,为了能够保证完整接收数据,在MSComm1_OnCom次数据一定发送完毕,这时在定时器的Timer1_Timer事件过程中接收数据,因为传输率毫秒。个字符为裁判号,余下的字符为分值。把分值填入主窗体和表格的相应单元格中。计算机采用中断方式接收打分键盘发过来的数据,当每次通信过程中收到5个字符时引发OnComm事件,在OnComm事件过程中并没有去接收数据,而只是启动定时器下面是Timer1_Timer事件过程Timer1.Enabled=FalseBuf=MSComm1.Input'从串口缓冲区读数据N=N+Val(Mid(Buf,I,1))NextIIfN<>Val(Right(Buf,ExitSubEndIfN=Val(Left(Buf,4))NextIIfForm3.Option2ThenSum=Sum/Val(Form3.Combo1.Text)EndIft隔0.2秒向打分终端发送一条打分命令(T命令发完自动禁止定时器。(初始状态IfI>Val(Form3.Combo1.Text)ThenEndIfMSComm1.Output=“000”&Chr(I+64)&“T”是VB6.0的默认控件,需要添加,点击VB“工程”菜单,在打开的“部件”对话框中选择“MicrosoftFlexGridControl6.0”选中它并点击“确定”按钮即可。而行的扩展是在选手姓名编辑过程中就完成了。其实现方法如下:DoWhileI<=Len(S)IfJ>=Form1.FG1.Rows-1Then'Form1.FG1.Row=J'设置Form1.FG1.Col=KForm1.FG1.CellAlignment=4'该行各格文字居NextKEndIfIfK>0ThenC=Mid(S,I,K-I)ElseIfI<=Len(S)ThenC=Mid(S,I,Len(S)-I+1)EndIfI=K+2'I指针指向回表的列数是固定的,不可扩展,最左边一列用于显示行号(即选手编号其余各列用于显示选手姓名,各评委的打分和最后得分;表的行数据是可打开的成绩文件中选手人数超过20人时,表的行数会看上去扩充。和“打开”三个模块。对于未保存的新表格,用户点击“保存”命令,将自动打开“另存为”对话框,户输入保存路径和文件名,实现以上功能的代码如下:IfFname<>""ThenOpenFnameForOutpIfErr<>0Then'Err=0为无错误EndIfForI=FG1.FixedRowForJ=FG1.FixedColNextJNextIEndIfCommonDialog1.Flags=6'使“另存为”对话框当选择的文件已息框,用户必须确认是否覆盖该文件,隐藏只读复选框。CommonDialog1.CancelError=True'当选取IfErr=cdlCancelThenEndIfFname=CommonDialog1.FilIfFname=""ThenExitSubOpenFnameForOutpIfErr<>0Then'Err=0为无错误EndIfForI=FG1.FixedRowForJ=FG1.FixedColNextJNextI事本也可以打开,用记事本打开时第一行为比赛名称,其余每一格,顺序为从左到右,从上到下的方式。为了不遗忘保存数据,我们在系统设置了一个全局的逻辑型变量用作文件被修改标志,该逻辑变量在标准模块中定义如下:保存成绩退出”或“放弃退出”。两个功能,这两个功能在上文已经叙述过,在这里就不再重复了。输入的文件路径和文件名。排序模块:当用户点击图5.2.6上的“名次”命令时选择排序方法,排序的依据是表中各行的“得分”一栏,序列为从高到低,即降序。这时各行的序号即为选手名次,排列中没有考虑并列名次。DimIAsInteger,JAsInteger,KDimT(10)AsString,MAsInM=FG1.Rows:N=FGNextKEndIfNextJ参考书籍:《VisualBasic6.0开发数据库》人民邮电出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 筑牢德育防线促进全面发展小学主题班会课件
- 责任担当成就人生之路-小学主题班会课件
- 2025年高职单招考试语文试卷(含答案)(四)
- 医务人员“三基”培训计划(3篇)
- 警惕网络诈骗打造纯净网络小学主题班会课件
- 项目进度通知函已完成部分(5篇)
- 产品用户体验优化设计指南
- T电梯修理模拟考试题(含答案)
- 熔化焊接与热切割模拟考试(附答案)
- 码头项目施工方案
- 2026年精准扶贫知识测试题及答案
- 2026云南长水机场北高速公路有限责任公司就业见习人员招聘10人考试备考试题及答案详解
- 2025北京大兴九银村镇银行社会招聘笔试历年典型考题及考点剖析附带答案详解2套
- 高中地理(高二年级·选择性必修三)教学设计:《环境问题及其危害》
- 【北京专用】期末模拟卷(二)- 2025-2026学年八年级语文下学期同步备考模拟卷(统编版)(原卷版)
- 《山东省学校安全条例》及其实施细则政策解读课件
- 2026年(统编版新教材)一年级道德与法治下册全册单元练习(含解析)新版
- 高中英语2026届高考短文范文 (共100 篇)
- 【初中竞赛资料】精题-初中生物学竞赛训练题(一)
- 2026年药物警戒专员高频面试题包含详细解答
- 崇左市2026成人高考高起专语文预测试题(含答案)
评论
0/150
提交评论