基于51单片机的七路路抢答器课程设计
- 格式:doc
- 大小:963.00 KB
- 文档页数:18
基于51单片机智能抢答器的设计51单片机智能抢答器是一种智能化的电子设备,可以用于各种有奖答题活动中,通过简单的按键操作即可实现抢答功能。
本文将介绍基于51单片机的智能抢答器的设计,包括硬件电路设计和软件程序设计。
一、硬件电路设计1. 电源模块:采用直流电源供电,可选择使用电池或者适配器供电。
为了保证正常的使用,建议使用干电池或者锂电池供电,并加入适当的电源保护电路。
2. 控制模块:使用51单片机作为控制核心,通过外部按键输入实现答题和抢答功能。
需要接入外部中断输入端口并编写相应的中断服务程序。
3. 显示模块:采用液晶显示模块作为主要的显示设备,用于显示答题结果和其他信息。
需要编写相应的驱动程序以实现显示功能。
4. 输入模块:设置抢答按钮和答题按钮作为输入设备,通过按键操作来实现抢答和答题功能。
需要加入合适的按键消抖电路以确保按键操作的稳定性。
5. 信号处理模块:通过外部传感器检测抢答按钮的按下情况,并将信号输入到51单片机进行处理。
需要设计合适的信号处理电路以满足系统的要求。
二、软件程序设计1. 系统初始化:在系统上电之后,需要对51单片机进行初始化设置,包括外部中断设置、定时器设置、IO口配置等。
2. 按键检测:通过轮询或者中断方式检测抢答按钮和答题按钮的按下情况,并根据按键的不同状态进行相应的处理。
3. 答题逻辑:根据抢答按钮的按下顺序和答题按钮的按下情况,判断抢答者是否答题正确,并根据结果进行相应的显示和处理。
4. 显示控制:根据答题的结果和其他相关信息,控制液晶显示模块显示相应的内容,包括抢答者的得分、答题结果等。
5. 系统完善:考虑到系统的稳定性和可靠性,需要对系统进行进一步的优化和完善,包括添加异常处理程序、加入错误提示功能等。
通过以上硬件电路设计和软件程序设计,可以实现一个基于51单片机的智能抢答器,并可以在各种有奖答题活动中使用。
这种智能抢答器可以提高活动的趣味性和互动性,成为活动中的一种重要设备。
基于51单片机智能抢答器的设计
51单片机智能抢答器是一种基于51单片机的电子设备,用于抢答竞赛或教育活动中,能够实现自动抢答、计分和显示等功能。
本文将介绍基于51单片机智能抢答器的设计原理、硬件结构和软件实现。
基于51单片机智能抢答器的设计原理是通过轮询按钮的状态来判断参赛者是否按下按钮进行抢答,然后根据抢答的顺序进行计分和显示。
其硬件结构包括51单片机、按钮、显示屏和蜂鸣器等组件。
具体来说,按钮用于参赛者按下进行抢答,采用并口方式连接到51单片机的IO口。
当有参赛者按下按钮时,会通过IO口向单片机发送一个高电平信号。
显示屏用于显示抢答的顺序和当前得分,可以使用数码管或液晶显示屏。
蜂鸣器用于发出抢答成功或错误的提
示音。
在软件实现方面,需要编程实现如下功能:使用中断来检测按钮的按下状态,并记录
抢答的时间顺序;根据抢答的顺序,对参赛者进行计分;通过显示屏和蜂鸣器进行抢答结
果的显示和提示。
在编程方面,可以使用C语言来编写程序。
需要配置IO口为输入和输出模式,并设置中断函数,以实现对按钮状态的检测和记录。
然后,通过数组或链表来保存参赛者的抢答
顺序,并根据顺序对参赛者进行计分。
根据计分结果,将数据通过数码管或液晶显示屏进
行显示,并通过蜂鸣器进行相应的提示音。
基于51单片机的智能抢答器可以实现自动抢答、计分和显示等功能,可以广泛应用于抢答竞赛和教育活动中,提高活动的趣味性和教学效果。
该设计也可以作为学习51单片机的实践项目,对于提高学生的编程能力和电子设计能力有一定的帮助。
基于51单片机智能抢答器的设计【摘要】本文基于51单片机设计了一款智能抢答器系统,通过系统架构设计、硬件设计、软件设计、功能实现和性能评测等方面的详细介绍,展现了该系统的设计思路和实现过程。
通过对设计优点的总结和展望未来的讨论,为该系统的进一步优化和应用提供了参考。
本文旨在为研究人员和工程师提供基于51单片机的智能抢答器设计思路和解决方案,以期促进智能抢答器技术的发展和应用。
结语中强调了该系统的重要性和潜在的市场应用前景,为读者留下对智能抢答器技术的思考和期待。
通过本文对智能抢答器设计的全面阐述,读者可以更深入地了解该技术领域的发展趋势和研究方向。
【关键词】51单片机, 智能抢答器, 系统架构设计, 硬件设计, 软件设计, 功能实现, 性能评测, 设计优点总结, 展望未来。
1. 引言1.1 背景介绍通过对51单片机智能抢答器的设计,可以深入了解单片机的开发流程和原理,提升自己的电子设计能力。
智能抢答器还可以应用于各种比赛、培训活动中,帮助主持人更好地组织活动,提高活动的趣味性和参与度。
基于51单片机的智能抢答器设计具有重要的实用和教育意义,对于电子爱好者和教育工作者来说,都具有一定的参考价值。
1.2 研究意义是指在进行科学研究时,明确的研究目的和意义,即通过研究,可以解决什么问题,对相关领域的发展有何贡献。
基于51单片机智能抢答器的设计具有重要的研究意义,主要体现在以下几个方面:1. 提高教学效率:智能抢答器可以帮助教师进行课堂互动,引导学生积极参与课堂互动,提高课堂氛围和教学效果。
2. 增强学生学习兴趣:通过抢答器的设计,可以增加学生的学习乐趣,激发学生的学习兴趣和积极性,提高学习效率。
3. 提升教学质量:抢答器可以帮助教师及时了解学生的学习情况和掌握学生的学习进度,有针对性地进行教学调整,从而提升教学质量。
4. 推动技术发展:基于51单片机的智能抢答器设计,结合了硬件和软件技术,可以促进相关领域的技术发展和创新。
基于51单片机智能抢答器的设计一、需求分析随着社会的不断发展,教育教学工作也在不断改进和创新。
在学校教育中,课堂互动是非常重要的一环,而智能抢答器作为课堂互动的一种工具,其作用愈发突显。
智能抢答器可以有效地帮助老师激发学生的兴趣,增加课堂互动的趣味性,提高学生参与度和课堂效果。
设计一款基于51单片机的智能抢答器具有非常重要的意义。
基于51单片机的智能抢答器,需要满足以下一些功能需求:1. 可以实现学生抢答的功能,即学生按下按钮进行抢答,系统记录按键顺序并显示结果。
2. 可以设置不同的抢答模式,如抢答模式、排队模式等,满足不同场景下的教学需求。
3. 可以显示抢答结果,并根据不同情景进行排名显示。
4. 可以具备查询功能,老师可以查询学生抢答的结果并对结果进行分析和统计。
二、方案设计1. 系统整体设计智能抢答器整体由51单片机、按钮、LED显示屏和蜂鸣器等组成。
其工作原理是通过单片机对按钮的输入信号进行检测并记录,然后根据不同的抢答模式进行结果的显示和排名。
系统还具备查询功能,通过按下相应的按钮可以对抢答结果进行查询。
2. 软件设计基于51单片机的智能抢答器的软件设计主要包括两个部分:抢答器的逻辑控制和抢答结果的显示。
(1) 抢答器的逻辑控制在抢答器的逻辑控制部分,需要对按钮的输入信号进行检测和记录,并根据抢答模式对学生的抢答顺序进行排序。
还需要对老师的查询指令进行响应,将抢答结果进行显示和输出。
(2) 抢答结果的显示抢答结果的显示主要通过LED显示屏进行,可以根据不同的排名情况进行不同方式的显示,如按下按钮的顺序、得分高低等。
3. 硬件设计硬件设计主要包括51单片机的选型和外围电路的设计。
在选型方面,需要选择合适的51单片机以及与之匹配的LED显示屏、按钮和蜂鸣器等外围电路,保证系统的正常工作。
在外围电路的设计过程中,需要注意充分考虑稳定性和可靠性,同时还需要考虑系统的可维护性和扩展性。
三、系统实现在系统实现过程中,首先需要完成软件的编写和硬件的搭建。
51多路抢答器课程设计一、课程目标知识目标:1. 学生理解抢答器的原理,掌握51单片机的使用方法。
2. 学生能够运用所学知识,设计并实现一个多路抢答器的电路。
3. 学生了解抢答器在现实生活中的应用,理解其工作原理与电路设计之间的关系。
技能目标:1. 学生能够独立完成51单片机的编程与调试。
2. 学生能够利用所学知识,解决实际电路设计中的问题。
3. 学生通过动手实践,培养电路设计与制作的能力。
情感态度价值观目标:1. 学生在学习过程中,培养团队协作精神和解决问题的能力。
2. 学生通过实践,体会科技的魅力,增强创新意识。
3. 学生关注科技发展,树立正确的科技观,认识到科技对生活的影响。
课程性质:本课程为实践性较强的课程,通过理论与实验相结合的方式,让学生在实际操作中掌握知识。
学生特点:学生具备一定的电子技术基础知识,具有较强的动手能力和好奇心。
教学要求:注重理论与实践相结合,鼓励学生动手实践,培养学生的创新意识和实际操作能力。
将目标分解为具体的学习成果,以便在教学过程中进行有效评估。
二、教学内容本课程依据课程目标,结合教材内容,制定以下教学大纲:1. 抢答器原理介绍- 抢答器的基本概念- 抢答器的工作原理与分类- 51单片机在抢答器中的应用2. 51单片机基础- 51单片机的内部结构与功能- 51单片机的编程语言与指令系统- 51单片机的I/O口编程与应用3. 多路抢答器电路设计- 电路设计原理与步骤- 常用电子元件的选择与应用- 抢答器电路图绘制与仿真4. 抢答器程序设计- 程序设计基本思路与方法- 51单片机程序编写与调试- 抢答器程序功能实现5. 实践操作与调试- 抢答器电路搭建与测试- 程序下载与调试- 系统优化与故障排查教学内容安排和进度:1-2课时:抢答器原理介绍与51单片机基础3-4课时:多路抢答器电路设计5-6课时:抢答器程序设计7-8课时:实践操作与调试教学内容与教材关联性:本教学内容紧密围绕教材中关于51单片机及其应用的相关章节,确保科学性和系统性。
基于51单片机智能抢答器的设计抢答器是一种能够帮助教师进行课堂互动和提高学生参与度的设备。
本文将介绍基于51单片机的智能抢答器的设计。
我们需要准备的硬件有51单片机、LCD液晶显示器、蜂鸣器、按键、LED灯等。
在软件方面,我们需要使用Keil C编译器进行程序开发。
设计思路如下:1. 硬件连接:将LCD液晶显示器、蜂鸣器、按键和LED灯与51单片机相连接。
LCD用于显示问题和答题结果,蜂鸣器用于提醒答题者是否答对,按键用于答题者选择答案,LED灯用于指示答题进程。
2. 程序开发:使用Keil C编译器编写程序。
需要编写初始化程序,包括LCD、蜂鸣器、按键和LED灯的初始化设置。
然后,编写问题显示的程序,从题库中随机选择一道问题在LCD屏幕上显示出来。
接着,编写答题程序,通过按键选择答案,并通过LCD屏幕显示答题结果。
编写回答正确和回答错误的提示程序,根据答题结果触发蜂鸣器和LED灯的开启和关闭。
3. 调试测试:将程序下载到51单片机中,进行调试测试。
通过按键进行答题,观察LCD显示的问题和答题结果,以及蜂鸣器和LED灯的工作情况。
4. 完善功能:根据实际需求,可以进一步完善抢答器的功能。
可以增加计分功能,记录每个学生的答题情况和得分;可以设置抢答时间,规定答题时间限制;可以增加抢答排名功能,显示答题速度最快的学生等。
通过以上设计,我们可以实现基于51单片机的智能抢答器。
该抢答器具有显示问题、接收答题、显示答题结果、提示正确答案、计时计分等功能,能够有效地增加课堂参与度和课堂互动。
抢答器的功能可以根据实际需求进行扩展和改进,更好地满足教学需要。
/**********************51单片机实验开发板例程************************* 名称:本例程为一抢答器;其中主持人操控S7与S8两个按键。
选手共六位,分别操控S1--S6中的一个按键。
当主持人按下抢答开始按键S7后,倒计时开始,计时5s。
此后最先按下按键的选手号码将显示与数码管上。
后来按下的将无显示。
若五秒计时结束后,再按下按键也不会显示。
若主持人没有按开始键,就有选手抢答,则视为犯规。
此时犯规的选手号码将被显示于数码管上(最多显示五位犯规选手)同时,蜂鸣器发出长笛声报警,数码管全亮。
而当主持人按下清零键S8后,一切状态均恢复,可以开始新一轮的抢答。
按键功能简介S8抢答开始S7 清零S1--S6 分别为1到6号选手按键******************************************************************/#include<reg51.h>#define uchar unsigned charsbit dula=P2^6;sbit wela=P2^7;sbit beep=P2^3;uchar key,j,k,temp,daojishi=5,wei;bit begin,end,clear,fangui;uchar a0,b0=16;c0=16;d0=16;e0=16;f0=5;unsigned int pp;unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};void delay(unsigned char i){for(j=i;j>0;j--)for(k=125;k>0;k--);}void display(uchar a,uchar b,uchar c,uchar d,uchar e,uchar f){dula=0;P0=table[a];dula=1;dula=0;wela=0;P0=0xfe;wela=1;delay(5);P0=table[b]; dula=1; dula=0;P0=0xfd; wela=1; wela=0; delay(5);P0=table[c]; dula=1; dula=0;P0=0xfb; wela=1; wela=0; delay(5);P0=table[d]; dula=1; dula=0;P0=0xf7; wela=1; wela=0; delay(5);P0=table[e]; dula=1; dula=0;P0=0xef; wela=1; wela=0; delay(5);P0=table[f]; dula=1; dula=0;P0=0xdf;wela=0;delay(5);}void keyscan(){P3=0xfe;temp=P3;temp=temp&0xf0;if(temp!=0xf0){delay(10);if(temp!=0xf0){temp=P3;switch(temp){case 0xee:key=1;wei++;break;case 0xde:key=2;wei++;break;case 0xbe:key=3;wei++;break;case 0x7e:key=4;wei++;break;}while(temp!=0xf0){temp=P3;temp=temp&0xf0;beep=0;}beep=1;}}P3=0xfd;temp=P3;temp=temp&0xf0;if(temp!=0xf0){delay(10);if(temp!=0xf0){temp=P3;switch(temp){case 0xed:key=5;wei++;break;case 0xdd:key=6;wei++;break;case 0xbd:clear=1;//key=7;break;case 0x7d:begin=1;//key=8;break;}while(temp!=0xf0){temp=P3;temp=temp&0xf0;beep=0;}beep=1;}}}void main(){TMOD=0x01;TH0=(65536-46080)/256;// 由于晶振为11.0592,故所记次数应为46080,计时器每隔50000微秒发起一次中断。
基于51单片机智能抢答器的设计一、引言二、设计思路1.系统功能需求智能抢答器主要包括以下功能:(1)抢答功能:允许学生在教师提出问题后进行抢答;(2)提前设置答题时间:教师可以设置每次抢答的时间;(3)显示抢答结果:显示学生选手的抢答结果和答题情况;(4)记录抢答情况:记录学生的抢答情况,方便教师进行统计和评估。
2.系统硬件设计系统采用51单片机作为核心,通过按键、显示屏等外设实现系统的各项功能。
系统还需配备一套抢答设备,每位学生需要配备一个手持式抢答器,用于进行抢答操作。
3.系统软件设计系统需要设计相关的软件程序,包括抢答逻辑、结果显示、数据统计等功能。
需要考虑系统的稳定性和易用性,确保教师和学生可以轻松操作系统。
三、系统设计与实现1.抢答器的设计抢答器采用51单片机作为核心,通过按键输入学生答案,再通过无线通信将答题结果发送给主控系统。
抢答器还需配备显示屏,显示学生的抢答结果。
为了保证系统的安全性,还需设计防作弊功能。
2.主控系统的设计主控系统也采用51单片机作为核心,通过接收抢答器的信号,处理并显示抢答结果。
主控系统还需要设计相应的操作界面,方便教师进行设置和操作。
系统还需设计数据存储和统计功能,记录学生的抢答情况。
四、系统性能测试及改进1.系统性能测试完成系统的硬件和软件设计后,需要进行系统的性能测试,主要包括以下几个方面:(1)抢答功能测试:测试学生抢答器的响应速度和稳定性;(2)结果显示测试:测试主控系统的抢答结果显示效果;(3)数据统计测试:测试系统的数据统计和记录功能。
2.系统改进根据测试结果,对系统进行相应的改进和调整,确保系统能够稳定运行并满足实际教学需求。
需要特别关注系统的稳定性、易用性和安全性等方面的改进。
五、系统应用与展望1.系统应用智能抢答器可以广泛应用于教育教学领域,提高课堂互动和学生的参与度。
还可以应用于各类知识竞赛、学科竞赛等活动中。
2.系统展望智能抢答器作为新型的教学辅助工具,具有较大的市场前景。
上海电机学院课程设计目录第1章绪论 (1)1.1 单片机抢答器的背景 (1)1.2 抢答器的意义 (1)第2章设计概述 (2)2.1 抢答器的工作原理 (2)2.2 设计任务 (2)第3章系统硬件电路设计 (2)3.1 AT89C51单片机硬件电路 (2)3.2原理及电路总框图 (3)第4章系统软件设计 (6)4.1 主程序设计 (6)4.2 子程序设计 (6)4.2.1数码管显示电路 (6)4.2.2键盘扫描段码表 (7)4.3 系统流程图 (7)4.3.1系统主程序流程图 (7)4.3.2系统中断程序流程图 (7)4.4 源程序代码 (9)第5章结束语 (17)5.1 小结 (17)5.2 心得体会 (17)参考文献 (18)第1章绪论1.1 单片机抢答器的背景对于抢答器我们大家来说并不陌生, 他是用于很多竞赛场合。
真正实现先抢先答, 让最先抢到题的选手来回答问题。
抢答器不仅考验选手的反应速度同时也要求选手具备足够的知识面和一定的勇气, 选手们都站在同一个起跑线上, 体现了公平公正的原则。
1.2 抢答器的意义本系统采用单片机作为整个控制核心。
控制系统的四个模块为: 显示模块、存储模块、抢答开关, 总开关模块。
该系统通过一个自锁按键输入抢答信号;利用一个数码管来完成显示功能;用按键来让选手进行抢答, 在数码管上显示哪一组先答题的, 从而实现整个抢答过程。
在知识比赛中, 特别是做抢答题目的时候, 在抢答过程中, 为了知道哪一组或哪一位选手先答题, 必须要设计一个系统来完成这个任务。
如果在抢答中, 靠视觉是很难判断出哪组先答题。
利用单片机系统来设计抢答器, 使以上问题得以解决, 即使两组的抢答时间相差几微秒, 也可分辨出哪组优先答题。
相对于类似电视台这类花几万元采购的抢答器系统, 如果个人组织小型的抢答比赛, 这毕竟不合适, 但是依靠单片机的低成本, 低功耗, 可以很好的解决个人用户需要举办小型抢答比赛的需求, 而且精度高, 操作性好。
基于单片机的智能抢答器的设计1 引言抢答器是为各类竞赛参赛者答题时进行抢答而设计的一种优先判决器电路,广泛应用于各种知识竞赛、文娱活动等场合。
传统的抢答器大部分是基于数字电路组成的,制作过程复杂,且准确性与可靠性不高,受现场环境影响大,成品面积大,安装、维护困难。
对于目前抢答器的功能描述,如抢答限时、选手答题计时及犯规组号抢答器具有抢答自锁、灯光指示、暂停复位、电子音乐报时、自动定时、工作模式的切换和时间设定等功能。
本文介绍一种以51系列单片机为控制核心的智能型抢答器的电路组成、设计思路和功能。
该抢答器除具有基本的强大功能外,还具有计时和报警功能。
它对采样的各路抢答信号进行分析,识别超前违规信号、有效抢答信号,并对它们进行处理,从而使每一次抢答过程都有效,保证了抢答过程的快速性、有效性、准确性、公平性。
2 设计方案及原理2.1抢答器设计方案(1)抢答器同时供8名选手或8个代表队比赛,分别用8个按钮“1” ~ “8”表示。
(2)设置一个系统清除和抢答控制的“开始”开关,该开关由主持人控制。
(3)抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。
选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。
(4)抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。
当主持人启动"开始"键后,定时器进行减计时,同时扬声器发出短暂的声响以提示抢答开始。
(5)参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除或者答题计时结束为止。
(6)如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示FF2.2抢答器设计原理该抢答器供不多于8名选手或8个代表队的抢答比赛使用。
每个选手的座位前安装一只抢答按钮开关和一只信号灯。
主持人的座位前安装一只复原按钮开关、一只蜂鸣器和一只抢答器工作状态指示灯。
基于51单片机智能抢答器的设计【摘要】本文介绍了基于51单片机的智能抢答器设计。
在首先对背景进行了介绍,说明了当前抢答器在教育、培训等领域的广泛应用。
接着分析了研究意义和目的,即提高抢答效率和互动性。
在正文中,详细介绍了单片机选择与设计、智能抢答器的硬件设计和软件设计,包括抢答按钮、显示屏等关键部件的设计原理和实现方法。
随后对系统进行了测试与性能评价,探讨了抢答器的可靠性和响应速度。
最后展望了智能抢答器在教学、竞赛等领域的应用前景。
结论部分总结了设计成果,指出存在的问题并提出展望,同时探讨了进一步研究方向。
通过本文的研究可为智能抢答器的设计和应用提供参考和借鉴。
【关键词】51单片机、智能抢答器、硬件设计、软件设计、系统测试、性能评价、应用前景、设计成果、存在问题、展望、研究方向。
1. 引言1.1 背景介绍现代教育教学中,课堂互动是提高学习效果和培养学生积极性的重要手段。
传统的抢答方式存在效率低、难以公平竞争等问题。
设计一款基于51单片机的智能抢答器成为了一个有意义的课题。
本文旨在通过引入智能技术,提高抢答器的灵活性和智能化水平,使抢答活动更加公平、有效、有趣。
通过本文的研究与实践,希望能够为教育教学领域中的课堂互动提供一种新的解决方案,为学生的参与和学习体验提供更好的支持和保障。
1.2 研究意义智能抢答器是一种利用现代技术实现抢答功能的设备,能够提高抢答比赛的效率和公平性。
本文基于51单片机设计了一款智能抢答器,旨在解决传统抢答器存在的问题,如抢答不公平、操作繁琐等。
通过引入智能技术,抢答器可以实现自动识别参与者抢答情况,自动记录得分等功能,提高了抢答比赛的趣味性和竞争性。
1. 提高抢答比赛的公平性:传统抢答器存在操作不精准和人为干扰等问题,导致了抢答的不公平性。
智能抢答器可以自动识别抢答的先后顺序,并快速记录得分,从而提高了抢答比赛的公平性和可靠性。
2. 提升抢答比赛的效率:智能抢答器可以自动统计参与者的得分情况,无需人工干预,节省了人力和时间成本。
基于51单片机智能抢答器的设计智能抢答器是一种集电子技术、语音技术、计算机技术于一体的智能化设备。
它具备自动抢答、语音提示、计时等功能,并可以实现多人同时抢答、成绩统计等多种功能。
其中,基于51单片机的智能抢答器是一种经济实用并且易于操作的设备。
本文就以此为例,对基于51单片机的智能抢答器进行设计。
一、设计方案51单片机智能抢答器的设计方案主要包括硬件和软件两部分内容。
硬件方面,需要设计信号输入部分、信号处理部分、语音提示部分、显示部分以及计时部分。
信号输入部分是指抢答信号的输入,需要考虑抢答按键与51单片机的连接方式以及按键防抖处理。
信号处理部分是指对抢答信号进行处理,需要实现自动抢答、多人抢答、成绩统计等功能。
语音提示部分是指用于提示答题情况的语音播报设备,需要考虑语音芯片的选择、接口连接等问题。
显示部分是指用于显示抢答结果的设备,需要考虑LED数码管的选择、连接方式等。
计时部分是指用于计时的设备,需要考虑时钟模块的选择、接口连接等问题。
软件方面,需要设计对抢答信号的处理程序和对语音提示、显示、计时等操作的控制程序。
对抢答信号的处理主要包括抢答的触发、抢答的判断和存储等功能。
语音提示、显示和计时等程序需要根据硬件方案设计相应的操作接口并编写控制程序。
二、电路设计(1)信号输入部分信号输入部分采用4个抢答按键,分别对应4个LED指示灯,用于表示抢答结果。
在抢答按键与51单片机之间加入一个电阻,可以起到按键的防抖作用。
例如,当按下按键时,由于机械原因,按键可能会反弹几次,这样就可能引起不必要的误操作。
加入电阻可以使按键的电平稳定,避免误操作。
信号处理部分通过对抢答信号的处理,实现自动抢答、多人抢答和成绩统计等功能。
采用中断方式来读取抢答信号。
当一个按键被按下后,51单片机通过中断程序自动判断抢答是否正确,并在LED指示灯上显示抢答正确与否。
如果抢答正确,则该按键所对应的LED点亮,如果抢答错误,则LED不亮。
基于51单片机智能抢答器的设计一、引言随着时代的不断发展,科技的进步给我们的生活带来了越来越多的便利。
在教育领域,智能设备的运用也在不断地改变着传统的教学方式。
而基于51单片机的智能抢答器,正是其中的一种代表。
它可以在课堂上为学生们提供一个更加活跃、便捷的答题环境,同时也可以为老师们提供更好的教学工具。
二、智能抢答器的设计思路智能抢答器是一款用于课堂教学的设备,它能够在教师提出问题时,快速地记录学生回答问题的时间,自动统计每个学生的答题次数和正确率。
基于51单片机的智能抢答器的设计,其核心思路主要包括以下几个方面:1. 硬件设计:智能抢答器的硬件设计主要包括输入模块、显示模块和控制模块。
输入模块可以采用按钮或者触摸屏的形式,学生通过按按钮或者点击屏幕来进行答题。
显示模块可以使用LED数码管或者液晶显示屏,用来显示学生答题的时间和结果。
控制模块则是使用51单片机来进行逻辑控制和数据处理。
2. 软件设计:智能抢答器的软件设计是整个系统的核心,它包括系统的逻辑控制、计时功能、结果统计等。
在51单片机上编写一套完整的程序,能够实现按键扫描、计时、数据存储、结果显示等功能,保证系统的稳定、可靠和高效运行。
3. 功能设计:智能抢答器可以设计为单人抢答模式、多人抢答模式、抢答时间限制模式等多种功能模式,以满足不同教学场景的需求。
还可以在系统中设计一些音效提示,增加抢答的趣味性。
三、系统整体设计基于51单片机的智能抢答器的系统整体设计,主要包括硬件设计和软件设计两个方面。
2. 软件设计:(1) 按键扫描:对输入的按键进行扫描,判断学生的答题情况。
(2) 计时功能:记录学生按下按键的时间,自动统计答题时间,保证公平。
(3) 数据存储:存储学生的答题次数和正确率等数据,便于老师分析学生的学习情况。
(4) 结果显示:将统计的结果显示在LED数码管或者液晶显示屏上,便于老师和学生进行观察和分析。
四、系统工作流程基于51单片机的智能抢答器的工作流程主要包括如下几个步骤:五、系统特点基于51单片机的智能抢答器相比传统的抢答器具有很多优势:1. 灵活性更强:可以根据不同的教学需求设计多种功能模式,适应不同的教学场景。
基于51单片机的抢答器设计设计一个基于51单片机的抢答器,可以用于教育培训、竞赛等场合。
抢答器由主控制器、抢答器模块和显示器等组成,可以实现多人同时抢答、自动计分和答题结果显示等功能。
1.系统结构设计:系统由主控制器、抢答器模块和显示器组成。
主控制器使用51单片机,通过IO口与抢答器模块和显示器进行通信。
抢答器模块包括按钮、指示灯和计分器等,用于获得用户的抢答信号和显示计分信息。
显示器用于显示抢答排名、答题结果以及题目等信息。
2.功能设计:-多人抢答功能:主控制器通过轮询方式检测抢答器模块的按钮状态,记录首先按下按钮的参与者信息,并显示其抢答排名。
-自动计分功能:主控制器根据参与者的抢答顺序和答题正确与否,自动计算得分。
得分可以通过显示器进行实时显示。
-答题结果显示功能:在抢答结束后,主控制器将抢答排名、得分和题目等信息发送给显示器,显示器将其显示。
3.系统硬件设计:主控制器部分由51单片机、外围电路和通信接口组成。
外围电路包括时钟电路、复位电路和按键矩阵扫描电路。
通信接口与抢答器模块和显示器相连,通过IO口进行通信。
抢答器模块由按钮和指示灯组成,用于用户抢答和显示抢答状态。
计分功能可以通过数字显示器实现。
显示器部分包括LCD显示屏和控制电路,用于显示抢答排名、答题结果和题目等信息。
4.系统软件设计:主控制器的软件设计主要包括抢答状态检测、计分规则实现和与外围设备的通信。
-抢答状态检测:通过轮询方式检测抢答器模块的按钮状态,记录首先按下按钮的参与者信息,并显示其抢答排名。
-计分规则实现:根据参与者的抢答顺序和答题正确与否,自动计算得分并更新显示器上的得分信息。
-与外围设备通信:与抢答器模块和显示器进行通信,发送抢答排名、得分和题目等信息。
5.系统优化:为提高系统的稳定性和可靠性-设计合理的接口电路,提高抗干扰能力。
-采用合适的检测算法,提高抢答状态检测的准确性。
-优化算法,提高计分规则的实时性和正确性。
单片机课程设计 抢答器一、课程目标知识目标:1. 让学生掌握单片机的基本原理和功能,了解抢答器的电路构成和工作原理。
2. 使学生熟悉抢答器程序设计的基本方法,掌握相关编程语言和开发工具。
3. 帮助学生了解抢答器在实际应用中的技术要求和注意事项。
技能目标:1. 培养学生动手搭建简单抢答器电路的能力,提高实践操作技能。
2. 培养学生运用编程语言设计抢答器程序的能力,提升编程技巧。
3. 培养学生分析问题、解决问题的能力,提高团队协作和沟通能力。
情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,培养创新意识和实践精神。
2. 培养学生严谨、细心的学习态度,养成勤奋、刻苦的学习习惯。
3. 增强学生的团队合作意识,培养公平竞争、尊重他人的价值观。
课程性质分析:本课程为单片机课程设计,以实践操作为主,注重培养学生的动手能力和实际应用能力。
学生特点分析:学生处于高中年级,已具备一定的电子基础和编程知识,具有较强的学习兴趣和求知欲,但实践操作经验不足。
教学要求:1. 结合课本知识,注重理论与实践相结合,提高学生的实际操作能力。
2. 采取分组教学,培养学生的团队协作能力和沟通能力。
3. 注重过程评价,关注学生的个体差异,激发学生的学习兴趣和自信心。
二、教学内容1. 单片机原理:回顾课本第二章内容,讲解单片机的组成、工作原理及主要性能参数。
- 单片机的基本结构- 工作原理及性能参数- 单片机的应用领域2. 抢答器电路设计:结合课本第四章实例,学习抢答器电路的构成及原理。
- 抢答器电路的构成- 抢答器工作原理- 常用元器件的选择与使用3. 抢答器程序设计:参考课本第五章编程知识,学习抢答器程序设计方法。
- 编程语言基础- 程序设计思路- 编程技巧及调试方法4. 实践操作:根据教学进度,安排学生进行抢答器电路搭建和程序设计。
- 电路搭建与调试- 程序编写与优化- 成果展示与评价5. 教学大纲:- 第一周:回顾单片机原理,学习抢答器电路构成及原理;- 第二周:学习抢答器程序设计方法,进行程序编写;- 第三周:实践操作,完成抢答器电路搭建和程序设计;- 第四周:成果展示,总结评价。
基于51单片机智能抢答器的设计一、引言随着科技的迅速发展,智能设备在我们的生活中扮演着越来越重要的角色。
基于单片机的智能设备在教育、娱乐等领域有着广泛的应用,比如智能抢答器就是其中的一个应用案例。
智能抢答器可以帮助教师更加方便地进行课堂互动,提高学生的学习积极性,也可以在娱乐活动中用来举行抢答比赛等。
在本文中,将介绍基于51单片机的智能抢答器的设计。
本设计主要包括硬件电路设计、软件程序设计和整体系统设计三个部分。
我们将介绍单片机的基本知识和51单片机的特点,然后详细介绍硬件电路的设计和软件程序的编写,最后介绍整体系统设计的方案。
二、单片机基础知识单片机是一种集成电路,它集成了中央处理器、存储器和输入输出设备在一个芯片上。
单片机广泛应用于各种电子设备和系统中,如电器控制、仪器仪表、汽车电子系统、及家用电子产品等。
51单片机是著名的单片机系列产品之一,它由英特尔公司开发,是一种通用型单片机,具有强大的功能和良好的性能。
51单片机有着丰富的外设和功能,可广泛应用于各种领域。
其指令系统和硬件设计简单,易于使用,因此深受广大开发者的喜爱。
三、硬件电路设计1. 硬件电路图设计基于51单片机的智能抢答器的硬件电路设计如图1所示。
该电路由51单片机、LED数码管、按键开关、蜂鸣器等组成。
LED数码管用于显示抢答结果,按键开关用于参与者抢答,蜂鸣器用于提示抢答结果。
2. 电路设计说明LED数码管由8个LED灯组成,可以显示0-9的数字,按键开关用于参与者抢答,蜂鸣器可以发出不同的声音来提示不同的抢答结果。
3. 电路实现步骤我们需要选择合适的51单片机芯片,并按照芯片的引脚定义设计电路图。
然后,确定LED数码管、按键开关和蜂鸣器的连接方式和引脚定义。
进行电路的布局和焊接,以完成整个硬件电路的设计。
四、软件程序设计1. 程序设计思路智能抢答器的程序设计主要包括抢答逻辑和显示逻辑两部分。
抢答逻辑用于判断抢答者的答案是否正确,显示逻辑用于控制LED数码管显示抢答结果。
基于51单片机智能抢答器的设计一、引言随着社会的发展,科技的进步,人们对于教育方式和智能化设备的需求也在不断增加。
在传统的教育场景中,老师提问学生答题的方式是常见的教学方式。
但是这种方式存在着一些问题,比如学生答题的积极性不高,答题的公平性和准确性也无法得到保障。
设计一种智能抢答器可以有效解决这些问题。
本文将介绍一种基于51单片机的智能抢答器的设计方案。
通过这种智能抢答器,可以提高学生的参与度和积极性,同时也可以保证抢答的公平性和准确性。
二、智能抢答器的设计原理智能抢答器的设计原理主要基于51单片机,采用蓝牙模块进行数据传输,利用按键和LED显示屏进行交互。
其主要功能包括:显示问题、学生抢答、记录抢答时间和给出答案等。
1. 控制模块:采用51单片机作为控制模块,负责整个抢答器的控制和数据处理。
2. 数据传输:通过蓝牙模块实现问题和答案的传输,保证抢答的实时性。
3. 交互方式:通过按键和LED显示屏进行交互,学生可以通过按键进行抢答,同时LED显示屏可以显示问题和答案。
智能抢答器的硬件设计包括控制模块、蓝牙模块、按键和LED显示屏等。
2. 蓝牙模块:选择市场上常见的蓝牙模块,比如HC-05或者HC-06,实现问题和答案的传输。
3. 按键和LED显示屏:选择质量可靠的按键和LED显示屏,保证稳定的抢答操作和清晰的显示效果。
智能抢答器的软件设计主要包括控制程序和手机端APP两部分。
1. 控制程序:基于51单片机的控制程序,主要负责问题的显示、学生抢答的处理、抢答时间的记录和答案的显示等操作。
2. 手机端APP:设计一个简洁易用的手机APP,实现抢答器和手机的连接,学生可以通过手机进行抢答和查看抢答结果。
五、智能抢答器的工作流程智能抢答器的工作流程主要包括问题显示、学生抢答和答案显示三个步骤。
1. 问题显示:老师在抢答器上显示问题,学生可以通过手机端APP或者抢答器上的按键进行抢答。
2. 学生抢答:学生抢答后,抢答器记录学生的抢答时间,并将抢答结果发送给控制程序进行处理。
西安文理教院物理与板滞电子之阳早格格创做工程教院博业课程安排报告博业班级测控技能与仪器课程51单片机技能与安排题目鉴于51单片机的抢问器安排教号教死姓名指挥西席2014年5月鉴于51单片机的八位抢问器安排纲要随着电子技能的飞快死少,鉴于单片机的统制系统已应用于工业、农业、电力、电子、智能楼宇等止业,微型估计机动做嵌进式统制系统的主体与核心,代替了保守的统制系统的惯例电子线路.抢问器动做一种工具,已广大应用于百般才华战知识竞赛场合.然而抢问器的使用频次较矮,且有的要么创制搀纯,要么稳当性矮.动做一个单位,如果博门买一台抢问器虽然正在经济上不妨启受,然而每年使用的次数极少,往往果少久存搁使(电子器件的)抢问器益坏,再买置的贫苦战即时性便会做用活动的启展,果此安排了本抢问器.本安排是以八路抢问为基础观念.思量到依需设定限时回问的功能,利用AT89C51单片机及中围交心真止的抢问系统,利用单片机的定时器/计数器定时战记数的本理,将硬、硬件有机天分离起去,使得系统不妨精确天举止计时.共时使液晶隐现屏不妨精确天隐现时间,而且给出指令的提示,扬声器爆收提示.系统不妨真止:正在抢问中,惟有启初后抢问才灵验,如果正在启初抢问前抢问为无效;抢问规定时间战回问问题的时间可正在1-99s设定;不妨隐现是哪位选脚灵验抢问战无效抢问,精确按键后有声音的提示;抢问时间战回问问题时间倒记时隐现,谦时后系统计时有声音提示;抢问倒计常常间战回问问题时间均可通过硬件的按键安排.关键词汇:AT89C51;单片机;液晶隐现屏;抢问器;智能目录1 弁止02 安排任务与央供概括02.1 题目02.2 安排任务02.3 安排央供02.4 安排脚段03 规划总体安排03.1 规划03.1.1 统制芯片13.1.2 隐现办法13.1.3 步调谈话的采用13.2 本理框图14 硬件电路安排24.1 抢问器的处事本理24.2 单元电路安排224.2.2 收声电路安排24.2.3 启初、复位按键输进电路的安排234.2.5 设定时间、加减时间电路安排34.2.6 隐现电路的安排35 硬件安排45.1 抢问器处事过程45.2 过程框图46 电路仿真调试56.1 上电准备状态56.2 启初抢问66.3 非法抢问66.4 仄常抢问77 真验仪器及元器件浑单88 安排归纳89 致开810 参照文献8附录一系统电路图9附录二步调浑单91 弁止暂时百般百般的竞赛越去越多,无论是书籍院、工厂、军队仍旧益智性电视节目,其中用到抢问器的概率非常大.暂时很多抢问器基础上采与小规模数字集成电路安排,使用起去没有敷观念.果此安排一款更易于使用战区别度下的抢问器成了非常迫切的任务.当前单片机已加进各个范围,以其功耗小、智能化而著称.所以若利用单片机去安排抢问器,便使以上问题得以办理.针对于以上情况,本课程安排出以AT89C51单片机为核心的八路抢问器.它能根据分歧的抢问输进旗号,通过单片机的统制处理并爆收分歧的与输进旗号相对于应的输出旗号,末尾通过液晶隐现屏隐现相映的路数战问题时间以及各项下令等,使竞赛真真达到公正、公启、公仄.2 安排任务与央供概括2.1 题目8路角逐抢问器2.2 安排任务利用8051单片机中断系统,创制一个有8个按键的角逐抢问器,可供8名选脚角逐的抢问,每组树坐一个抢问按钮,按钮的编号与选脚的编号对于应,主持人树坐统制启关,用去统制系统的浑整战抢问的启初,正在有人按键时举止对于应选脚隐现.2.3 安排央供1 完毕系统的硬件电路安排与硬件安排;2 采与汇编或者C谈话编程;3 采与Proteus、KeilC等硬件真止系统的仿真调试;4 论文央供思路浑晰,结构合理,谈话流畅,书籍写要收切合央供.2.4 安排脚段1 概括使用相关课程中所教的表面知识去完毕那一安排课题.2 通过查阅脚册战相关文献资料,培植自己独力分解妥协决问题的本收.3 进一步认识单片机战时常使用交心电路,加深对于博业知识战表面知识教习的认识战明白.4 教会电路的安排与步调的调试.5 教会撰写课程安排论文.6 培植宽峻认果然处事做风战宽紧的科教做风.3 规划总体安排3.1 规划3.1.1 统制芯片咱们采与51系列单片机A T89C51动做统制核心,该系统不妨完毕运算统制、旗号辨别以及隐现功能的真止.单片机技能比较老练,应用起去便当、简朴而且单片机周围的辅帮电路也比较少,便于统制战真止.所有系统具备极其机动的可编程性,能便当天对于系统举止功能的扩弛战变动.MCS-51单片机特性如下:a、稳当性佳:单片机依照工业统制央供安排,抵挡工业噪声搞扰劣于普遍的CPU,步调指令战数据皆不妨写正在ROM里,许多旗号通讲皆正在共一芯片,果此稳当性下,易扩充.b、单片机有普遍电脑所必须的器件,如三态单背总线,串并止的输进及输出引足,可扩充为百般规模的微电脑系统.c、统制功能强:单片机指令除了输进输出指令,逻辑推断指令中另有更歉富的条件分支跳跃指令.3.1.2 隐现办法正在真止基础功能时,咱们采与了四位数码管隐现,后二位隐现倒计常常间,第一位隐现抢问组号,第三位子空,正在此前提上还正在步调里加了变动抢问时间战倒计常常间的模块,也可通过数码管隐现,成为一个比较完备的系统.厥后正在真止拓展功能时,咱们念加进语音隐现的模块,创制proteus硬件无法仿真,便改为用液晶隐现屏1602隐现.1602液晶隐现屏也喊1602字符型液晶,它是一种博门用去隐现字母、数字、标记等的面阵型液晶模块1602液晶模块里面的字符收存正在储器(CGROM)已经保存了160个分歧的面阵字符图形,那些字符有:阿推伯数字、英笔墨母的大小写、时常使用的标记、战日文假名等,每一个字符皆有一个牢固的代码,它不妨通过简短的英文提示战数字使人精确瞅到角逐举止的所有历程.3.1.3 步调谈话的采用一启初真止基础功能时,使用数码管动做隐现,采与了汇编谈话,比较下效,条理也浑晰;厥后搞拓展功能时改用液晶隐现屏隐现,创制液晶隐现屏使用c谈话编程更便利下效,便完全使用了c谈话.3.2 本理框图图3.1 本理框图4 硬件电路安排4.1 抢问器的处事本理用单片机的二个中部中断动做建改时间的采用按钮,采用建改抢问倒计常常间仍旧回问问题时间;用定时器1动做时间的统制.4.2 单元电路安排抢问器电路4.2.2 收声电路安排4.2.3 启初、复位按键输进电路的安排图4.2收声电路图4.3 启初、复位电路4.2.5 设定时间、加减时间电路安排图4.4时钟振荡电路图4.5 加减时间电路4.2.6 隐现电路的安排图4.6 隐现时间电路5 硬件安排5.1 抢问器处事过程为了不妨达到抢问的公仄、公正、合理,该当正在主持人颁布抢问下令之前必须先设定抢问的时间,果而正在编启初抢问前的步调得先编写设定时间的步调,当时间设佳了之后,主持人颁布抢问下令按下P3.0按键,步调启初挨启定时中断启初倒计时,而后调用键盘扫描子步调,编写键盘扫描步调.当正在扫描到有人按下了问题键,赶快关关T0、调用隐现步调、启锁键盘.交通电源后,液晶隐现屏隐现“Ready……”,抢问器处于克制状态,处于等待启初状态,此时有人抢问,会隐现“error”,也不妨安排抢问时间战回问问题时间,;主持人将启关置,“启初”状态,宣布“启初”抢问器处事,隐现屏隐现“go!”,扬声器给出声音提示,定时器倒计时;选脚正在定常常间内抢问时,抢问器完毕,隐现组号,而且倒计时,时间到扬声器提示.当一轮抢问之后,定时器停止、克制二次抢问、定时器隐现结余时间.如果再次抢问必须由主持人再次支配"启初、停止"状态启关.5.2 过程框图图5.1 过程框图6 电路仿真调试6.1 上电准备状态图6.1 上电准备状态6.2 启初抢问图6.2 启初抢问6.3 非法抢问图6.3 非法抢问6.4 仄常抢问图6.4 仄常抢问7 真验仪器及元器件浑单表7-1 真验仪器及元器件浑单8 安排归纳通过那次课程安排,尔更进一步天认识了抢问器的处事本理,掌握了它的安排及尝试要收.本系统通过采与A T89C51单片机动做核心,以八个按键输进抢问旗号,以液晶隐现屏隐现,根据烧录到单片机中的步调统制所有系统的处事过程,完全性佳,效用下,真止了抢问器的智能化.正在那历程之中也逢到了一些问题,比圆对于汇编谈话明白还没有敷,将其转移为C谈话时正在时序上出现一些问题,另有C谈话前提也需要加强,编程本收有待普及.9致开通过此次的课程安排,让尔更进一步的坚韧了单片机的百般知识.然而正在安排的历程中,逢到了很多的问题,有一些知识已经没有太收会了,然而是通过一些资料又沉新的翻阅而且认果然复习了相关教科书籍中的真质.此次的课程安排竖坐了对于自己处事本收的自疑心,疑赖会对于以后的教习处事死计皆有非常要害的做用,而且大大的普及了动脚本收,使尔充分的体验到了创制历程中的探索的艰易战乐成的喜悦.虽然那次搞出的做品还存留很多需要矫正的场合,然而是正在所有安排历程中所教习到的物品是那次真训所得到的最大支获跟财产,使尔末身受益.末尾,尔要感动指挥教授教授战杨浩辉共教正在尔将系统的汇编谈话改为C谈话时对于尔无公的帮闲.10 参照文献【2】(好)Bruce Eckel 著陈昊鹏译《JA V A编程思维》(第四版),板滞工业出版社,北京,2007.6(2013.11沉印)附录一系统电路图图附录系统电路图附录二步调浑单#include<reg51.h> //包罗单片机的头文献#include<intrins.h> //包罗_nop_()函数定义的头文献sbit E=P2^2;sbit ring=P3^6;sbit start=P3^0;sbit ok=P3^1;sbit add=P3^4;sbit sub=P3^5;sbit D0=P1^0;sbit D1=P1^1;sbit D2=P1^2;sbit D3=P1^3;sbit D4=P1^4;sbit D5=P1^5;sbit D6=P1^6;sbit D7=P1^7;unsigned char num=0;unsigned char a=30,b=60,n=0,qd,hd,d;void display();void delay1ms(){unsigned char i,j;for(i=0;i<10;i++)for(j=0;j<33;j++);}void delay(unsigned char n){unsigned char i;for(i=0;i<n;i++)delay1ms();}void nopp(unsigned char n){unsigned char i;for(i=0;i<n;i++)_nop_();}bit lcd_bz(){bit result;RS=0; //根据确定,RS为矮电仄,RW为下电通常,不妨读状态RW=1;E=1; //E=1,才允许读写nopp(4); //空支配四个呆板周期,给硬件反当令间result=(bit)(P0&0x80); //将闲碌标记电仄赋给resultE=0;return result;}void WriteInstruction (unsigned char dictate){while(lcd_bz()==1); //如果闲便等待RS=0; //根据确定,RS战R/W共时为矮电通常,不妨写进指令RW=0;E=1; //E置矮电仄nopp(2); //空支配二个呆板周期,给硬件反当令间P0=dictate; //将数据支进P0心,即写进指令或者天面nopp(4); //空支配四个呆板周期,给硬件反当令间E=1; //E置下电仄(正跳变)nopp(4);//空支配四个呆板周期,给硬件反当令间E=0; //当E由下电仄跳形成矮电通常,液晶模块启初真止下令}void WriteData(unsigned char y){while(lcd_bz()==1);RS=1; //RS为下电仄,RW为矮电通常,不妨写进数据RW=0;E=1; //E置矮电仄P0=y; //将数据支进P0心,将要数据写进液晶模块nopp(4);//空支配四个呆板周期,给硬件反当令间E=1; //E置下电仄(正跳变)nopp(4);//空支配四个呆板周期,给硬件反当令间E=0; //当E由下电仄跳形成矮电通常,液晶模块启初真止下令}void LcdInitiate(void){delay(15); //延时15ms,尾次写指令时应给LCD一段较少的反当令间WriteInstruction(0x30); //隐现模式树坐:8位数据,16×2隐现,5×7面阵,delay(5); //延时5msWriteInstruction(0x38);delay(5);WriteInstruction(0x0c); //隐现模式树坐:隐现启,有光标,光标闪烁delay(5);WriteInstruction(0x06); //隐现模式树坐:光标左移,字符没有移delay(5);WriteInstruction(0x01); //浑屏幕指令,将往日的隐现真质扫除delay(5);}void Display(unsigned char string[]){unsigned char i;i = 0;while(string[i] != '\0'){ // 隐现字符WriteData(string[i]);i++;}}/*void bark(){ring=1;delay(10);ring=0;} */void answer(){ring=1;delay(500);ring=0;WriteInstruction(0x01);delay(1);Display(" go! ");TR1=1 ;qd=1;d=a;while(1){//TR0=1;if(!D0){n=1;break;}if(!D1){n=2;break;}if(!D2){n=3;break; }if(!D3){n=4;break; }if(!D4){n=5;break; }if(!D5){n=6;break; }if(!D6){n=7;break; }if(!D7){n=8;break;}}WriteInstruction(0x01);switch(n){case 1:Display(" number:1 ");hd=1;break;case 2:Display(" number:2 ");hd=1;break;case 3:Display(" number:3 ");hd=1;break;case 4:Display(" number:4 ");hd=1;break;case 5:Display(" number:5 ");hd=1;break;case 6:Display(" number:6 ");hd=1;break;case 7:Display(" number:7 ");hd=1;break;case 8:Display(" number:8 ");hd=1;break;}n=0;//WriteInstruction(0x01);delay(5000);d=b;while(d+1) ;}void display(){unsigned char tm[3]={0x20,0,0};unsigned char a1,b1;a1=d/10;tm[1]=a1+0x30;b1=d%10;tm[2]=b1+0x30;WriteInstruction(0x01);delay(1);Display(tm);}void main(void) //主函数{TMOD=0X11; //采用定时器办法1TH0=0X00; //给定时器赋处置TL0=0XFF;TH1=0X3C;TL1=0XB0;EA=1;ET1=1; //启总中断EX0=1;ET0=1;EX1=1;TR1=1;LcdInitiate(); //调用LCD初初化函数Display("ready......");while(1){if(start){if(!(D0&D1&D2&D3&D4&D5&D6&D7)){WriteInstruction(0x01);delay(1);Display(" error ");ring=1;delay(500);ring=0;delay(500);WriteInstruction(0x01);}}elseanswer();}}void Int0() interrupt 0 //中断服务步调{WriteInstruction(0x01);Display(" setting qd_tm");delay(1000);WriteInstruction(0x01);d=a;display();while(1){if(!add){ a++;d=a;display();delay(500);}else if(!sub){ a--;d=a;display();delay(500);}if(!ok)break;}}void T0_timer() interrupt 1 //中断服务步调{TH0=0X00;TL0=0XFF;ring=0;}void Int1() interrupt 2 //中断服务步调{WriteInstruction(0x01);delay(1);Display(" setting hd_tm");delay(1000);WriteInstruction(0x01);d=b;display();while(1){if(!add){ b++;d=b;display();delay(500);}else if(!sub){ b--;d=b;display();delay(500);}if(!ok)break;}}void T1_timer() interrupt 3 //中断服务步调{TH1=0X3C; //沉拆初值TL1=0XB0;num++;if(num==20){num=0;display();d--;}if(d==0){ TR1=0 ;ring=1;delay(500);ring=0; }}。
安徽农业大学七路抢答器计课程设计设计题目:七路抢答器学院系别:工学院班级:09电气工程及其自动化一班*名:***指导老师:周平吴敏设计时间:2012年5月25日-6月5日目录一设计任务及要求二方案设计.三硬件电路设计四软件设计五总结摘要抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。
但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低。
作为一个单位,如果专门购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。
本设计是以八路抢答为基本理念。
考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。
用开关做键盘输出,扬声器发生提示。
同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。
一、设计任务与要求一、题目:8路比赛抢答器二、基本要求:利用8051单片机中断系统,制作一个有8个按键的比赛抢答器。
在有人按键时进行对应选手显示。
三、设计任务:1.设计硬件电路,画出电路原理图;2.画出程序流程图;3.编制程序,写出源程序代码;4.写出5000字的详细说明书,要求字迹工整,原理叙述正确,会计算主要元器件的一些参数,并选择元器件;5.个人总结。
四、参考资料:1. 教材;2.《单片机实验指导书》二、方案设计方案:该系统采用51系列单片机AT89C51作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现。
由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。
整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改。
MCS-51单片机特点如下:<1>可靠性好:单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般的CPU,程序指令和数据都可以写在ROM里,许多信号通道都在同一芯片,因此可靠性高,易扩充。
<2>单片机有一般电脑所必须的器件,如三态双向总线,串并行的输入及输出引脚,可扩充为各种规模的微电脑系统。
<3> 控制功能强:单片机指令除了输入输出指令,逻辑判断指令外还有更丰富的条件分支跳跃指令。
其原理框图如下:抢答按扭优先编 码电路 锁存器 译码电路 译码显示 主持人控制开关 控制电路 报警电路 图二三、硬件电路设计1、 抢答器的电路框图如图1所示为电路框图。
其工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置,“开始”状态,宣布“开始”抢答器工作。
定时器倒计时,扬声器给出声响提示。
选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。
当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。
如果再次抢答必须由主持人再次操作"开始、停止"状态开关。
图1抢答器框图如图1所示图2抢答电路的接口电路2、单元电路设计(1)抢答器电路参考电路如图2所示。
该电路完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。
如有再次抢答需由主持人将S开关重新置,“清除”然后再进行下一次抢答。
(2)时序控制电路设计时序控制电路是抢答器设计的关键,它要完成以下功能:a.主持人将控制开关拨到"开始"位置时,扬声器发声,抢答电路和定时电路进人正常抢答工作状态。
b.当参赛选手按动抢答键时,扬声器发声,抢答电路和定时电路停止工作。
(3)复位电路的设计外部中断和内部中断并存,单片机硬件复位端,只要持续4个机器周期的高电平即可实现复位,硬件复位后的各状态可知寄存器以及存储器的值都恢复到了初始值,因为本设计中功能中有倒计时时间的记忆功能,所以不能对单片机进行硬件复位,只能用软件复位,软件复位实际上就是当程序执行完之后,将程序通过一条跳转指令让它完成复位。
复位电路如图3所示:图3复位电路图图4时钟震荡电路3、时钟震荡电路时钟震荡电路单片机必须在AT89C51的驱动下才能工作,在单片机内部有一个时钟震荡电路,只需要外接一个振荡器就能产生一定的时钟信号送到单片机内部的各个单元,时钟震荡电路如图4所示。
4、报警电路设计报警电路用于报警,当遇到报警信号时,发出警报。
一般喇叭是一种电感性图5报警电路图。
8951驱动喇叭的信号为各种频率的脉冲。
因此,最简单的喇叭驱动方式就是利用达林顿晶体管,或者以两个常用的小晶体管连接成达林顿架势。
在右图中电阻R为限流电阻,在此利用晶体管的高电流增益,以达到电路快速饱和的目的。
不过,如果要由P0输出到此电路,还需要连接一个10K的上拉电阻。
选手在设定的时间内抢答时,实现:优先判断、编号锁存、编号显示、扬声器提示。
当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。
如果再次抢答必须由主持人再次作"清除"和"开始"状态开关。
图5报警电路图四、软件设计1、系统主程序设计为了能够达到抢答的公平、公正、合理,应该在主持人发布抢答命令之前必须先设定抢答的时间,因而在编开始抢答前的程序得先编写设定时间的程序,当时间设好了之后,主持人发布抢答命令按下P1.7按键,程序开始打开定时中断开始倒计时,然后调用键盘扫描子程序,编写键盘扫描程序。
当在扫描到有人按下了答题键,马上关闭T0、调用显示程序、封锁键盘。
主程序流程图2、主程序清单OK EQU 20H;抢答开始标志位RING EQU 22H;响铃标志位ORG 0000HAJMP MAINORG 0003HAJMP INT0SUBORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040HMAIN: MOV R1,#30;初设抢答时间为30sMOV R2,#60;初设答题时间为60sMOV TMOD,#11H;设置未定时器/模式1MOV TH0,#0F0HMOV TL0,#0FFH;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H;50ms为一次溢出中断SETB EASETB ET0SETB ET1SETB EX0SETB EX1;允许四个中断,T0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了;=====查询程序=====START: MOV R5,#0BHMOV R4,#0BHMOV R3,#0BHACALL DISPLAY;未开始抢答时候显示FFFJB P3.0,NEXT;dddddddACALL DELAYJB P3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询ACALL BARK;按键发声MOV A,R1MOV R6,A;送R1->R6,因为R1中保存了抢答时间SETB OK;抢答标志位,用于COUNT只程序中判断是否查询抢答MOV R7,#01H ;读抢答键数据信号标志,这里表示只读一次有用信号MOV R3,#0AH;抢答只显示计时,灭号数AJMP COUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面NEXT: JNB P1.0,FALSE1JNB P1.1,FALSE2JNB P1.2,FALSE3JNB P1.3,FALSE4JNB P1.4,FALSE5JNB P1.5,FALSE6JNB P1.6,FALSE7AJMP START;=====非法抢答处理程序=====FALSE1: MOV R3,#01HAJMP ERRORFALSE2: MOV R3,#02HAJMP ERRORFALSE3: MOV R3,#03HAJMP ERRORFALSE4: MOV R3,#04HAJMP ERRORFALSE5: MOV R3,#05HAJMP ERRORFALSE6: MOV R3,#06HAJMP ERRORFALSE7: MOV R3,#07HAJMP ERROR;=====INT0(抢答时间R1调整程序)=====INT0SUB:MOV A,R1MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAY;先在两个时间LED上显示R1JNB P3.4,INC0;P3.4为+1s键,如按下跳到INCOJNB P3.5,DEC0;P3.5为-1s键,如按下跳到DECOJNB P3.1,BACK0;P3.1为确定键,如按下跳到BACKOAJMP INT0SUBINC0: MOV A,R1CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新加起。
MOV R1,#00HACALL DELAY1AJMP INT0SUBADD0: INC R1ACALL DELAY1AJMP INT0SUBDEC0: MOV A,R1JZ SETR1;如果R1为0, R1就置99,DEC R1ACALL DELAY1AJMP INT0SUBSETR1: MOV R1,#63HACALL DELAY1AJMP INT0SUBBACK0: RETI;=====INT1(回答时间R2调整程序)=====INT1SUB:MOV A,R2MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAYJNB P3.4,INC1JNB P3.5,DEC1JNB P3.1,BACK1AJMP INT1SUBINC1: MOV A,R2CJNE A,#63H,ADD1MOV R2,#00HACALL DELAY1AJMP INT1SUBADD1: INC R2ACALL DELAY1AJMP INT1SUBDEC1: MOV A,R2JZ SETR2DEC R2ACALL DELAY1AJMP INT1SUBSETR2: MOV R2,#63HACALL DELAY1AJMP INT1SUBBACK1: RETI;=====倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=====REPEAT:MOV A,R2 ;使用锦囊时重新计时MOV R6,ACLR RINGCOUNT: MOV R0,#00H;重置定时器中断次数MOV TH1,#3CHMOV TL1,#0B0H;重置定时器RECOUNT:MOV A,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6 MOV B,#0AHDIV AB;除十分出个位/十位MOV 30H,A;十位存于(30H)MOV 31H,B;个位存于(31H)MOV R5,30H;取十位MOV R4,31H;取个位MOV A,R6SUBB A,#07HJNC LARGER;大于5s跳到LARGER,小于等于5s会提醒MOV A,R0CJNE A,#0AH,FULL;1s中0.5s向下运行CLR RINGAJMP CHECKFULL: CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并清R0,重新计SETB RINGMOV A,R6JZ QUIT;计时完毕MOV R0,#00HDEC R6;一秒标志减1AJMP CHECKLARGER: MOV A,R0CJNE A,#14H,CHECK;如果1s向下运行,否者跳到查"停/显示"DEC R6;计时一秒R6自动减1MOV R0,#00HCHECK: JNB P3.1,QUIT;如按下停止键退出JNB OK,CHECKK ;只在回答倒计时才有效AJMP NEXTTCHECKK:JNB P3.0,REPEAT ;判断是否使用锦囊NEXTT: ACALL DISPLAYJB OK,ACCOUT;如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用)AJMP RECOUNTACCOUT:MOV A,36HJNB ACC.0,TRUE1JNB ACC.1,TRUE2JNB ACC.2,TRUE3JNB ACC.3,TRUE4JNB ACC.4,TRUE5JNB ACC.5,TRUE6JNB ACC.6,TZ1JNB ACC.7,TZ2AJMP RECOUNTTZ1:JMP TRUE7TZ2:JMP TRUE8QUIT: CLR OK;如果按下了"停止键"执行的程序CLR RINGAJMP START;=====正常抢答处理程序=====TRUE1: ACALL BARKMOV A,R2MOV R6,A;抢答时间R2送R6MOV R3,#01HCLR OK;因为答题的计时不再查询抢答,所以就锁了抢答AJMP COUNTTRUE2:ACALL BARKMOV A,R2MOV R6,AMOV R3,#02HCLR OKAJMP COUNTTRUE3:ACALL BARKMOV A,R2MOV R6,AMOV R3,#03HCLR OKAJMP COUNTTRUE4:ACALL BARKMOV A,R2MOV R6,AMOV R3,#04HCLR OKAJMP COUNTTRUE5:ACALL BARKMOV A,R2MOV R6,AMOV R3,#05HCLR OKAJMP COUNTTRUE6: ACALL BARKMOV A,R2MOV R6,AMOV R3,#06HCLR OKAJMP COUNTTRUE7:ACALL BARKMOV A,R2MOV R6,AMOV R3,#07HCLR OKAJMP COUNTTRUE8:ACALL BARKMOV A,R2MOV R6,AMOV R3,#08HCLR OKAJMP COUNT;=====犯规抢答程序===== ERROR: MOV R0,#00HMOV TH1,#3CHMOV TL1,#0B0HMOV 34H,R3;犯规号数暂存与(34H)HERE: MOV A,R0CJNE A,#06H,FLASH;0.3s向下运行->灭并停响CLR RINGMOV R3,#0AHMOV R4,#0AHMOV R5,#0AH;三灯全灭AJMP CHECK1FLASH: CJNE A,#0CH,CHECK1;下面是0.8s的情况,响并显示号数并清R0,重新计SETB RINGMOV R0,#00HMOV R3,34H;取回号数MOV R5,#0BHMOV R4,#0BH;显示FF和号数AJMP CHECK1CHECK1: JNB P3.1,QUIT1ACALL DISPLAYAJMP HEREQUIT1: CLR RINGCLR OKAJMP START;=====显示程序=====DISPLAY:MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出,MOV A,R3MOVC A,@A+DPTRMOV P2,#0feHMOV P0,AACALL DELAY2MOV DPTR,#DAT2MOV A,R5MOVC A,@A+DPTRMOV P2,#0fdHMOV P0,AACALL DELAY2MOV A,R4MOVC A,@A+DPTRMOV P2,#0fbHMOV P0,AACALL DELAY2RETDAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H ;"灭","1","2","3","4","5","6","7","8","9","灭","F"DAT2:DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H;第一个为零,其他与上相同,因为十位如果为零显示熄灭;====加减时间延时(起到不会按下就加N个数)======DELAY1: MOV 35H,#08HLOOP0: ACALL DISPLAYDJNZ 35H,LOOP0RET;=====延时4236个机器周期(去抖动用到)=====DELAY: MOV 32H,#12HLOOP: MOV 33H,#0AFHLOOP1: DJNZ 33H,LOOP1DJNZ 32H,LOOPRET;=====延时4236个机器周期(显示用到)=====DELAY2: MOV 32H,#43HLOOP3: MOV 33H,#1EHMOV A,R7 ;每隔60~70个机器周期读一次P1口,全为1时为无效数据,继续读,有一个不为1时,转到正常抢答处理JNZ AAAA1 ;没读到有效数据时继续转到AAAA1LOOP2: DJNZ 33H,LOOP2DJNZ 32H,LOOP3RET;=====读抢答按键数据口程序=====;由于在读抢答数据口的时候,单片机首先进入倒计时程序,再调用显示程序,最后才检测按键口;然而在检测按键口时动态扫描要调用三次(4ms)延时程序.这样就会导致读数据口出现滞后,造成1号优先最高.8号最低.;故采用在延时子程序中加了读数据口程序.保证了灵敏度和可靠性AAAA1: MOV A,P1CJNE A,#0FFH,AA1 ;当不全为1时的数据为有效数据AA0: MOV 36H,A ;将有效数据送到36H暂存AJMP LOOP2AA1: DEC R7AJMP AA0;=====发声程序=====BARK: SETB RINGACALL DELAY1ACALL DELAY1CLR RING;按键发声RET;=====TO溢出中断(响铃程序)=====T0INT: MOV TH0,#0ECHMOV TL0,#0FFHJNB RING,OUT;CPL P3.6;RING标志位为1时候P3.6口不短取反使喇叭发出一定频率的声音OUT: RETI;=====T1溢出中断(计时程序)=====T1INT: MOV TH1,#3CHMOV TL1,#0B0HINC R0RETIEND极性电容10uF 1电阻3WTT10K 9电容20PF 3晶振12MHZ 1按钮15共阴4位7段数码管SMG SM410561K 1扬声器 1表1 器件选型方案的详细清单五、总结通过此次的课程设计,让我更进一步的巩固了单片机的各种知识。