按键反应速度测试
- 格式:doc
- 大小:254.41 KB
- 文档页数:17
了解电脑键盘的反应速度和按键力度现代社会中,电脑已经成为人们生活中不可或缺的一部分。
而电脑键盘作为人机交互的重要组成部分,其反应速度和按键力度直接影响着用户的使用体验和效率。
本文将重点探讨电脑键盘的反应速度和按键力度,并对其进行详细了解和分析。
一、电脑键盘的反应速度电脑键盘的反应速度是指按下按键到信号传递给计算机并在显示屏上呈现的时间间隔。
反应速度的快慢与键盘的结构和触发方式、计算机系统的处理能力等因素密切相关。
1.1 机械键盘机械键盘是一种较为常见的电脑键盘类型,其反应速度受键盘触发方式的影响。
常见的机械键盘触发方式有蓝轴、红轴、茶轴等,其中蓝轴触发力度较大,可避免误触,但反应速度相对较慢;红轴触发力度较小,按键反应速度较快,但易误触;茶轴则介于两者之间,是一种折中的选择。
1.2 薄膜键盘薄膜键盘是一种常见的平面电脑键盘,其反应速度相对较快。
这是因为薄膜键盘采用导电薄膜和触碰开关的组合,在键位上触碰到导电薄膜时即可传递信号,相比机械键盘的物理按键,反应速度更快。
1.3 机械革命键盘机械革命键盘是一种较新型的键盘类型,其在反应速度方面有了突破性的提升。
机械革命键盘采用了革命性的光学触发方式,通过光电二次触发技术,使按键反应速度极大增加,从而提升用户的按键体验。
二、电脑键盘的按键力度电脑键盘的按键力度是指按键所需的压力大小。
按键力度直接关系到用户的按键舒适度和长时间使用的可持续性。
2.1 按键力度较大的键盘一些专业领域常用的键盘,如游戏键盘和机械键盘,一般需要较大的按键力度。
这是为了避免误触,确保按键的准确性和稳定性。
对于经常进行大量输入或者需要精准操作的用户来说,按键力度较大的键盘可能更适合他们。
2.2 按键力度较小的键盘相比之下,一些普通的办公键盘和薄膜键盘通常需要较小的按键力度。
这样设计的键盘可以减少用户按键时的手部疲劳感,提高长时间使用的舒适性。
对于对按键力度要求不高的用户来说,这种类型的键盘更加适用。
按键快速反应小游戏按键快速反应小游戏是一款简单而又有趣的游戏,旨在测试玩家的反应速度和手眼协调能力。
游戏的目标是在规定的时间内尽可能多地按下屏幕上出现的按键。
游戏规则:1. 游戏开始后,屏幕上会出现一个按键,如字母、数字或符号。
2. 玩家需要尽快按下对应的按键,以获得得分。
3. 按键会在屏幕上随机出现,并在一定时间后消失。
4. 如果玩家在按键消失前成功按下,将得到一定的得分。
否则,将不得分。
5. 游戏会在规定的时间内进行,倒计时结束后游戏结束。
6. 玩家的得分将根据按下的按键数量进行计算,得分越高,游戏表现越好。
术语和技巧:1. 反应速度:玩家需要尽快按下按键,因此反应速度是取得高分的关键。
提高反应速度的方法包括练习和专注。
2. 手眼协调:玩家需要迅速将眼睛的焦点从屏幕上的一个按键转移到另一个按键,并用手按下。
这需要良好的手眼协调能力。
3. 集中注意力:玩家需要集中注意力,以便在按键出现时立即做出反应。
分散注意力可能导致错过按键。
4. 多次尝试:游戏可能需要多次尝试才能获得高分。
玩家可以通过不断练习和尝试不同的策略来提高自己的表现。
创造性和想象力:1. 挑战模式:玩家可以尝试设定自己的目标,如在规定时间内按下尽可能多的按键,或者在规定时间内达到一定的得分。
这样可以增加游戏的挑战性和乐趣。
2. 多种按键:除了常见的字母、数字和符号按键,游戏可以引入一些特殊的按键,如颜色、形状或音符,以增加游戏的多样性。
3. 奖励系统:游戏可以设立奖励系统,如按下特定的按键会获得额外的得分或增加游戏时间,以激励玩家尝试不同的策略和方法。
通过以上的玩法和规则,按键快速反应小游戏将提供一个简单而又有趣的游戏体验,挑战玩家的反应速度和手眼协调能力。
玩家可以通过不断尝试和练习来提高自己的表现,同时还可以尝试不同的策略和方法,使游戏更具挑战性和乐趣。
红绿灯按键反应时实验心理学实验报告的总结
这是一份关于红绿灯按键反应的实验心理学实验报告的总结。
该实验旨在探究参与者在面对红绿灯按键反应任务时的心理反应和行为表现。
实验采用了随机分组的设计,参与者被分为实验组和对照组。
实验组的参与者在实验过程中需要按下红绿灯按键以响应灯光变化,而对照组
的参与者则只需观察灯光变化而无需按键反应。
实验记录了参与者的反应时间、错误率和心率等指标,并进行了数据分析。
结果显示,实验组的参与者在红绿灯按键反应任务中表现出更短的反应时间和
更低的错误率,与对照组相比具有显著差异。
这表明按键反应训练能够提高参
与者的注意力和反应速度。
此外,实验组的参与者在任务过程中的心率也呈现出明显的变化。
在按下红绿
灯按键时,心率显著增加,表明参与者在任务执行过程中经历了一定的心理压
力和紧张情绪。
总之,红绿灯按键反应实验结果表明,按键反应训练能够有效提高参与者的注
意力和反应速度。
这对于理解人类心理学中的注意力和行为控制机制具有重要
意义。
举例来说,假设实验组的参与者在实验前平均反应时间为2秒,错误率为10%,而经过按键反应训练后,他们的反应时间缩短至1秒,错误率下降至5%。
这样
的结果表明按键反应训练对于提高参与者的认知能力具有积极的影响。
Win系统键盘灵敏度的设置方法1. 简介键盘灵敏度是指键盘响应按键的速度和敏感度。
对于一些用户来说,如果键盘过于灵敏,可能会导致误操作;而如果键盘反应过慢,可能会影响打字的速度和体验。
在Windows操作系统中,用户可以根据自己的喜好和需求来调整键盘的灵敏度。
本文将介绍如何在Win系统中设置键盘的灵敏度。
2. 打开“键盘属性”窗口首先,我们需要打开“键盘属性”窗口,该窗口用于配置键盘的各种设置。
以下是几种常见打开方式:•方法一:使用控制面板1.点击任务栏右下角的Windows图标,打开开始菜单。
2.在开始菜单中,选择“控制面板”并点击进入。
3.在控制面板窗口中,找到并点击“硬件和声音”。
4.在“硬件和声音”窗口中,点击“键盘”。
5.在“键盘”窗口中,选择“速度”标签页,进入键盘属性设置。
•方法二:使用快捷键1.按下“Win + R”组合键,打开“运行”窗口。
2.在“运行”窗口中,输入“control keyboard”并按下回车键。
3.这将直接打开“键盘属性”窗口。
3. 调整键盘灵敏度在“键盘属性”窗口中,有两个可以调整键盘灵敏度的选项:“重复延迟”和“重复速度”。
•重复延迟重复延迟是指当你按住一个键不放时,系统开始重复输入该键之前的延时时间。
如果你希望键盘响应更快,可以减小重复延迟的数值。
–在“键盘属性”窗口的“速度”标签页中,可以通过移动滑块来调整“重复延迟”的数值。
–向左移动滑块可减小重复延迟,向右移动滑块可增加重复延迟。
–在滑块下方有一个实时预览的文本框,你可以在其中测试你的设定。
•重复速度重复速度是指当一个键的响应开始后,系统每秒钟重复输入该键的次数。
如果你希望键盘输入速度更快,可以增加重复速度的数值。
–在“键盘属性”窗口的“速度”标签页中,可以通过移动滑块来调整“重复速度”的数值。
–向左移动滑块可减小重复速度,向右移动滑块可增加重复速度。
–在滑块下方有一个实时预览的文本框,你可以在其中测试你的设定。
反应数度测试反应速度测试是一种常见的心理测试方法,用于评估一个人的神经反应能力和认知处理速度。
反应速度是指从接受到刺激到做出相应反应的时间间隔,是一个人神经系统功能的重要指标之一。
反应速度测试可以通过各种方式进行,最常见的是使用计算机软件或手机应用程序。
测试过程中,通常会以视觉或听觉刺激的形式呈现一系列的任务,被测试者需要根据指定的规则迅速做出正确的反应。
常见的任务包括点击屏幕上的特定位置、按下键盘上的特定按键、识别特定的图像或颜色等。
测试过程中会记录下反应的时间,并通过计算得出被测试者的反应速度。
反应速度测试的结果可以反映一个人的神经系统的状态和认知加工能力。
反应速度快的人通常具有更敏锐的感知能力和更高的神经反应效率,能够更快地处理信息并作出正确的决策。
而反应速度较慢的人可能需要更长的时间来处理信息和做出反应,可能存在认知加工能力的局限性。
反应速度的快慢受多种因素影响。
首先,个体的生理特征会对反应速度产生影响。
一般来说,年轻人的反应速度比老年人更快,男性的反应速度比女性更快。
此外,个体的基础神经反应能力和认知加工能力也会影响反应速度。
对于同一任务,训练有素的人可能具有更快的反应速度,因为他们对特定任务的处理方式更加熟练。
此外,个体的情绪状态、注意力水平和疲劳程度等因素也会对反应速度产生影响。
反应速度测试在许多领域都有应用。
在医学研究中,反应速度测试可以用于评估神经系统的功能状态,例如评估老年人的认知功能或帕金森病患者的运动控制能力。
在运动训练中,反应速度测试可以用于评估运动员的反应能力和协调性。
在招聘和选拔过程中,反应速度测试可以用于评估候选人的认知处理能力和应对压力的能力。
总的来说,反应速度测试是一种有效的评估个体神经反应能力和认知加工速度的方法。
通过测试可以了解个体的认知处理能力和信息处理效率,为进一步的训练和干预提供参考。
然而,需要注意的是,反应速度测试只能评估个体在特定任务下的反应速度,不能全面反映个体的认知能力和智力水平。
电脑键盘测试标准
电脑键盘测试标准主要包括以下几个方面:
1. 按键寿命:测试键盘按键能够承受的敲击次数,以评估其耐用性。
2. 弹性:测试按键的反弹能力和手感,以确定用户在使用时是否舒适。
3. 击键声:测试按键声音的大小和音调,以评估键盘的噪音水平。
4. 响应速度:测试按键的响应时间,以评估键盘的反应速度和准确性。
5. 防漏水功能:测试键盘是否具备防水功能,以评估其耐用性。
6. 按键布局:测试按键的排列和间距,以评估用户在使用时的舒适度。
7. 外观质量:评估键盘的整体外观和细节处理,如按键表面的处理、字符的清晰度等。
8. 可靠性:测试键盘在各种环境下的稳定性和可靠性,如温度、湿度、振动等。
9. 兼容性:测试键盘与电脑和其他设备的兼容性,以确保其正常使用。
10. 功能测试:测试键盘的各种功能,如快捷键、组合键、自定义设置等,以评估其功能丰富程度和使用便利性。
这些标准可以帮助评估电脑键盘的质量和性能,以确保用户在使用时能够获得良好的体验和稳定性。
反应力测试题反应力是指人对刺激做出反应的速度和准确度,是衡量个体神经系统功能的重要指标之一。
为了评估一个人的反应力水平,科学家们开发了各种各样的测试题,这些测试题旨在考察被试者对不同刺激的反应速度和准确度。
在本文中,我们将介绍一些常见的反应力测试题,并解释它们的原理和用途。
1. 反应时间测试反应时间测试是最常见的一种反应力测试题。
在这种测试中,被试者需要以最快的速度对特定刺激做出反应。
一般来说,被试者需要在刺激出现后尽快按下指定的按钮或键盘上的特定按键。
通过记录被试者的反应时间,我们可以评估他们的反应力水平。
反应时间越短,说明被试者的反应力越强。
2. 视觉反应测试视觉反应测试是一种专门针对视觉刺激进行的反应力测试题。
在这种测试中,被试者需要迅速地识别特定的视觉刺激,并做出相应的反应。
例如,被试者可能需要在一系列的图像中找出某个特定的目标,并用鼠标点击它。
通过记录被试者的准确率和反应时间,我们可以评估他们的视觉反应能力和注意力水平。
3. 声音反应测试声音反应测试是一种评估被试者听觉反应能力的测试题。
在这种测试中,被试者需要在听到特定的声音后,迅速作出相应的反应。
例如,被试者可能需要在听到某个特定的频率或音调后按下一个按钮。
通过记录被试者的反应时间和准确率,我们可以评估他们的听觉反应水平和听觉注意力。
4. 符号识别测试符号识别测试是一种旨在评估被试者对不同符号的识别速度和准确度的测试题。
在这种测试中,被试者需要在一系列的符号中找出特定的目标符号,并迅速做出相应的反应。
例如,被试者可能需要在一组符号中找到一个特定的字母或数字,并用鼠标点击它。
通过记录被试者的反应时间和准确率,我们可以评估他们对符号的认知和识别能力。
总结起来,反应力测试题通过评估被试者对各种刺激的反应速度和准确度,帮助我们了解他们的神经系统功能和注意力水平。
这些测试题不仅在科学研究中有重要的应用,也在一些具有高反应力要求的领域中得到了广泛的应用,如运动员选拔、交通安全等。
反应时测定实验报告实验目的,通过实验测定人的反应时,了解人在不同条件下的反应速度,并分析影响反应时的因素。
实验原理,反应时是指人对外界刺激作出反应所需的时间。
实验中常用的是简单反应时和选择反应时。
简单反应时是指被试在接到某种信号后作出的反应。
选择反应时是指被试在接到不同信号后作出相应的反应。
反应时的测定方法有手动按键法、声音法、光电法等。
实验材料和仪器,计时器、反应时实验仪、实验记录表、被试者。
实验步骤:1. 调查被试者的基本情况,包括年龄、性别、身体状况等。
2. 对被试者进行简单反应时的测定。
被试者坐在实验台前,手握按键器,听到声音后按下按键,计时器记录下反应时。
3. 对被试者进行选择反应时的测定。
被试者坐在实验台前,面前有两个按键,听到不同声音后按下对应的按键,计时器记录下反应时。
4. 分析被试者的反应时数据,比较不同条件下的反应时差异,找出影响反应时的因素。
实验结果分析:通过实验测定,我们得到了被试者在不同条件下的反应时数据。
经过分析发现,被试者的年龄、性别、身体状况等因素都会对反应时产生影响。
年龄较小的被试者反应时更短,而年龄较大的被试者反应时较长。
男性在某些情况下反应时更短,而女性在某些情况下反应时更长。
身体状况良好的被试者反应时更短,而身体状况较差的被试者反应时更长。
实验结论:通过本次实验,我们了解了反应时的测定方法和影响因素。
年龄、性别、身体状况等因素都会对反应时产生影响。
在实际生活中,我们应该注意这些因素,尽量创造良好的环境条件,提高自己的反应速度。
实验注意事项:1. 实验中要保持安静,避免外界干扰。
2. 实验前要对被试者进行身体状况的检查,确保实验的准确性。
3. 实验过程中要严格按照操作规程进行,保证数据的可靠性。
实验存在的不足:1. 实验样本较小,难以覆盖所有年龄段和性别的人群。
2. 实验环境受限,无法完全模拟实际生活中的复杂情况。
实验改进方向:1. 增加实验样本,覆盖更广泛的人群。
第1篇实验目的:本次实验旨在通过一系列动作测试,评估受试者的身体协调性、反应速度、力量和耐力等生理指标,为后续的身体训练和运动康复提供参考依据。
实验时间:2023年4月15日实验地点:XX大学体育学院实验室实验对象:受试者共20名,均为男性,年龄在20-25岁之间,身体健康,无重大疾病史。
实验器材:计时器、秒表、磅秤、跳绳、平衡木、力量训练器材等。
实验方法:1. 协调性测试:- 测试项目:立定跳远、单脚站立、跳绳测试。
- 测试方法:受试者分别进行立定跳远、单脚站立和跳绳测试,记录每次测试的成绩。
2. 反应速度测试:- 测试项目:双脚交替踏板测试。
- 测试方法:受试者站在踏板前,听到指令后迅速交替踏板,记录完成一定次数所需的时间。
3. 力量测试:- 测试项目:俯卧撑、深蹲、卧推。
- 测试方法:受试者分别进行俯卧撑、深蹲和卧推,记录每组完成的次数。
4. 耐力测试:- 测试项目: 1.5公里跑步测试。
- 测试方法:受试者进行1.5公里跑步,记录完成时间。
实验结果:1. 协调性测试:- 立定跳远:平均成绩为2.5米。
- 单脚站立:平均成绩为45秒。
- 跳绳测试:平均成绩为1分钟。
2. 反应速度测试:- 双脚交替踏板测试:平均成绩为12秒。
3. 力量测试:- 俯卧撑:平均成绩为20次。
- 深蹲:平均成绩为30次。
- 卧推:平均成绩为15次。
4. 耐力测试:- 1.5公里跑步:平均成绩为8分钟。
实验分析:本次实验结果显示,受试者在协调性、反应速度、力量和耐力等方面均表现出一定的水平。
其中,协调性测试成绩较好,说明受试者的身体协调性较好;反应速度测试成绩也较为理想,表明受试者的反应速度较快;力量测试成绩相对较差,可能需要加强力量训练;耐力测试成绩较好,说明受试者的耐力较好。
实验结论:本次实验通过动作测试,对受试者的身体协调性、反应速度、力量和耐力等方面进行了评估,为后续的身体训练和运动康复提供了参考依据。
针对受试者在力量测试方面的不足,建议加强力量训练,以提高整体运动能力。
测试键盘按键n,请详细写出测试用例
1. 按下键盘上的实际按键n。
2. 按下键盘上的Shift + n组合键。
3. 按下键盘上的Ctrl + n组合键。
4. 按下键盘上的Alt + n组合键。
5. 连续快速地按下键盘上的n按键。
6. 稳定地按住键盘上的n按键。
7. 在不同的键盘布局上按下n按键,例如QWERTY、AZERTY、QZERTY等。
8. 使用不同品牌或型号的键盘按下n按键,例如机械键盘、薄膜键盘等。
9. 将键盘连接到不同类型的设备上,例如PC、笔记本电脑、平板电脑等,再按下n按键。
10. 在不同的操作系统上按下n按键,例如Windows、Mac、Linux等。
11. 检查按下n按键时是否有反馈,如声音、光标移动、屏幕显示等。
12. 按下n按键时,观察是否会触发相应的功能或操作,如打开新窗口、输入字母n、刷新页面等。
13. 在不同的应用程序和软件中按下n按键,检查是否会产生不同的效果。
14. 在不同的编辑器或文本框中按下n按键,检查是否会输入字母n。
15. 同时按下键盘上的多个按键,如n键与其他字母键或符号键的组合。
16. 使用不同的手指或手的部位按下n按键,例如使用食指、中指、小指等。
17. 在不同的按键打击位置按下n键,例如在按键中心、边缘、角落等位置。
18. 在不同的按键压力下按下n按键,例如轻轻触碰、轻按、重按等。
19. 对键盘进行长时间使用测试,连续按下n键进行高强度的键盘操作。
20. 测试键盘的灵敏度和反应速度,迅速按下和释放n键,观察键盘是否能够准确地捕捉和处理每次按键操作。
沈阳航空航天大学课程设计报告课程设计名称:微机系统综合课程设计课程设计题目:按键反应速度测试院(系):计算机学院专业:计算机科学与技术班级:计算机1203学号:2012040101127姓名:王庆贺指导教师:张维君说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;格式不符合要求;数据不实,不予通过。
报告和电子数据必须作为实验现象重复的关键依据。
学术诚信声明本人声明:所呈交的报告(含电子版及数据文件)是我个人在导师指导下独立进行设计工作及取得的研究结果。
尽我所知,除了文中特别加以标注或致谢中所罗列的内容以外,报告中不包含其他人己经发表或撰写过的研究结果,也不包含其它教育机构使用过的材料。
与我一同工作的同学对本研究所做的任何贡献均己在报告中做了明确的说明并表示了谢意。
报告资料及实验数据若有不实之处,本人愿意接受本教学环节“不及格”和“重修或重做”的评分结论并承担相关一切后果。
本人签名: 日期:年月日沈阳航空航天大学课程设计任务书目录1 总体设计方案 (1)1.1课程设计内容和要求 (1)1.2设计原理 (1)1.3设计思路 (1)2 详细设计方案 (3)2.1实现方法 (3)2.1.1 硬件实现 (3)2.1.2 软件实现 (3)2.2模块设计 (4)2.2.1 测试数字控制模块 (4)2.2.2 按键状态读取模块 (5)2.2.3 计时模块 (5)2.2.4 显示模块 (6)3 调试及结果分析 (8)3.1调试步骤及方法 (8)3.2实验结果 (8)参考文献 (9)附录 (10)1 总体设计方案1.1课程设计内容和要求一、课程设计内容在LED数码管上显示一组数字,按对应数字键后显示内容换成下一组数字。
累计按键的延迟时间,最后显示被测试者的总反应时间。
二、课程设计要求1.认真查阅相关资料;2.独立设计、调试并通过指导教师现场验收;3.撰写课程设计报告。
1.2 设计原理根据课程设计任务书的要求,通过单片机的P1口控制8个发光二极管,测试被测试者从看到所显示数字到按下对应数字键的反应时间,累计十次,并将测试出的时间显示在数码管上。
时间的计数通过单片机的定时器实现,程序开始先配置定时器,设置定时器的工作模式和计数初值,之后开启定时器中断和总中断,并启动定时器。
在定时器启动同时,显示第一个数字,然后等待被测试者按下对应数字键,当按下对应数字键的时候,数码管显示下一组数字,再等待被测试者正确按下对应的数字键......这样重复十次。
当被测试者最后一次正确按下对应数字键时候,定时器停止工作。
之后根据计数器的定时计数情况,计算相应的反应时间,并在数码管上显示。
1.3 设计思路本文基于LAB8000型实验箱,以51单片机为控制核心,连接矩阵键盘,数码管采用内驱方式,只需要连接KEY/LED CS就可以控制数码管的显示。
本文采用C语言编程,根据模块化设计思想,软件主要包括:测试数字控制模块、按键状态读取模块、计时模块和显示模块。
测试数字控制模块的主要功能是显示测试数字。
按键状态读取模块的主要功能是读取数字键盘的状态并判断数字正误情况。
当计时开始的时候,显示第一个数字,然后等待被测试者按下对应数字键,当正确按下对应数字键的时候,数码管显示下一组数字,再等待被测试者正确按下对应的数字键......这样重复十次。
当被测试者最后一次正确按下对应数字键时候,定时器停止工作。
计时模块的功能就是用来计算总的反应时间,总反应时间是从计时开始,点数码管显示第一个数字到拨动最后一个开关,计时结束这一段时间。
本文采用单片机的定时/计数器0进行时间的测量,首先配置计时器工作于计时模式二,即8位自动重装载模式,并使能总中断和定时器中断,这样启动定时器就可以计时了,当计数器溢出的时候,进入中断处理函数,在定时器中断函数处理中记录定时器的溢出次数,同时会将高位寄存器的初值自动装载入低位寄存器,重新开始计时。
当测试结束时,停止计时,最终计算总的计数次数,得出计时时间。
显示模块的功能就是用来显示时间。
时间采用四位数码管进行显示,整数部分两位、小数部分也两位,单片机采用内驱的方式控制数码管的显示,在显示前,通过相应的算法得到十位、个位、十分位和百分位的字形码,通过单片机发送字形码以及相应的位选信号,就可以实现时间的显示了。
2 详细设计方案2.1 实现方法本文是基于LAB8000实验箱,并以单片机为控制核心的按键反应速度测试系统设计,系统分为硬件实现和软件实现两部分,下面将分别介绍。
2.1.1 硬件实现硬件电路包括三部分:单片机、矩阵键盘和数码管。
因为本文是基于LAB8000实验箱,相关的硬件电路已经设计好,我们需要做的就是进行相应的连线,具体的连线如表2.1所示。
表2.1 硬件连线2.1.2 软件实现软件实现是本文的重点,使用的是C语言编程,采用模块化的设计思想,根据系统要求和相关的硬件电路,软件实现可以分为三个部分:测试数字模块、按键状态读取模块、计时模块和显示模块。
具体的软件流程为:1.定时器初始化;2.开定时器中断和总中断;3.启动定时器;4.显示一个数字,等待被测试者按下对应数字键;5.点亮另一个发光二极管……重复十次;6.停止定时器;7.计算总反应时间;8.数码管显示总反应时间。
软件流程图如图2.1所示。
图2.1 软件流程图2.2 模块设计根据前面的介绍,本文可分为四个模块,分别为:测试数字控制模块、按键状态读取模块、定时器计时模块和数码管显示模块,下面将一一介绍。
2.2.1 测试数字控制模块在程序中,先运用位控制,关所有八段管,并使最低位选通,用于显示数字: OUTBIT = 0;OUTBIT = 0x01;人为设定十个数字,具体是通过如下数组实现的:OUTSEG = Disp_34[5];OUTSEG = Disp_34[0];……OUTSEG = Disp_34[4];测试数字右移两位,最低位显示:OUTBIT = 0x01|(0x0b<<2);2.2.2 按键状态读取模块图2.2 矩阵键盘电路图矩阵键盘通过扫描高电平到低电平的变化来判断被测试者按下的是哪一个数字键:while(!((KeyValue=(P1&0xf0)|0x0b)==0xbb));while(!((KeyValue=(P1&0xf0)|0x07)==0xe7));……while(!((KeyValue=(P1&0xf0)|0x07)==0xb7));while里就是一直读取测试数字,如果按键值如果是正确的就跳出,不正确则一直读直到是。
2.2.3 计时模块计时使用的是单片机内部的定时/计数器0,在使用定时器时,首先需要进行模式配置,定时器有四种工作模式,通过模式寄存器TMOD进行配置,我们使用模式二,即8位自动重装载模式,在该模式下,当低位数据寄存器的值溢出时,会将高位数据寄存器的值载入低位寄存器,重新开始计数,模式寄存器TMOD各位如表2.4所示。
表2.2 模式寄存器TMOD配置好模式后,因为我们需要使用定时器的中断,所以还需要使能定时器中断和总中断,中断控制在中断允许寄存器IE中,其各位定义如表2.5所示。
表2.3 中断允许寄存器IE使能中断后,就可以运行定时器了,运行定时器0的语句为TR0 = 1,其中TR0在定时器控制寄存器TCON中,TCON各位定义如表2.6所示。
表2.4 定时器控制寄存器TCON因为计时时间比较长,单次的计数值远远不能满足需求,所以我们使用定时器的中断功能,当计数值溢出的时候,触发定时器中断,在中断函数中,我们使溢出计数值加一,最后根据溢出次数值和计数器的值,就可以算出总时间。
2.2.4 显示模块本文使用数码管显示时间,在显示之前,我们需要将定时器的时间转换成数码管显示需要的字形码。
时间以秒为单位,通过分析,总反应时间应该不会超过100s,我们使用4位数码管进行显示足以,其中整数部分两位,小数部分两位。
得到整数部分和小数部分的算法如下:1.根据计数值得到时间,以秒为单位;2.将时间乘以100,即把小数部分转换成整数部分;3.将数据强制类型转换为整型,舍去剩下的小数部分;4.数据除以1000,取商,即得到十位数据值;5.数据除以1000,取余,再除以100,取商,即得到各位数据;6.数据除以100,取余,再除以10,取商,即得到十分位数据;7.数据除以10,取余,即得到百分位数据。
得到各位数据后,将这些数据转换为相应的字形码,通过单片机输出给数码管,就可以显示相应的数据了,数码管的字形码如表2.7所示。
表2.5 数码管字形码数码管显示程序流程图如图2.3所示。
图2.3 数码管显示流程图沈阳航空航天大学课程设计报告错误!未指定书签。
3 调试及结果分析3.1 调试步骤及方法1. 使用导线将相应的连接孔连接在一起;2. 将程序载入单片机;3. 复位,运行程序3.2 实验结果本程序能够满足题目的所有要求,其测试结果如下:当程序开始运行之后,显示第一个数字,然后等待被测试者按下对应数字键,当按下对应数字键的时候,数码管显示下一个数字。
1.当十次测试完成后,并且数码管显示测试总时间。
数码管时间显示正确。
沈阳航空航天大学课程设计报告错误!未指定书签。
参考文献[1] 张毅刚.单片机原理及应用[M].哈尔滨:哈尔滨工业大学出版社,2008[2] 戴仙金.51单片机及其C语言程序开发实例[M].北京:清华大学出版社,2011[3] 黄惟公.单片机原理及应用技术[M].西安:西安电子科技大学出版社,2010[4] 高锋.单片微型计算机原理与接口技术[M].北京:科学出版社,2007[5] 何立民.MSC--51系列单片机应用系统设计:北京航空航天大学出版社,1993[6] 余发山.单片机原理及应用技术:中国矿业大学出社,2003附录#include <REG51.H>xdata unsigned char OUTBIT _at_ 0x8002; // 位控制口xdata unsigned char OUTSEG _at_ 0x8004; // 段控制口unsigned int nCnt = 0;float tim = 0;unsigned int timshow = 0;unsigned int shiwei = 0;unsigned int gewei = 0;unsigned int shifenwei = 0;unsigned int baifenwei = 0;unsigned char Disp_1[] = {0x00,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned char Disp_2[] = {0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; unsigned char Disp_34[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};void main(void){unsigned char KeyValue = 0;TMOD = 0x02; // 定时器0,8位自动重装载TH0 = 0x0;TL0 = 0x0;EA = 1; // 使能总中断ET0 = 1; // 使能定时器中断TR0 = 1; // 计时开始OUTBIT = 0; // 关所有八段管OUTBIT = 0x01; // 最低位选通,用于显示数字OUTSEG = Disp_34[5]; // 显示第一个数字 5,其键值为 0xbbOUTBIT = 0x01|(0x0b<<2);while(!((KeyValue=(P1&0xf0)|0x0b)==0xbb));OUTSEG = Disp_34[0]; // 显示第二个数字 0,其键值为 0xe7OUTBIT = 0x01|(0x07<<2);while(!((KeyValue=(P1&0xf0)|0x07)==0xe7));OUTSEG = Disp_34[8]; // 显示第三个数字 8,其键值为 0x7b OUTBIT = 0x01|(0x0b<<2);while(!((KeyValue=(P1&0xf0)|0x0b)==0x7b));OUTSEG = Disp_34[6]; // 显示第四个数字 6,其键值为 0xbd OUTBIT = 0x01|(0x0d<<2);while(!((KeyValue=(P1&0xf0)|0x0d)==0xbd));OUTSEG = Disp_34[1]; // 显示第五个数字 1,其键值为 0xd7 OUTBIT = 0x01|(0x07<<2);while(!((KeyValue=(P1&0xf0)|0x07)==0xd7));OUTSEG = Disp_34[9]; // 显示第六个数字 9,其键值为 0x7d OUTBIT = 0x01|(0x0d<<2);while(!((KeyValue=(P1&0xf0)|0x0d)==0x7d));OUTSEG = Disp_34[7]; // 显示第七个数字 7,其键值为 0x77 OUTBIT = 0x01|(0x07<<2);while(!((KeyValue=(P1&0xf0)|0x07)==0x77));OUTSEG = Disp_34[3]; // 显示第八个数字 3,其键值为 0xdd OUTBIT = 0x01|(0x0d<<2);while(!((KeyValue=(P1&0xf0)|0x0d)==0xdd));OUTSEG = Disp_34[2]; // 显示第九个数字 2,其键值为 0xdb OUTBIT = 0x01|(0x0b<<2);while(!((KeyValue=(P1&0xf0)|0x0b)==0xdb));OUTSEG = Disp_34[4]; // 显示第十个数字 4,其键值为 0xb7 OUTBIT = 0x01|(0x07<<2);while(!((KeyValue=(P1&0xf0)|0x07)==0xb7));OUTBIT = 0x00;TR0 = 0; // 计时结束tim = (((float)nCnt)*256 + TL0) / 1000000; // 计算总时间 timshow = (unsigned int)(tim * 100);shiwei = timshow / 1000;gewei = timshow % 1000 / 100;shifenwei = timshow % 100 / 10;baifenwei = timshow % 10;while(1){unsigned int i = 0;OUTBIT = 0; // 关所有八段管OUTBIT = 0x04; // 百分位数码管位选信号OUTSEG = Disp_34[baifenwei]; // 显示百分位数据for(i=0;i<255;i++); // 简单延时OUTBIT = 0; // 关所有八段管OUTBIT = 0x08; // 十分位数码管位选信号OUTSEG = Disp_34[shifenwei]; // 显示十分位数据for(i=0;i<255;i++); // 简单延时OUTBIT = 0; // 关所有八段管OUTBIT = 0x10; // 个位数码管位选信号OUTSEG = Disp_2[gewei]; // 显示个位数据for(i=0;i<255;i++); // 简单延时OUTBIT = 0; // 关所有八段管OUTBIT = 0x20; // 十位数码管位选信号OUTSEG = Disp_1[shiwei]; // 显示十位数据for(i=0;i<255;i++); // 简单延时OUTBIT = 0; // 关所有八段管}}void Timer0_IRQ(void) interrupt 1{nCnt++;}。