人体反应速度测试仪毕业设计(DOC 17页).docx

上传人(卖家):2023DOC 文档编号:5762254 上传时间:2023-05-06 格式:DOCX 页数:17 大小:129.06KB
下载 相关 举报
人体反应速度测试仪毕业设计(DOC 17页).docx_第1页
第1页 / 共17页
人体反应速度测试仪毕业设计(DOC 17页).docx_第2页
第2页 / 共17页
人体反应速度测试仪毕业设计(DOC 17页).docx_第3页
第3页 / 共17页
人体反应速度测试仪毕业设计(DOC 17页).docx_第4页
第4页 / 共17页
人体反应速度测试仪毕业设计(DOC 17页).docx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、第一章 课题综述1.1 课题背景速度素质是指人体进行快速运动的能力, 即在单位时间内迅速完成某一动作或通过某 一距离的能力。反应速度是指人体对刺激发生反应的快慢。从生理机制分析,反应快慢取 决于“反射弧”的五个环节:感受器 传入神经神经中枢传出神经 效应器。下面以 MCS-8051 单片机为核心,设计出测试人体反应速度的仪器用以测试人的反应时间。我们 学习的是单片机理论知识,而课程设计则是对我们学习的理论知识的实践和巩固。1.2 设计要求基于 MCS-8051 单片机的人体反应速度测试仪设计要求如下:1. 按下“开始”按钮,红灯亮,按钮一直保持按下状态。2. 红灯持续点亮一段随机时间,然后熄灭

2、,灯熄灭时人松开按钮。3. 计算灯熄灭的时间和按钮被松开的时间之差,显示出来。4. 若测试者在红灯熄灭之前松开按钮,则显示出错信息。1.3 面对的问题1. 对 MCS-8051 单片机的了解和应用。2. 对八段数码管的特性的了解和使用。1.4 需解决的关键技术 课题主要通过控制红灯的状态,通过测试按钮的状态来间接计算人体反应速度。要了 解每一段数码管与 MCS-8051 单片机的连接,数码管显示数字的段码,各个芯片的输入输 出关系,单片机内部定时器的原理与控制,必须通过查阅资料确定。必须了解数码管显示 器的显示原理。第二章 系统分析2.1 涉及的基础知识通过学习和查阅资料,本课题需要掌握和了解

3、如下知识:1. MCS-8051 单片机各输入输出端口的功能特性。2. MCS-8051 单片机复位电路工作原理及设计。3. MCS-8051 单片机晶振电路工作原理及设计。4. 测试按钮、测试灯电路设计。5驱动器74LS244、反相器74LS04的特性及使用。6. 数码管显示器的特性及使用。7. MCS-8051 单片机引脚。8. 单片机内部定时器原理及使用。9. 单片机 C 语言及程序设计。2.2 MCS-8051单片机简介随着超大规模集成电路技术的发展,在一个集成电路芯片上集成了中央处理器 CPU、 数据存储器RAM、程序存储器ROM或EPROM、各种I/O接口等,构成了一个计算机, 称

4、为单片机。也就是说,单片机是集成在一块集成电路芯片上的计算机。单片机以其较高 的性价比、较高的集成度、较高可靠性、较强控制功能以及低电压、低功耗、偏于携带等 优点收到广大用户的青睐。MCS-51 系列单片机以其典型的结构和完善的总线专用寄存器的集中管理,众多的逻 辑位操作功能及面向控制的丰富指令系统,堪称为一代 “名机”,为以后的其他单片机发展 奠定了基础。 MCS-51 系列单片机具有品种全、兼容性强、软硬件资料丰富等特点,因此 应用非常广泛,直到现在 MCS-51 系列单片机仍为单片机中的主流机型,也是高档单片机 的基础。8051 是 MCS-51 系列单片机中的代表产品, 它内部集成了功

5、能强大的中央处理器, 包 含了硬件乘除法器、 21 个专用控制寄存器、 4KB 的程序存储器、 128字节的数据存储器、 4组8位的并行口、 两个16位的可编程定时 / 计数器、 一个全双工的串行口以及布尔处理 器。 8051 中集成了完善的各种中断源,用户可十分方便的控制和使用其功能,使得它的 应用范围加大,可以说它可以满足绝大部分的应用场合。2.3 MCS-8051 单片机引脚图MCS-8051 单片机采用 40 条引脚的双列直插式封装,引脚配置如图 21 所示。单片机电源引脚接入单片机的工作电源:Vcc引脚接+5V电源,Vss引脚接地。单片机时钟由引脚XTAL 1和XTAL 2接外部时钟

6、配置电路组成。单片机复位,当振荡器运行时,在 RST引脚加上两个机器周期的高电平使单片机复 位。MCS-8051单片机具有4个8位的输入/输出口,P0、P1、P2和P3 口。P0 口是双向8位三态I/O 口,此口常作为地址总线低8位及数据总线分时复用口,可 带8个LSTTL负载。P1 口是8位准双向I/O 口,可带4个LSTTL负载。P2 口是8位准双向I/O 口,常作地址总线高8位使用,可驱动4个LSTTL负载。P3 口是8位准双向I/O 口,为双功能复用口,可驱动 4个LSTTL负载。2.4 数码管显示器2.4.1 数码管显示器的特性1. 发光响应快,亮度强,高频特性好;而且随着材料的不同

7、,数码管还能发出红、黄、 绿、蓝、橙等多种颜色的光。g Pi OC 1T2EX/ P1 1 rPI 2C鬥色匸 (MOSI) P1.6C 皿O PI .6 C (SCK: PI 7CRSTC (FXP) F3 CC (TXD) A3 1 r (isiTSj f3 3C (FTHl P3 3C(TQj P14 匚 (T1) P3,5EPJ 6 E一HD) P3 7 1 XTAuilXTAL1 CGNDE VCC POO (ADO PQ 1 (AD1 ) 7JPQ2ADHI3 PQ,3 (A3 PC 4 ADJ J P0.6 /ADS) PO ti *AD6) PD7 AD7) ERrvPP P3

8、ER P2.7 (A1& ,1 P MU* ZIP2 5A13)_ P2 4 “口J F2 3 1A111 戶2 2 *A10 m 1 fA9) P2O r Ag)图2 1 MCS-8051单片机引脚图2. 机械性能好,体积小,重量轻,价格低廉;能与 COMS和TTL电路配合使用;使 用寿命长。3. 工作电压低,驱动电流适中。每段电流为 510mA, 只数码管的8段LED全亮 需要电流3570mA。这样打的电流需要由驱动电路提供,因此,使用时要注意数码管的 驱动问题。在使用中,为了给发光二极管加驱动电压,他们应有一个公共的引脚,公共的引脚有 如下两种链接方法:一、共阴极接法。把发光二极管的阴极

9、连接在一起构成阴极公共引脚, 使用时公共引脚接地,这样阳极引脚上加高电平的发光二极管就导通点亮,而加低电平的 则不亮。二、共阳极接法。把发光二极管的阳极连接在一起作为阳极公共引脚,使用时阳 极公共引脚接+5V。这样阴极引脚上加低电平的发光二极管即可导通点亮,而加高电平的 则点不亮。本课题采用 SR410561K四位一体数码管,为共阳极接法,位选信号位高电平 有效,段码信号为低电平有效。242数码管的显示原理并排使用的多位数码管组成数码管显示器。 数码管显示器多采用动态显示方式, 全部 数码管共用一套段码驱动电路,各位数码管的同段引脚短接后再接到对应段码的驱动线动态显示虽然在上。显示时通过位控制

10、信号采用扫描的方法逐位地循环点亮各位数码管。任一时刻只有一位数码管被点亮, 但是由于人眼具有的视觉残留效应, 看起来与全部数码 管持续点亮的效果完全一样。数码管显示器的动态显示需要为各位提供段码以及相应的位控制,此即通常所说的段控和位控。把数码管显示器段码表预先存放在存储器中, 使用时通过查表就可以得到段码。 段码输出后送到公共端码线上, 也可称为段控信号。而通过并行口输出的相互独立的位码 则是起选通作用的,也称位控活扫描信号,用于选择显示位。动态显示具有硬件简单,功耗低和显示灵活性强等优点。 但动态显示增加了驱动软件 的复杂性,且显示亮度较低。2.4.3数码管显示器段码SR410561K四位

11、一体数码管采用共阳极接法,单个数码管如图22所示A7图22八段数码管则数码管段码如表2 1所示。表2 1数码管段码显示数字Dp g f e d c b a段码O11000000cO111111001f9210100100a4310110000b0410011001995100100109261000001082711111000f8810000000P8091001000090A1000100088b10000011P83C11000110c6d10100001a1E1000011086F100011108e2.5定时器2.5.1定时器工作原理在MCS-8051单片机内集成了两个16位的定时器

12、/计数器TO和T1,其基本工作原理 是加1计数,即对指定的脉冲信号进行加1操作,直到出现溢出为止。当TO和T1作为定 时器使用时,其计数脉冲信号取自单片机内部的时钟信号,每个机器周期产生一个计数脉冲,使计数器加1。TO和T1分别有两个8位的计数器组成,其中TO由特殊功能寄存器THO与TLO组成, 而T1则由特殊功能寄存器TH1与TL1组成。这四个寄存器用来存储定时或计数使用的初 值,所以也被称为时间常数存储器。特殊功能寄存器TMOD和TCON完成对定时器/计数器的控制功能。2.5.2定时器的控制MCS-8O51单片机的定时功能是由特殊功能寄存器 THO,TLO,TH1,TL1,TMOD和TCO

13、N 完成的。特殊功能寄存器TMOD用于确定定时器的工作方式,格式如下:D7D6D5D4D3D2D1D0GATEC/TM1M0GATEC/TM1M0其中,前4位用于控制T1的工作方式,后四位用于控制T0的工作方式。本课题仅使 用T1作为定时器,选择工作方式为方式1,即为选择T1为16为定时器。则TMOD的值 应设置为 00010000B,即 TMOD=0x10。特殊功能寄存器TCON用于用于控制定时器的启动和停止技术,同时包含了定时器的 状态,可进行位寻址。格式如下:D7D6D5D4D3D2D1D0TF1TR1TF0TR0IE1IT1IE0IT0本课题中用到的控制位有 TI的控制位TR1和TF1

14、,无需中断控制。TR1为T1运行 控制位,若TR1=1,允许T1计数,若TR1=0,禁止T1计数。TF1为T1计数溢出标志值, 当T1被允许计数后,T1从初值开始加1计数,最高位产生溢出时,TF1由硬件置1, TF1 的信息可由软件查询。2.5.3定时器初值的设定本课题中,设置初值使T1的定时周期为1ms。当红灯熄灭后,定时器开始工作,每1ms定时器产生一次溢出,使数码管要显示的反应时间以毫秒为单位加1,达到使数码管显示人体反应时间的目的。T1采用工作方式1定时,时钟频率采用6MHz,则计数初值:x=216-6 X06X1 X10-3/12=65536-6000/12=65036化为二进制 x

15、=1111111000001100B 则计数初值应为 TH1=0xfe ,TL1=0x0c。第二章总体方案设计3.1总体方案数码管的显示电路中采用动态数码管显示。采用MCS-8051单片机的 P0端口(P0.0P0.7端口)控制段码,低电平有效。P2.0P2.3端口控制4位数码管的位选择,高 电平有效。(P2.3端口控制第1个数码管,P2.2端口控制第2个数码管,P2.1端口控制第 3个数码管,P2.0端口控制第4个数码管)。各个数码管的段码都是P0端口的输出,即各个数码管输入的段码都是一样的,为了 使其分别显示不同的数字,可采用动态扫描的方式,即先只让最低位显示,经过一段延时, 再只让次低位

16、显示,以此类推。由于视觉暂留,只要延时时间足够短,就能够使得数码的 显示看起来非常稳定清楚。3.2功能模块框图人体反应速度测试仪的功能模块框图如图3 1所示。硬件电路由MCS-8051单片机、电源电路、测试按钮和测试灯电路、晶振电路、复位 电路、驱动电路、反相电路以及数码管显示电路组成。图3 1人体反应速度测试仪功能模块框图第四章系统硬件设计4.1硬件连接图 4.1.1测试按钮与测试灯电路MCS-8051单片机的P1.0端口控制一个发光二极管,即为测试红灯。发光二极管加限 流电阻接+5V电源,当单片机的P1.0端口输出低电平时,红灯亮,输出高电平时,红灯 灭。P1.1端口接 开始”按钮,按钮另

17、一端接地。若按钮按下,则P1.1 口输入低电平,否则输入高电平。4.1.2数码管显示电路数码管采用 SR410561K四位一体数码管。MCS-8051单片机的P0 口的8个端口 (P0.0P0.7控制数码管的八段数码显示。P0 口 8位输出经限流电阻接入到数码管显示器的段码端口。数码管采用共阳极接法, 低电平有效。限流电阻的接入是由于在应用数码管进行显示时,首先需要考虑的问题是驱 动电流,与发光二极管相同,数码管的发光段也需要串联限流电阻,串联限流电阻的组织 越大,电流越小,亮度越低;电阻阻值越小,电流越大,亮度越高。在使用限流电阻时需 要在每一个线段上都串联限流电阻, 而不要在公共端上串联一

18、个限流电阻,否则在显示不同的数字时,会造成数码管亮度的不同。单片机P2 口的P2.0P2.3控制4位数码管的位选,P2 口输出经限流电阻后需进行反 相,反相之后经驱动电路接入到数码管显示器的位选端。4.1.3晶振电路时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单 片机系统的运行。单片机必须在时钟的驱动下才能正常工作。MCS-8051单片机的时钟可以由内部方式或外部方式产生。本课题采用内部方式的晶振电路,如图4 1所示,一般选用石英晶体振荡器。利用 MCS-8051单片机内部的震荡电路,并在

19、 XTAL1和XTAL 2两 脚间外接晶体以及电容 C1和C2构成的并联谐振电路,使内部振荡器产生自激振荡。组 成时钟电路的晶体振荡器的频率大小决定了单片机系统的工作频率,即决定着单片机的工卩C1作速度,本课题时钟频率采用 6MHz。XTAL2X1AL1图4 1晶振电路4.1.4复位电路采用上电自动复位电路,工作原理是:通电瞬间, RC电路充电,RST端出现正脉冲, 只要RST端保持10ms以上的高电平,就能使单片机有效复位。当晶振频率选用6MHz时, C取22uF,R取1k欧,如图42所示。+5V1HVcc4Vss图42复位电路4.1.5驱动电路用四个PNP数码管作为每一位数码管的驱动电路,

20、这样使得数码管电流更大,亮度 更亮。P2.0P2.3控制数码管显示器的四个位,当相应的端口变为高电平时,经反相器变 为低电平,驱动相应的三极管会导通,+5V通过相应的驱动三极管给数码管相应的位供电, 这时只要P0 口送出相应的显示段码,数码管就能显示出所需数值,即显示定时器的计时 数值。4.1.6反相电路由于程序中设置P2 口输出的位选信号为高电平,使驱动三极管导通应使用低电平, 即在位选信号输出线路中限流电阻后应接入反相器。本课题反相器采用74LS04反相器。74LS04芯片为6非门(反相器),内部含有6个coms反相器,74LS04的作用就是反相。反 相器输出三极管驱动电路接入到数码管位选

21、端口。74LS04如图4 3所示。iaNo13|&A04鼻匡$ 6GMO巨图43 74LS04反相器4.2实现方法主程序采用查询方式,当按钮按下时,MCS-8051单片机使LED灯亮起的同时调用随机函数产生一个随机时间,单片机利用产生的这个随机时间计时。计时时间到,MCS-8051单片机输出使P1.0端口为高电平,LED测试灯熄灭,MCS-8051单片机进行新的一轮计时, 当测试者松开按钮时,计时时间停止,单片机把这个计时时间送往数码管显示电路显示。 当MCS-8051单片机第一轮的计时时间还未到时,若按钮松开,则单片机输出错误提示, 使数码管显示为9999。4.3详细流程图图4 1详细流程图

22、/数码管上的显示反应时间/posi 初始化选择为最低位 /1s /100ms /10ms/1ms/数码管显示/P2 口进行位选择P0 口进行段选择/posi 二进制向左移动一位,选择下一位为随机时间,即按钮按下到红灯熄灭的时间/生成随机数/产生的随机数的范围为 0-50000/产生一个随机数/定时器 1 为工作方式 1/定时器 1 的周期为 1ms第五章 程序代码编写5.1 按钮电路的实现 描述:读取按钮当前的状态 byte bot(void)/按钮状态,若按钮被按下则返回 0,否则返回 1 if(key=0) return 0;else return 1; 5.2 四位数码管显示电路的实现

23、描述:数码管进行显示反应时间void display(word ms)byte posi=0x01,i,j,temp; disp3=ms/1000; disp2=(ms%1000)/100; disp1=(ms%100)/10; disp0=ms%10;for(i=0;i4;i+)temp=dispi; temp=tabletemp; for(j=0;j0;j-) lms(); k=bot();if (k=1) mstime=9999; led=1 ; goto loop;void main(void)unsigned char code table16=0xc0,0xf9,0xa4,0xb0

24、,0x99,0x92,0x82, 0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e/ 获取按钮情况, k=0 为按钮被按下/P1 口预制高电平,红灯熄灭( P1.0)/等到按钮被按下,循环条件为 0,跳出 /按键被按下后,灯亮/产生随机时间/使红灯在该时间内为亮/如果测试者在红灯熄灭前松开按钮按钮/使数码管显示 9999 出错信息/红灯熄灭/随机延时结束,红灯熄灭/定时器 1 初始化/定时器每 1ms 产生一次溢出/溢出位复位/计时时间增加 1ms/测试者松开按钮,计时结束/按键弹开后始终显示时间/若按键按下,重新开始测试led=1;INIT_T1();

25、while(1)if(TF1=1)TH1=0xfe;TL1=0x0c;TR1=1;TF1=0;mstime=mstime+1; if(bot() break;loop:while(1)if(k=1)k=bot(); display(mstime);elsemstime=0;P2=0xff;break;5.6 总程序#define led P1A0#define key PM1byte bot(void)if(key=0)return 0;else return 1;void display(word ms)byte posi=0x01,i,j,temp;disp3=ms/1000;disp2=

26、(ms%1000)/100;disp1=(ms%100)/10;disp0=ms%10;for(i=0;i4;i+)temp=dispi;temp=tabletemp;for(j=0;j0;j-)lms(); k=bot(); if (k=1) mstime=9999; led=1 ; goto loop;led=1;INIT_T1();while(1) if(TF1=1)TH1=0xfe;TL1=0x0c; TR1=1; TF1=0; mstime=mstime+1;if(bot() break;loop:while(1)if(k=1)k=bot(); display(mstime);els

27、emstime=0;P2=0xff; break;第六章结论经过两周的制作,完成了人体反应速度测试仪的设计,达到了预定的要求。这次课程 设计给我们提供了一个应用自己所学知识去勇于创新和实际的平台。一开始做人体速度测试仪的设计是觉得看起来会比较简单, 但是真正做起来才发现其实还是比较困难的, 毕竟 在这一方面的技术有限。第一周前两天进行了资料查阅了解,第三天开始编辑说明书,同 时进行电路图的构思理解。从通过理论设计,再到确定具体方案,成型。整个过程都需要 充分利用所学的知识进行思考、借鉴。可以说,这次课程设计是对前面所学知识进行的一 次比较综合的检验。总的来说,这次课程设计虽然很累,但却是苦中有

28、乐,非常充实。在 这次实习中,正确的思路是很重要的,只有你的设计思路是正确的,你的设计才有可能成 功。这次能那么成功的完成我的设计,要感谢老师和同学们的帮助,李老师、胡老师能在 百忙之中来知道我,每当我遇到棘手的问题,老师总能给我最好的建议,教我改进的方法, 不厌其烦的指出我在设计中存在的问题和错误, 是我更好的完成设计。在理解程序的时候 也请教了同学,他们也很热情的回答我的问题,让我在这次实习中不会觉得那么孤立无援。 这次的实习也让我学到了很多东西,对很多单片机方面的知识有了更深的了解,并且能够 运用到实践中了。原来实习不尽可以锻炼我们的动手能力, 而且能够让我们学到更多的理 论知识,也觉得很充实。最后我还要感谢学校给我这次实习的机会,和同学老师一起走过的这段时间深深地刻 在我的脑海里。希望自己以后对待别的事情也可以这么认真。参考文献1. 张淑清,单片机原理及应用技术,国防工业出版社, 20102. 潭浩强, C 语言程序设计,清华大学出版社, 200519973. 李华,李东, MCS51/98 系列单片机原理与应用,机械工业出版社,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 待归类文档
版权提示 | 免责声明

1,本文(人体反应速度测试仪毕业设计(DOC 17页).docx)为本站会员(2023DOC)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|