当前位置:首页 > 夜班防睡
合肥学院
计算机科学与技术系
微机原理与接口技术
课程设计
课程设计题目:夜班防睡控制/记录器 姓 名:周俊 学 号:0604031023 班 级:06网络工程<1>班 指 导 教 师:张向东
2009年2月
1
1需求分析和解决问题的思路
1.1 需求分析
1.1.1 任务分析
1)每5分钟用一次较柔和的声音提醒值班者按复位键,之后计时重新开始。 2)若计时到6分钟时,还没人按复位键,则以较急促的声音报警,黄灯闪烁。 3)当到15分钟的时候红灯闪烁,并以持续尖锐的声音报警,以LED显示分和秒。
1.1.2 功能分析
本设计主要是为了解决值班人员在值夜班时容易睡觉的问题。设计中主要通过扬声器发生来防止值班人员睡觉,每隔5分钟用较柔和的声音提醒值班人员一次,值班人员按下复位键重新即时,说明值班人员并未睡着;如果及时到6分钟值班人员还没有按复位键,说明此时值班人员可能已经开始打盹,扬声器发出较急促的声音报警,并且黄灯闪烁,若此按下复位键,又重新计时;如果到了15分钟还没有人按复位键,那么此时值班人员可能已经完全睡着,扬声器发出尖锐的声音报警,红灯闪烁,并以LED记录睡着的时间。
1.1.3 需要解决的问题
需要发声提醒,发声提醒又分为3种(较柔和,较急促,尖锐的声音),通过键盘复位,要红,黄灯闪烁。还要将时间动态显示在LED显示器上,每秒刷新一次。而且分秒显示共需4位数字,所以要有4个LED数码管进行控制。秒控制的两位要在60秒后进位,分钟的两位加1,秒清零。扬声器可用专门的扬声器电路,也要用PC机的喇叭实现。
1.2 解决问题方法及思路
1.2.1 硬件部分
1) PC机一台,并行接口8255A一片,LED数码管4只,发光二极管2只(红、
黄各一只),开关一个,扬声器一只。
2) 利用扬声器发声报警,节拍由延时程序决定. 3) 使不同颜色的发光二极管按一定规律发光。
4) 使实验箱上的8255A作为输出接口,驱动二极管发光。所用端口工作在方式0、输出即可。
5) 定义开关清零。
2
6) PC7接开关,用作输入,控制复位。 7) 通过8255A来控制LED发光二极管的亮灭。 8) PC0接扬声器、PC1接红灯、PC2接黄灯。
9) 二极管闪烁:开|关 输出为0则亮,输出为1则灭。
1.2.2 软件部分
程序部分首先进行初始8255,然后进行时间显示,初值显示00分00秒,四
个显示器每个显示10ms,接着秒个位加1,进行下一次显示,当秒个位为10时,秒十位加1,同时秒个位清零.当秒十位为6时,分个位加1,秒位清零,依次显示。当显示为5分00秒时,发出控制信号使扬声器发出柔和的声音,此时,若有人拨动开关,则四个显示器全清零,又从00分00秒开始显示。当显示5分00秒时,发出轻微的柔和的报警声, 当显示6分00秒时,发出急促的报警声,发出控制信号使黄灯闪烁。当显示为15分00秒时,扬声器持续发出尖锐的报警声,发出控制信号使红灯闪烁。
2 硬件设计
2.1 芯片8255-A
2.1.1 8255A在本设计中的作用
8255A作为输出接口,驱动二极管发光。所用端口工作在方式0。控制发光二极管的亮灭。A口,B口控制LED数码显示管,C口低四位分别接扬声器,红灯,黄灯。高四位中的Pc4接开关,用于输入信号,使系统复位。
2.1.2 8255A的功能分析
8255方式0是基本输入/输出方式,A、B、C三个口中任何一个口都可提供简单的输入和输出操作,不需要应答联络信号,即可用于无条件传送的场合,也可以用作查询方式传送。当采用查询方式传送时,原则上可用A、B和C三个口的任一位充当查询信号,但通常都是选用C口充当查询信号,这和C口的编程有关。通常把C口的4位(高4位或低4位)规定为输出口,用以输出一些控制信号,把C口的另4位规定为输人口,用以输入外设的状态。
2.1.3 8255A原理图及功能表
3
图 2-1 8255A原理图 表 2-1 8255A的操作功能表
CS RD WR A1
操 作 数 据 传 送 方 式
A0
0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1
读 A 口 读 B 口 读 C 口 写 A 口 写 B 口 写 C 口 写控制口
A口数据 → 数据总线 B口数据 → 数据总线 C口数据 → 数据总线 数据总线数据 → A口 数据总线数据 → B口 数据总线数据 → C口 数据总线数据 → 控制口
8255A有三种工作方式,用户可以通过编程来设置。 2.1.4 8255A的方式控制字
4
共分享92篇相关文档