计算机接口原理课程设计实验报告.docVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机接口原理课程设计实验报告

计算机接口原理课程设计实验报告 会员卡消费系统 王晓飞 2001011830308 同组:王君泽 刘紫兆 童运帷 计算机0108班 2004年9月 一.课程设计目的及要求: 1.掌握接口硬件开发平台的使用方法,利用现有的实验平台和PC机,组成 一个微机模拟应用系统; 2.掌握基本接口电路的综合应用; 3.掌握接口电路的驱动程序和界面软件的设计与编制,学会调试与测试接 口软件的一般方法; 二.课程设计题目: 会员卡消费系统。 三.课程设计任务: 结合实际应用,设计一个微机应用系统,要求该系统综合应用并行接口、串行接口,定时器接口、中断接口、模拟接口等等,实现主控中心微机与下位机实现远距离传送,以及远程控制、监测功能。 对于本题目,有如下宏观上的任务介绍: 分客户端和服务器端构架.客户端模拟实际客户机打卡消费控制面板;服务器端负责接收处理发回数据并即时存入数据库 客户端服务器端使用VC6进行编制。串口通讯采用老师提供的myport.h以及mfid.h进行初始化和函数操作。数据库采用Access数据库,存储每张卡的金额等相关信息。程序中的数据库连接使用ODBC源。 所有数据的操作在服务器端,客户端与服务器端采用设计要求的串口通讯,尽可能提高速度。 客户端进行插卡,打钱(加钱,或减钱),拔卡等操作。服务器端进行金额查询,发送,计算等操作。 能对出现的各种以外状况服务器客户端能做出即时的安全处理 四.整体设计思路 1.整体规划:首先确定所做内容后将整体分为3个大部分:服务器端,客户端,中间的串口硬件相关设备。如图: 客户端 客户端 服务器端 硬件电路 灯,扬声器 2.频率协调:客户端和服务器端程序始终有一线程以3ms频率扫描串口通讯,根据从串口得到的数据进行判断,以相应并回复彼此操作。 3.通讯关键字:由于本实验初始化串口通讯为8位位宽,正好是一个ASCII码的容量。固由此严格约束通讯数据格式: A.卡号和金钱只能是0-9阿拉伯数字,又客户端和服务器端严格控制并 发送。 B.所有关键字为1位ASCII码的英文字母,如下: “a”:客户端-服务器,“插卡”消息。 “b”:服务器-客户端,“传递当前卡的金额数据”消息。 “c”:客户端-服务器,“加钱”消息。 “d”:客户端-服务器,“减钱”消息。 “e”:客户端-服务器,“拔卡”消息。 “f”:服务器-客户端,“无信息卡”消息。 “j”:服务器-客户端,“金额计算溢出或负数”消息。 定义如上消息关键字后,客户端和服务器便在各种操作时,先向对方发送关键字,然后响应的双放以统一延迟进行按位串口通讯。 C.金额的上限为9999.99元,客户端和服务器传递数据不考虑小数点,数据库也不考虑小数点,只在客户端的显示模块加入小数点的相关判断。固金额为6个ASCII码,一个8位;卡号也定义为6位卡号,为0-9阿拉伯数字,和金额一直,方便传输设置。、 D.由B,C定义下,客户端和服务器在接收到关键字后,迅速做出处理,如错误提示,或者进行接下来的一致频率下的6个数字的传递。 5.客户端:以一个完整的消费过程来介绍。 首先初始化。 模拟进行某卡号的插卡,卡号定为6位卡号,首先判断是否是一张合法的卡,比如ID是否6位阿拉伯数字;插卡后即向服务器发出“插卡”指令字符“a”。CallDelayTime之后立刻连续以EventDelayTime的间隔连续发送6次数据。 如果接收到服务器发来的“错卡”信号“f”,则表示此卡虽为合法卡,但在服务器数据库中没有金额。并进行相关提示及拔卡动作。 如果接收到服务器发来的“金额”信号“b”,则立刻准备在CallDelayTime延迟后以EventDelayTime间隔连续接收6个字符。此为当前卡的金额。 客户端有类似计算机的操作面板,先进行金额输入,例如15.5元后,可选择“+”或者“-”,首先将输入金额规格化处理,统一处理为“001550”格式,小数点默认在第4、5位间,不足的位补0。之后发送相应“+”或“-”钱的关键字“c”或“d”.然后CallDelayTime延迟之后立刻连续以EventDelayTime的间隔连续发送6次数据。 如果接收到服务器发来的“错误计算”信号“j”,则作出错误提示 客户端拔卡,则向服务器发送“e”信号,完成并终止操作。客户端进行归0化。 6.服务器:以上面的客户端发送信号为例来介绍。 首先初始化,连接好数据库。 如果收到客户端的插卡信号“a”,立刻在CallDelayTime延迟之后立刻连续以EventDelayTime的间隔连续接收6次数据。此为卡号,并立刻进行数据库查找。 如果查找到当前卡的金额信息,则将数据规格化成6位字符串,如“014500” 立刻向客户端发送信号“b”, 在CallDelayTime延迟

文档评论(0)

kanghao1 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档