简易网吧计费系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计(论文)
课程名称:接口技术课程设计
题目:简易网吧计费系统
院(系):信息与控制工程学院
专业班级:计算机0801
姓名:
学号:
指导教师:张晓群
2011年7 月06日
西安建筑科技大学课程设计(论文)任务书
专业班级: 200801 学生姓名:指导教师(签名):
一、课程设计(论文)题目
简易网吧计费系统
二、本次课程设计(论文)应达到的目的
通过本次课程设计,使学生不仅更加深刻领会微型计算机从硬件组成到软件编程的基本原理和知识,而且更要学会应用,务必做到理论和实践相结合,掌握硬件分析、软件设计的基本思想和方法,提高分析问题、解决问题和工程实践的能力。
三、本次课程设计(论文)任务的主要内容和要求(包括原始数据、技术参数、设计要求等)
本课程设计题目的主要内容是对网吧中的一台计算机进行计时、计费。
设计要求为:
1.能正确计时并显示;
2.能正确显示上机时间及费用;
3.能控制计时的开始和结束。
四、应收集的资料及主要参考文献:
1.《微型计算机基本原理与接口技术》陈红卫,科学出版社 2003.2
2.《8086实验指导书》张维琪、张晓群,信控学院实验中心
3.其他与本课程设计题目相关的资料
五、审核批准意见
教研室主任(签字)
设计总说明
随着网络的日益发展,网上冲浪已经成为人们的一种重要的日常休闲娱乐方式,网吧也就应运而生了。而作为以营利为目的的网吧,有一个优良的计费系统也是至关重要的。
我们设计的简易网吧计费器,工作原理为先产生一个计时器,在用户上机时,按动KK1开关开始计时,下机时,按动KK2开关停止计时,并显示上网时间,然后显示费用。费用为2元/小时,每半个小时为一个计费周期。用芯片8255控制4个七段数码显示器,8253的计数器向8259发送连续的负脉冲,请求中断以提供计时,8259除接收8253的中断请求外,还连接两个开关(KK1,KK2)以实现控制。
目录
一.题目及要求 (1)
1.1设计题目 (1)
1.2设计要求 (1)
二.设计方案 (1)
2.1方案分析 (1)
2.2方案设计 (1)
三.硬件连接图 (3)
四.软件流程图 (4)
五.调试过程及结果说明 (6)
5.1调试过程 (6)
5.2结果说明 (7)
六.总结 (7)
参考文献 (9)
附录 (10)
接口技术课程设计报告
——简易网吧计费系统一.题目及要求
1.设计题目
简易网吧计费系统
2.设计要求
(1)能正确计时并显示;
(2)能正确显示上机时间及费用;
(3)能控制计时的开始和结束。
二.设计方案
1.方案分析
要实现网吧计费系统,计时器是至关重要的,我们以半个小时为一个计费周期,顾客上网时,客服点击按钮开始计费,指示灯变亮,起始费用为1元,每过半小时系统自动加1元,不足半小时的按半小时计费。顾客下机时,点击按钮,系统停止计时并显示费用,指示灯熄灭。
2.方案设计
8255的A、B、C三个口均作为输出,并工作于方式3。A口
和C口控制4个七段数码管;B口控制8个发光二极管。
8253的OUT接8259的IRQ5以发送信号,请求中断等功能。CLK口接1.7MHz脉冲,GATE口接+5V电源.
8259除接收8253的中断请求外,IRQ7口和IRQ6口分别接
控制上机开始的KK1开关和控制上机结束并显示费用的KK2开
关作为外部中断源以实现计费躬耕
顾客开始上机时时,客服点击KK1按钮开始计时,同时作
为指示灯的8个发光二极管变亮,七段码管开始计时。计费起始费用为1元,每半个小时加1元,不足半小时者按半小时收费。顾客下机时,点击KK2按钮,产生中断以停止计时,计算并显示费用,指示灯熄灭。
本程序用三大部分来实现:
(1)主控制程序;
(2)中断服务子程序:KK1控制开始计时程序,KK2控制结束计时程序;
(3)调用子程序:计时程序,LED显示子程序,根据时间计算费用子程序。
三.硬件连线图
图3-1 硬件连线图
C P U
PA0~7 8255
PB0~7
PC0~7
GA TE
8253 CLK OUT
IRQ7
8259 IRQ6 IRQ5
KK1 KK2
+5V 1.7MHz
四.软件流程图
N
Y
N
Y
图4-1 主程序流程图
开始
初始化8255,8253,8259
是否按开始键KK1中断?
开始计时
初始费用1,每半小时+1
是否按结束键KK2中断?
中断返回 结束
恢复现场
保护现场
图4-2 计时器流程图
保护寄存器
秒位加1
10秒位加1 计数单元减1 分位加1
计满1秒了吗?
计满10秒了吗?
计满60秒了吗?
计满10分了吗?
计满60分了吗?
10分位加1
将字符转换为段码
时位加1
计满10小时了吗?
输出段码
输出位码
恢复寄存器
位码右移1位
中断返回
10时位加1
N Y
N
N N
N N Y
Y
Y
Y
Y