基于AT89C51单片机的四路抢答器课程设计
at89c51抢答器课程设计
at89c51抢答器课程设计一、课程目标知识目标:1. 让学生掌握AT89C51单片机的基本原理和应用。
2. 使学生了解抢答器的工作原理和设计方法。
3. 帮助学生掌握抢答器程序编写的基本技巧。
技能目标:1. 培养学生动手操作和实践能力,能独立完成抢答器电路搭建和程序编写。
2. 培养学生运用单片机解决实际问题的能力,能够对抢答器进行调试和优化。
3. 培养学生团队协作和沟通能力,能够在小组合作中发挥各自专长。
情感态度价值观目标:1. 培养学生对电子技术的兴趣和热情,激发创新意识。
2. 培养学生严谨的科学态度和良好的学习习惯,提高自主学习能力。
3. 培养学生关注社会发展,认识到科技在现实生活中的应用价值。
课程性质:本课程为实践性课程,结合理论知识和实际操作,培养学生的动手能力和实际问题解决能力。
学生特点:学生具备一定的单片机知识基础,对电子技术感兴趣,喜欢动手实践。
教学要求:注重理论与实践相结合,强调学生的主体地位,鼓励学生积极参与,培养实际操作能力和创新思维。
在教学过程中,关注学生的学习进度和需求,及时调整教学策略,确保课程目标的实现。
通过课程学习,使学生能够将所学知识应用于实际项目中,提高综合素养。
二、教学内容1. 理论知识:- 单片机原理:AT89C51的基本结构、工作原理、引脚功能。
- 程序设计:C语言基础、单片机程序框架、中断处理、定时器应用。
- 电路设计:抢答器电路原理、元器件选型、电路图绘制。
2. 实践操作:- 电路搭建:指导学生搭建抢答器电路,熟悉元器件的使用。
- 程序编写:教授学生编写抢答器程序,掌握程序调试方法。
- 调试优化:引导学生对抢答器进行调试,优化程序和电路。
3. 教学大纲:- 第一周:单片机原理学习,熟悉AT89C51的结构和功能。
- 第二周:C语言基础学习,了解单片机程序设计方法。
- 第三周:抢答器电路设计,绘制电路图,选型元器件。
- 第四周:抢答器程序编写,学习中断处理和定时器应用。
基于AT89C51单片机抢答器
课程设计题目: 基于AT89C51单片机抢答器所修课程名称: 单片机原理与接口技术 修课程时间:2011 年 9 月至 2012 年 1 月 完成课程设计日期: 2011 年 12 月 评 阅 成 绩: 评阅意见:评阅教师签名: 年 月 日________工____学院___2009___级___ ___专业 姓名____ ___ 学号________………………………………(密)………………………………(封)………………………………(线)………………………………第一章前言第二章各模块的选择和论证2.1抢答器显示模块选择2.2 控制器选择2.3 键盘选择2.4 时钟频率电路的设计2.5 复位电路的设计2.6 报警电路第三章模块最终方案的设计3.1总体设计思路3.2 功能介绍3.3 抢答器的软件设计3.4 数码显示软件设计第五章总结5.1参考文献5.2心得体会第一章前言单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
随着微电子技术、电力电子技术、传感器技术、永磁材料技术、自动控制技术、微机应用技术的发展,使单片微型计算机也得到迅速的发展,单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域故又称为微控制器。
第二章各模块的选择和论证2.1抢答器显示模块选择在使用传统的数码管显示。
数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度高,称量快,精确可靠,操作简单。
数码显示是采用BCD编码显示数字,程序编译容易,资源占用较少。
显示功能与硬件关系极大,当硬件固定后,如何在不引起操作者误解的前提下提供尽可能丰富的信息,全靠软件来解决。
数码管采用的是4位一体七段共阳数码管,其中A~H段分别接到单片机的P0口,由单片机输出的P0口数据来决定段码值,位选码COM1, COM2,COM3,COM4分别接到单片机的P2.0,P2.1,P2.2 ,P2.,3,由单片机来决定当前该显示的是哪一位。
AT89C51单片机课程设计 抢答器设计
一.需求分析1.设计目的现如今电视节目日益丰富其中的竞赛环节也越来越多,其中智力抢答器是不可或缺的器材。
在本学期学习了单片机这门课之后,我们小组成员觉得可以试着自己来实现抢答器的功能,令它能准确、公正、直观地判断出第一抢答者,并通过抢答器的数码管显示和蜂鸣器报警指出抢答组别。
我们最终做出一种数字式抢答器的设计方案,通过Proteus设计完成,利用WAVE6000软件编辑程序,仿真验证,适用于多种竞赛场合。
2.设计要求设计一个用于智力竞赛的抢答器,其功能的实现是由单片机控制的,满足(1)能容许2-6组进行抢答。
(2)能显示抢答组号。
(3)各组记分,并能记分显示。
(4)比赛结束时,能发出报警声。
二.设计方案在设计中采用的单片机是AT89C51,它主要负责控制各个部分协调工作。
P1.0和P1.7由裁判控制,分别是抢答开始和停止键。
P1.1—P1.6是6组抢答的输入口,按下对应按钮即为抢答。
P0口为数码管的段选口,位选口用的是P2口的低4位,外部中断0。
外部中断1,P3.3用于控制有组答题完成后结束计时。
P3.4—P3.5分别实现了分数的加一和减一。
P3.6为蜂鸣器的控制口。
外部中断和内部中断并存,单片机有硬件复位端,只要输入持续4个机器周期的高电平即可实现复位。
外部还接有蜂鸣器用来发出报警音。
采用7SEG-MPX4-CC-BLUE显示,它是共阴极的由高电平点亮。
系统仿真用到了WAVE6000和Proteus软件,通过仿真可以显示所设计系统的功能,对于程序的调试等有很大的帮助。
三.硬件设计1.电路原理图图3.1 电路原理图2.总体设计电路图整个系统分为:外部振荡电路、复位电路、加减分电路及蜂鸣器报警电路、抢答电路及裁判控制开始停止电路、数码管显示电路几个部分本设计的核心是单片机AT89C51。
AT89C51 提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
基于单片机的4位抢答器设计论文
单片机课程设计报告项目名称基于单片机的抢答器设计摘要此次设计提出了用STC89C52单片机为核心控制元件,设计一个简易的抢答器,本方案以STC89C52单片机作为主控核心,发光二极管、数码管、蜂鸣器等构成四路抢答器,利用了单片机的按键复位电路、时钟电路、定时/中断等电路,设计的抢答器具有实时显示抢答选手的的特点,还有复位电路,使其再开始新的一轮的答题和比赛,同时还利用C语言编程,使其实现一些基本的功能。
本设计的系统实用性强、判断精确、操作简单、扩展功能强。
它的功能实现是比赛开始,主持人读完题之后按下总开关,此时数码管显示初始状态0,直到有一个选手抢答时,对应的会在数码管上显示出该选手的编号,同时发光二极管出现闪烁状态,蜂鸣器也会发出声音,以提示有人抢答本题,主持人按下复位键,示意可以答题。
关键字:STC89C52单片机;动态显示;中断;按键控制AbstractThis design use STC89C52as the core control element is presented to design a simple responder, this scheme is STC89C52 single chip microcomputer as control core, light-emitting diode, digital tube, buzzer and so on four road vies to answer first device, using the single chip microcomputer button reset circuit, clock circuit, timing/interrupt circuit, design of vies to answer first appliance has the characteristic of real-time display vies to answer first contestant's number, and reset circuit, to start a new round of the answer and, at the same time also use of C language programming, make it implements some basic functionality.The design of the system is practical, accurate judgment, simple operation, strong extended functionality. Its function realization is the match began, and the host to read the topic after press the main switch, the digital tube display initial condition 0, until there is a contestant vies to answer first, the corresponding in the contestant's serial number is shown on the digital tube, light-emitting diodes, flicker status at the same time, the buzzer will sound, to remind someone vies to answer first ontology, host press the reset button, the signal can be the answer.Keywords:STC89C52 microcomputer; Dynamic display; Interrupt; The key control目录摘要IAbstractII第1章绪论11.1 单片机抢答器的背景11.2 单片机抢答器的意义11.3 抢答器的应用1第2章系统硬件部分的设计22.1设计要求22.2 总体设计方案22.3 单元模块设计32.3.1 单片机简介32.3.2 最小系统的设计52.3.3 数码管显示电路62.3.4 按键模块设计6第3章系统的软件设计 (8)3.1 抢答器工作原理83.2 流程图83.3 KEIL软件简介9第4章系统的仿真与调试114.1 软件的仿真与调试114.2硬件的安装与调试114.2.1晶振电路的测试114.2.2复位电路的测试124.2.3显示电路的测试12总结13参考文献13附录1源程序代码14附录2 元件清单16附录3 仿真图17附录4 实物照片展示18致19第1章绪论1.1 单片机抢答器的背景二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。
基于51单片机的四路抢答器设计
摘要 (I)Abstract (II)引言 (1)1系统概述 (2)1.1抢答器需求分析 (2)1.2 抢答器工作过程 (2)2 单片机功能简介 (3)2.1 STC89C51的功能 (3)2.1.1 STC89C51特殊功能寄存器 (3)2.2 STC89c51单片机的内部结构 (5)3 系统硬件电路的设计 (6)3.1 系统总电路如图 (6)3.2 最小系统的设计 (7)3.2.1 电源的设计 (7)3.2.2 时钟频率电路的设计 (7)3.2.3 复位电路的设计 (9)3.3 显示电路的设计 (11)3.3.1 数码管简介 (12)3.3.2 CD4511七段译码器简介 (12)3.4 按键电路的设计 (14)3.5 蜂鸣器设计 (15)3.6元器件焊接及调试 (17)4 系统软件的设计 (17)4.1 延时子程序 (19)4.2 显示子程序 (19)4.3 倒计时加按键扫描子程序 (19)4.4主程序及分析 (20)5 结论 (23)参考文献 (24)致谢 (25)附录 1 (26)附录2 (27)Contents Abstract....................................................... I I Introduction. (1)1 System overview (2)1.1 The analysis of responder needs (2)1.2 Responder work process (2)2 MCU features (3)2.1 STC89C51 (3)2.1.1 Special function register (3)2.2 The internal structure of STC89c51 (5)3 The design of circuit system (6)3.1 The circuit system (6)3.2 The design of minimum system (7)3.2.1 The design of power supply (7)3.2.2 The design of clock circuit (7)3.2.3 The design of reset circuit (9)3.3 The design of display circuit (11)3.3.1 Digital tube profile (12)3.3.2 The introduction of CD4511 (13)3.4 The design of key circuit (15)3.5 The design of buzzer (15)3.6 Components and welding debuggin g (17)4 The design of software (19)4.1 Delay subroutine (19)4.2 Display program (19)4.3 The countdown and keyboard scanning subroutine (19)4.4 Main program and analysis (20)5 Conclusions (23)References (24)Acknowledgement (25)Appendix 1 (26)Appendix 2 (27)基于51单片机的四路抢答器设计作者:吴新春,指导教师:刘平(山东农业大学讲师)【摘要】本文设计以STC89C51单片机为核心的四路抢答器。
单片机四路抢答器的设计
1单片机简介1.1单片机的工作过程单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行的指令的过程,所谓指令就是把要求单片机执行的各种操作用的命令的形式写下来,这是在设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。
为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。
存储器由许多存储单元(最小的存储单位)组成,就像大楼房有许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼房的每个房间的被分配到了唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。
程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器PC(包含在CPU中),在开始执行程序时,给PC赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令,PC在中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。
1.2 AT89C51AT89C51单片机是采用高性能的静态80C51 设计由先进CMOS 工艺制造并带有非易失性Flash 程序存储器,全部支持12 时钟和6 时钟操作。
P89C51X2 和P89C52X2/54X2/58X2 分别包含128 字节和256 字节RAM 32 条I/O 口线3 个16 位定时/计数器6 输入4 优先级嵌套中断结构1 个串行I/O 口可用于多机通信I/O 扩展或全双工UART以及片内振荡器和时钟电路。
基于单片机的四路抢答器设计_课程设计论文
课程设计(论文)题目名称多路数字抢答器设计课程名称单片机原理及其应用2013年6月24日摘要近年来随着科技的飞速发展 单片机的应用正在不断深入 同时带动传统控制检测日新月异。
此次设计提出一种用AT89C51单片机作为核心控制元件 与电阻、液晶显示屏、蜂鸣器等构成硬件操作 再利用C语言编程 来控制抢答器的功能实现。
本论文对抢答器的背景与现状、硬件设计、软件设计及其仿真都做了详细的介绍 使我们不仅对抢答器的原理及设计有了深入的了解 也对单片机的设计研发过程有了更加深刻的体会。
本次设计的系统主要采用单片机控制、采用手动抢答的方式。
有人抢答后,系统自动封锁其他选手的抢答按钮,使其不再抢答,从而实现抢答功能。
该系统还增加了抢答倒计时功能,可以调整。
通过自主的设计、编程和调试出一个简单的四路抢答并在液晶屏显示抢答成功者号码;熟悉C语言编程;了解单片机仿真系统的使用方法,达到提高综合运用相关知识的能力;进一步熟悉和掌握Proteus7的使用方法;掌握单片机系统设计全部过程的目的。
关键字:抢答单片机液晶屏显示目录第1章前言 (1)第2章方案设计 (2)第3章硬件电路的工作原理 (3)3.1抢答器的电路图 (3)3.2液晶屏显示电路 (3)3.3按键控制电路 (3)第4章软件设计 (5)4.1软件编程 (5)4.2系统调试和结果分析 (6)总结 (10)参考文献 (11)附录1 源程序 (12)第1章前言电子技术和微型计算机的迅速发展,促进微型计算机测量和控制技术的迅速发展和广泛应用,单片机(单片微型计算机)的应用已经渗透到国民经济的各个部门和领域,它起到了越来越重要的作用。
单片微型计算机就是将中央处理单元、存储器、定时/计数器和多种接口都集成到一块集成电路芯片上的微型计算机。
因此一块芯片就构成了一台计算机。
它已成为工业控制领域、智能仪器仪表、尖端武器、日常生活中最广泛使用的计算机。
抢答器一般是由很多电路组成的,线路复杂,可靠性不高,功能也比较简单,特别是当抢答路数很多时,实现起来就更为困难。
基于MCS51单片机的四路抢答器课件
程序流程图如下
电路原理图及PCB制版图
四路智力抢答器电路原理图
四路智力抢答器PCB模块
程序设计
▪ 抢答器工作过程如下
▪ · 首先主持人选定倒计时时间,单片机扫描U3以 获取此信息。如果没有人为设置,默认为10s。
▪ · 在按下抢答按键之前,3个数码管全部显示“0”。
▪ · 按下抢答按键之后,蜂鸣器响一声,单片机开 始倒计时,数码管U6和U7显示倒计时时间,数 码管U8显示“0”。
▪ void send_data(uchar);
▪ uchar set_time(void); 时时间
▪ bit control_key(void); 是否按键
▪ uchar get_key_num(void); 个参赛者按键
▪ void display_time(void); 时剩余时间
//初始化MAX7219 //向控制寄存器写数
▪ 完成上述功能的电路包括时间设定开关、声光显 示、按键控制以及按键锁存等部分
各模块功能
▪ 单片机部分 ▪ 时间设定模块 ▪ 按键模块 ▪ 数码管显示模块 ▪ 蜂鸣器模块
单片机部分
▪ 通过读取P3.7~P3.3 的状态决定倒计时时 间;通过读取P1.3~ P1.0的状态读取按键 情况;通过P2.4~ P2.2控制显示模块以 显示按键者的号码和 倒计时所剩时间;通 过P0.1控制蜂鸣器
key_flg=1;
//设置有人按键答题标志
TR0=0;
//停止T0运行
}
else
//否则循环检测
{
display_time();
//并显示剩余时间
continue;
}
}
if(key_flg==1)
基于89C51单片机的数字抢答器课程设计
目录第1节 AT89C51单片机系统说明 (3)1.1 89系列单片机的概况 (3)1.2 AT89C51单片机的内部结构 (5)1.3 各类型单片机的比较分析 (6)1.4 AT89C51单片机性能 (6)第2节数字抢答器总体方案的设计 (8)2.1 系统硬件设计 (8)2.1.1 系统原理图 (8)2.1.2 时钟频率电路的设计 (9)2.1.3 复位电路的设计 (10)2.1.4 显示电路的设计 (10)2.1.5 键盘扫描电路的设计 (11)2.1.6 发声 (11)2.1.7 系统复位 (11)第3节系统软件设计 (13)3.1 主程序系统结构图 (13)3.2 程序流程图 (14)3.3 系统程序 (15)第4节结束语 (25)参考文献 (26)基于单片机的数字抢答器系统第1节AT89C51单片机系统说明AT89C51单片机内部包含了作为微型计算机所必须的基本功能部件,各功能部件相互独立的集成在同一块芯片上。
在此主要介绍AT89C51单片机的系统结构及其功能。
1.1 AT89C2051单片机的概况AT89C51单片机是ATMAL公司89系列单片机的一种8位Flash单片机。
它最大特点是片内含有Flash存储器,用途十分广泛,特别是在生产便携式商品,手提式仪器等方面,有着十分广泛的应用。
(1) 89系列单片机的特点:89系列单片机是以8031为内核的产品,它与51系列单片机是兼容的。
89系列单片机具有以下特点:a) 内部含有Flash存储器,使用户在开发过程中十分容易修改程序缩短系统的开发周期。
可以重复多次编程,可根据需要对内部程序进行更新或升级。
b) 89系列单片机的引脚和AT80C51引脚座兼容,用89系列单片机可以代替同档次的AT80C51单片机,不需要对外围电路进行改动。
表1-1 AT89C51特殊功能寄存器列表注:带*号的特殊功能寄存器都是可以位寻址的寄存器c) 89系列单片机采用静态时钟方式,可以节省电能,降低便携式设备的功耗。
基于单片机AT89C51控制的抢答器_课题设计报告
宁波技师学院课程设计报告论文题目抢答器摘要:在日常生活中,我们可以在电视,或者现实生活活动现场可以看到在答题或者游戏中,他总能第一时间测到谁是第一个,让我们的世界少了那些不必要的争议,那是什么,那就是抢答器。
通过一次又一次科学的进步,单片机在发展,各种功能运用到现实生活的各种领域让我们生活更加的接近理想话以及通过简单的操作完成手工无法完成或者很难做到的事情,例如家电,通信,商业,工业,航空,航天,军事以及汽车方面。
当然这次我们做的是其中的一种那就是抢答器,它具有很高的安全性、可靠性,准确性,应用日益广泛。
随着人们经济生活的发展以及生活条件的上去,大家都希望生活在一个无争议的日子里,那么科学就努力的去完成它,这次的抢答器就是一个很好的反馈以及显示更加直观的展现在大家的眼前。
基于以上思路,本次设计使用 ATMEL公司的 AT89C51 实现一基于单片机的抢答器设计,其主要具有如下功能:(1)抢答时间调试,限时时间调试这两个功能都是要在最开始时调试。
可以改变调试抢答时间和限时时间。
(2)声光报警系统。
抢答时间倒计时时会报警闪烁,以及蜂鸣器报警还有时间提示。
(3)锁定功能。
为了很好的在第一时间锁定第一位,抢答器做了很好的反馈功能,为此能够更加精确的锁定反馈第一位抢答器是由一个AT89C51、输出八段显示电路。
另外系统还有 LED 提示灯,报警蜂鸣器等。
抢答器的功能在于反馈以及最快的时间做出选择:(1)限时时间调试·抢答时间调试功能:这是一个十分人性化的设计,他可以在不同的场合用不同的时间来限定抢答以及限时时间的调试。
(2)抢答锁定功能:当按下抢答键时,抢答器会判断第一个抢答的以及显示抢答人的编号。
(3)报警系统:当抢答倒计时到5秒时开始二极管开始闪烁报警蜂鸣器开始鸣叫。
主要的设计实施过程:首先,选用 ATMEL公司的单片机 AT89C51,以及选购其他电子元器件。
第二步,使用Protel设计硬件电路原理图,并设计 PCB图完成人工布线。
四路抢答器单片机课程设计
四路抢答器单片机课程设计渝州科技职业学院单片机四路抢答器课程设计院系:电子信息工程专业班级: 11级电管本2班学生姓名:刘学飞学号: 1102120205指导教师姓名:何健指导教师职称:讲师目录一、........................ 方案设计41.1、设计要求 (4)1.2、总体法案设计 (5)二、...................... 硬件电路设计62.1、元器件简介 (6)2.2、系统总电路图 (7)2.3、单元电路设计 (7)2.3.1、独立式按键电路 (8)2.3.2时钟电路设计 (8)2.3.3复位电路设计 (9)2.3.4指示灯电路设计 (9)三、........................ 软件实际103.1系统程序设计 (10)3.2主程序流程图 (10)3.3程序清单 (11)四、....................... 制作以调试16五、................... 抢答器的使用方法16六、....................... 心得与体会17一、方案设计1.1、设计要求(1)、总共6个按键,两个供主持人用于“开始抢答”和“复位”操作,四个供四个选手用作“抢答”操作。
(2)、用1个发光二极管用作开始抢答的指示灯,用4个发光二极管分别显示4个选手的抢答状态。
(3)、开始抢答后,哪个选手抢答键最先按下,该选手的抢答指示灯点亮,表示抢答成功,此时其他选手再按键为无效,抢答成功后开始3秒计时,到时指示灯变为闪烁,以提示选手选手抢答后必须3秒内回答问题,否则视为犯规。
(4)、开始抢答前,若有选手按下抢答键,则其对应的指示灯变为闪烁,表示该选手犯规,此时有选手按键都将无效。
(5)、出现犯规后,主持人可以利用“复位键”重新开始。
1.2、总体法案设计方案:依据课题要求,基于AT89C51单片机制作的抢答器,其最大的好处就是处理快,准确性高、可靠性好、控制功能强。
基于51单片机的4人抢答器课程设计
基于51单片机的4人抢答器课程设计基于51单片机的4人抢答器设计设计要求:以单片机为核心,设计一个4位竞赛抢答器:同时供4名选手或4个代表队比赛,分别用4个按钮S0~S3表示。
设置一个系统清除和抢答控制开关S,开关由主持人控制。
抢答器具有锁存与显示功能。
即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。
抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。
当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间为0.5s左右。
参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。
如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。
工作原理:通过键盘改变抢答的时间,原理与闹钟时间的设定相同,将定时时间的变量置为全局变量后,通过键盘扫描程序使每按下一次按键,时间加1(超过30时置0)。
同时单片机不断进行按键扫描,当参赛选手的按键按下时,用于产生时钟信号的定时计数器停止计数,同时将选手编号(按键号)和抢答时间分别显示在LED上。
#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar num; //定义中断变量,num计满20表示1秒时间到uchar num1; //十秒倒计时显示初始值uchar flag1,flag2; //清零键及开始键按下标志位uchar flag3,flag4=0; //定义键盘按下标志位uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //数码管编码sbit dula=P1^6; //定义段选端口sbit wela=P1^7; //定义位选端口sbit sp=P3^0; //定义蜂鸣器端口sbit clear=P1^0; //定义清零键sbit start=P1^1; //开始键sbit key1=P1^2;sbit key2=P1^3;sbit key3=P1^4;sbit key4=P1^5; //key1到key4为选手按键void delay(uint z) //延时函数{uint i,j;for(i=z;i>0;i--)for(j=110;j>0;j--);}void beep() //定义蜂鸣器函数{sp=0;delay(500);sp=1;}void display(uint a) //选手编号显示函数{}void dis30s() //十秒倒计时显示函数{uchar shi,ge;shi=num1/30;ge=num1%30;wela=1;P2=0xff;wela=0;dula=1;P2=table[shi];dula=0;P2=0xff;wela=1;P2=0xfe;wela=0;delay(5);wela=1;P2=0xff;wela=0;P2=table[ge];dula=0;P2=0xff;wela=1;P2=0xfd;wela=0;delay(5);}void player() //选手按键检测函数{if(key1==0&&flag4==0){delay(10);if(key1==0&&flag4==0){display(1);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key1);}}if(key2==0&&flag4==0) {delay(10);if(key2==0&&flag4==0) {display(2);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key2);}}if(key3==0&&flag4==0) {delay(10);if(key3==0&&flag4==0) {display(3);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key3);}}if(key4==0&&flag4==0){delay(10);if(key4==0&&flag4==0){display(4);TR0=0;flag1=flag2=0;flag4=1;beep();while(!key4);}}}void keyscan() //检测按键{if(clear==0&&flag2!=1) //判断清零键,判断语句的作用是按下开始键清零键失效{delay(10);if(clear==0&&flag2!=1){while(!clear); //等待按键释放flag1=0;flag2=0;flag3=0;flag4=0;num=0;num1=10;clr(); //清零flag1=1; //按下清零键标志位}}if(flag1==1) //如果按下清零键{if(start==0&&flag3==0) //判断开始键,判断语句的作用是按下开始键后开始键失效{delay(10);if(start==0&&flag3==0){flag2=1;flag3=1;while(!start);}}}if(flag2==1) //按下开始键{TR0=1; //启动定时器0dis30s();player();}}void main(){TMOD=0x01; //设置定时器0工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1; //开总中断ET0=1; //开定时器0中断while(1) //一直检测按键{keyscan();}}void T0_ser() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;num++;if(num==20){num=0;num1--;}if(num1==0){TR0=0;flag1=0;flag2=0;num=0;num1=30;clr();beep();}}。
4路at89c51抢答器的设计c语言
4路AT89C51抢答器的设计(C语言)概述在各种答题活动中,抢答器是作为重要装备之一,用于检测谁首先按下按钮进行答题。
本文将介绍如何使用AT89C51单片机设计一款4路抢答器,并使用C语言进行编程。
设计原理抢答器的设计原理主要基于按键输入和信号处理。
当有参与者按下按钮进行抢答时,单片机将检测到该按钮按下的信号,并进行相应的处理,包括显示抢答者编号和记录答题结果等。
硬件连接以下是4路抢答器的硬件连接示意图:+-----------------+| || AT89C51 || |+-----+-----+-----+| |+----+--+ || Button1 +--++----+--+|+----+--+| Button2 |+----+--+|+----+--+| Button3 |+----+--+|+----+--+| Button4 |+----+--+程序设计初始化引脚和变量首先,需要初始化所使用的引脚和变量。
AT89C51的IO口用于连接按钮,需要将其配置为输入模式。
同时,定义一个变量用于记录当前的抢答者编号。
主循环主循环会不断扫描每个按钮的状态,当检测到有按钮按下时,记录抢答者编号并进行相应的处理。
按钮扫描函数按钮扫描函数用于检测按钮的状态。
当检测到按钮按下时,返回对应的编号。
在编写按钮扫描函数时,可以使用延时函数来确保稳定的检测结果。
显示抢答者编号函数显示抢答者编号函数用于将抢答者编号显示在LED灯或LCD屏幕上。
抢答者编号可以根据具体需求进行显示方式的设计,比如使用不同颜色的LED灯表示不同编号的抢答者。
记录答题结果函数记录答题结果函数用于记录每个抢答者的答题结果。
可以使用数组来存储每个抢答者的成绩或者答题情况。
中断处理在抢答器设计中,中断处理函数起着重要作用。
当检测到有按钮按下时,通过中断处理函数及时响应,并进行相应的处理。
总结本文介绍了使用AT89C51单片机设计4路抢答器的方法,并使用C语言进行编程。
四路抢答器课程设计
四路抢答器课程设计一、引言四路抢答器是一种常用于教育培训领域的教学工具,通过快速抢答的方式提高学生的参与度和专注力。
本次课程设计旨在介绍四路抢答器的原理、使用方法以及在教学中的应用。
二、四路抢答器的原理四路抢答器由主机和多个手持抢答器组成,主机负责控制整个系统,手持抢答器用于学生进行抢答。
具体原理如下:1.主机通过无线信号与手持抢答器进行通信,实现问题发送和结果显示。
2.主机将问题发送给手持抢答器,并启动计时器。
3.学生按下手持抢答器上的按钮进行抢答。
4.主机根据按钮按下的先后顺序判断正确回答者,并在显示屏上显示结果。
三、四路抢答器的使用方法使用四路抢答器进行课堂教学需要以下步骤:1.准备工作:确保主机和手持抢答器电量充足,并保证无线信号通畅。
2.设置问题:在主机上输入问题并设置倒计时时间。
3.发送问题:按下发送按钮,主机将问题发送给手持抢答器。
4.学生抢答:学生按下手持抢答器上的按钮进行抢答。
5.结果显示:主机根据按钮按下的先后顺序判断正确回答者,并在显示屏上显示结果。
6.统计分析:通过主机记录的数据进行统计分析,了解学生的回答情况。
四、四路抢答器在教学中的应用四路抢答器可以广泛应用于各个学科的教学中,以下是几个典型的应用场景:1. 提问环节在课堂上,教师可以使用四路抢答器来进行提问。
通过快速抢答的方式,激发学生积极性和参与度。
教师可以根据学生回答问题的情况及时调整教学内容和方法。
2. 小组竞赛将学生分成若干小组,每个小组配备一个手持抢答器。
教师出题后,小组内成员共同商讨并使用手持抢答器进行抢答。
正确回答者可以为自己小组赚取分数,从而增加竞争和合作氛围。
3. 课堂测验在课堂结束前,教师可以进行一次小型的课堂测验。
将几道题目发送给学生,学生使用手持抢答器进行抢答。
通过测验结果,教师可以了解学生对知识掌握的情况,并及时调整教学内容。
4. 反馈评估四路抢答器还可以用于学生对教师提出问题的反馈评估。
教师提出问题后,学生使用手持抢答器进行回答,并给出自己对问题的评价。
基于单片机的四路抢答器设计
简易四路抢答器设计目录摘要 (1)一、设计任务与要求 (2)二、方案设计与论证 (2)三、硬件电路设计 (2)1、抢答器的设计总电路 (2)四、软件设计 (3)1、系统主程序流程图 (3)五、器件选型方案 (4)六、调试 (5)1、上电 (5)2、开始 (5)3、仿真 (5)七、体会与心得 (6)八、参考文献 (7)附录主程序清单 (8)单片机四路抢答器设计摘要:本设计是以四路抢答为基本理念。
考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器中断和外部中断,将软、硬件有机地结合起来,使得系统能够正确地进行工作,同时使数码管能够正确显示组别。
用开关做键盘输入,扬声器发生提示。
同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;可以显示是哪位选手有效抢答,正确按键后有音乐提示;当有一组抢答成功后其他组抢答无效。
关键字:AT89C51单片机;四路抢答器;定时/计数器中断一、设计任务与要求1、抢答器同时供4名选手或4个代表队比赛,分别用4个按钮S0 ~ S3表示。
2、设置一个复位按钮和抢答控制开关S,该开关由主持人控制。
3、抢答器具有锁存与显示功能。
即选手按动按钮,锁存相应的编号,并在LED数码管上显示,同时扬声器发出报警声响提示。
选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统复位为止。
二、方案设计与论证方案:该系统采用单片机AT89C51作为控制核心,该系统可以完成运算控制、信号识别以及显示功能的实现。
由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。
整个系统具有极其灵活的可编程性,能方便地对系统进行功能的扩张和更改。
MCS-51单片机特点如下:1、可靠性好:单片机按照工业控制要求设计,抵抗工业噪声干扰优于一般的CPU,程序指令和数据都可以写在ROM里,许多信号通道都在同一芯片,因此可靠性高,易扩充。
基于-AT89C51单片机的四路抢答器课程设计汇本
河北建筑工程学院课程设计计算说明书题目名称:单片机原理及应用课程设计院系:机械工程学院专业:机械电子工程班级:机电112学号: 2011322214学生姓名:孙宏财指导教师:张东辉职称:讲师2014年 7 月 3 日目录前言 (2)一、硬件系统设计 (3)1、硬件设计思路及系统框图 (3)2、系统分析 (3)3、抢答器总电路图 (4)二、软件系统设计 (5)1、系统功能分析及程序流程图 (5)2、软件系统程序的编制 (6)3、运用Keil软件进行程序的调试 (9)三、基于P ROTEUS和K EIL的软硬件联合仿真 (10)1、上电初始状态 (10)2、开始按钮按的状态 (10)3、有人抢答的状态 (11)四、心得与体会 (12)五、参考文献 (12)基于AT89C51单片机的抢答器设计前言单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个范畴。
1、在智能化仪表上的应用。
2、在工业控制中的应用。
3、在家电中的应用。
4、在计算机网络和通信领域中的应用。
5、单片机在医疗设备领域中的应用。
目前世界上单片机生产商很多,如INTEL、Motorola、NEC、AMD等公司其主流产品有几十个系列,几百个品种。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。
尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。
同时集成诸如通讯接口、定时器,实时时钟等外围设备。
而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
89C51单片机的抢答器课程设计
摘要随着科学技术的发展和普及,各种各样的竞赛。
越来越多,其中抢答器的作用也就显而易见.。
目前很多抢答器基本上采用小规模数字集成电路设计,使用起来不够理想。
因此设计一更易于使用和区分度高的抢答器成了非常迫切的任务。
现在单片机已进入各个领域。
以其功耗小、智能化而著称,所以若利用单片机来设计抢答器,便使以上问题得以解决.。
此次设计提出了用AT89C51单片机为核心控制元件,设计一个简易的抢答器本设计的系统实用性强、判断精确、操作简单、扩展功能强。
它的功能实现是比赛开始,主持人读完题之后按下总开关,即计时开始,此时数码管开始进行1s的加计时,直到有一个选手抢答时,对应的会在数码管上显示出该选手的编号和抢答所用的时间,同时该选手对应的发光二极管会发出相应的光,蜂鸣器也会发出声音,以提示有人抢答本题,如果在规定的60s时间内没有做出抢答,则此题作废,即开始重新一轮的抢答。
关键字:STC89C52单片机、动态显示、中断、按键控制目录第1章绪论1.1 单片机抢答器意义 (3)1.2 单片机抢答器的应用 (3)第2章整体的设计方案2.1 单片机的选择 (4)2.2 单片机的基本结构 (4)2.3 单片机的存储配置 (6)第3章硬件设计3.1 单片机的最小系统说明 (8)3.2 数码管显示的电路 (8)3.3 按键控制电路 (9)第4章软件设计4.1 抢答器系统软件设计的流程 (10)4.2 主程序 (12)4.3 中断程序 (15)第5章系统的仿真 (18)第6章心得体会 (19)第7章参考文献 (20)第1章绪论1.1 单片机抢答器的意义本系统采用单片机作为整个控制核心。
控制系统的四个模块为:显示模块、存储模块、语音模块、抢答开关模块。
该系统通过开关电路四个按键输入抢答信号,利用一个数码管来完成显示功能,用按键来让选手进行抢答,在数码管上显示哪一组先答题的,从而实现整个抢答过程。
本文主要介绍了单片机抢答器设计及工作原理,以及它的实际用途。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河北建筑工程学院课程设计计算说明书题目名称:单片机原理及应用课程设计院系:机械工程学院专业:机械电子工程班级:机电112学号: **********学生姓名:***指导教师:***职称:讲师2014年 7 月 3 日目录前言 (2)一、硬件系统设计 (3)1、硬件设计思路及系统框图 (3)2、系统分析 (3)3、抢答器总电路图 (4)二、软件系统设计 (5)1、系统功能分析及程序流程图 (5)2、软件系统程序的编制 (6)3、运用Keil软件进行程序的调试 (9)三、基于P ROTEUS和K EIL的软硬件联合仿真 (10)1、上电初始状态 (10)2、开始按钮按的状态 (10)3、有人抢答的状态 (11)四、心得与体会 (12)五、参考文献 (12)基于AT89C51单片机的抢答器设计前言单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个范畴。
1、在智能化仪表上的应用。
2、在工业控制中的应用。
3、在家电中的应用。
4、在计算机网络和通信领域中的应用。
5、单片机在医疗设备领域中的应用。
目前世界上单片机生产商很多,如INTEL、Motorola、NEC、AMD等公司其主流产品有几十个系列,几百个品种。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机是指一个集成在一块芯片上的完整计算机系统。
尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。
同时集成诸如通讯接口、定时器,实时时钟等外围设备。
而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用单片机的应用介绍一、硬件系统设计1、硬件设计思路及系统框图该系统采用AT89C51单片机作为控制核心,可以完成运算控制、信号识别、结果锁存、显示输出以及声音提示等功能。
由于用了单片机,使其技术比较成熟,应用起来方便、简单并且单片机周围的辅助电路也比较少,便于控制和实现。
系统具有灵活的可编程性,能方便地对系统进行功能的扩展和更改。
根据课程设计的任务要求,初步设计硬件系统框图如图1所示:2、系统分析系统由AT89C51单片机作为主体,系统的清零由手动按键完成,按键使RST 脚获得高电平信号,系统复位。
LED数码管、发光二级管指示灯及蜂鸣器分别由单片机的P0口和P1口驱动。
开始按钮和各组选手按键接P3口,按下按键时向系统输入信号,由系统软件完成控制。
根据各部分电路组成,统计出该系统所需元器件如表1所示:表1 器材选型方案3、抢答器总电路图根据上述条件,设计出抢答器总电路图如图1所示。
其工作原理为:接通电源后,抢答器处于上电状态,主持人按下“开始”按钮,蓝色的抢答提示灯亮起,宣布“开始”抢答,选手抢答,抢答完成后由系统判断组别、锁存编号、显示编号、扬声器和红色指示灯提示,其他按钮按键无效,直到主持人按下复位键。
下一轮抢答开始前主持人需进行复位操作,然后才能开始继续以上步骤。
二、软件系统设计1、系统功能分析及程序流程图主持人与4个(组)参赛者共计用6个按键,分别为主持人控制的抢答开始按键、清零按键及各组选手的抢答按键,抢答开始按键按下后EA由软件置位,CPU 开中断,此后各组才可以抢答,每当有人按下抢答按钮时再将EA清零,关闭中断总允许,使其他队不能抢答,直到主持人将系统复位,同时通过设计程序分别完成锁存、显示、亮灯和发声等功能。
系统的复位由按键手动完成。
程序流程图如图2所示:2、软件系统程序的编制根据流程图,运用汇编语言编制抢答器程序如下:ORG 0000HLJMP MAINORG 0003HLJMP GROUP1ORG 000BHLJMP GROUP3ORG 0013HLJMP GROUP2ORG 001BHLJMP GROUP4ORG 0030HMAIN:MOV P0,#0FFH ;设置上电开始时无数码显示CLR P1.5 ;P1.5清零,蜂鸣器静默START:MOV TMOD,#66HMOV TH0,#0FFHMOV TL0,#0FFHMOV TH1,#0FFHMOV TL1,#0FFHSETB ET0SETB ET1SETB TR0SETB TR1SETB EX0SETB IT0SETB EX1SETB IT1NEXT1:JNB P3.0,NEXT2 ;等待主持人按下“开始”键,跳转至NEXT2 SJMP NEXT1NEXT2:SETB EA ;中断总允许开CLR P1.0 ;P1.0清零,蓝色的“抢答开始指示灯”点亮SETB P1.1SETB P1.2SETB P1.3SETB P1.4MOV A,#00H ;将0传入A,等待显示ACALL SQR ;调用SQR数码管显示子程序,数码管显示0SJMP START ;跳回START,循环扫描直到有人抢答GROUP1:CLR EA ;一号抢答,之后中断总允许关闭,使其他选手操作无效CLR P1.1 ;一号指示灯亮SETB P1.0SETB P1.2SETB P1.3SETB P1.4MOV A,#01H ;数字1送入AMOV R2,A ;将抢答选手编号锁存入寄存器R2ACALL SQR ;数码管显示1ACALL SOUND ;调用扬声器发声子程序SJMP $ ;保持状态,直到系统复位RETIGROUP2:CLR EA ;二号选手CLR P1.2SETB P1.0SETB P1.1SETB P1.3SETB P1.4MOV A,#02HMOV R2,AACALL SQRACALL SOUNDSJMP $RETIGROUP3:CLR EA ;三号选手CLR P1.3SETB P1.0SETB P1.1SETB P1.2SETB P1.4MOV A,#03HMOV R2,AACALL SQRACALL SOUNDMOV TH0,#0FFHMOV TL0,#0FFHLJMP $RETIGROUP4:CLR EA ;四号选手CLR P1.4SETB P1.0SETB P1.1SETB P1.2SETB P1.3MOV A,#04HMOV R2,AACALL SQRACALL SOUNDMOV TH1,#0FFHMOV TL1,#0FFHLJMP $RETISQR:MOV DPTR,#TABLE ;数码管显示字码子程序MOVC A,@A+DPTRMOV P0,ARETSOUND: MOV R4,#25 ;扬声器发声子程序LOOP1:MOV R3,#25LOOP2:SETB P1.5ACALL DELAY1CPL P1.5ACALL DELAY2DJNZ R3,LOOP2DJNZ R4,LOOP1RETDELAY1:MOV R7,#10H ;扬声器发声的延时程序D1:MOV R6,#10HD2:DJNZ R6,D2DJNZ R7,D1RETDELAY2:MOV R7,#10HD4:MOV R6,#20HD3:DJNZ R6,D3DJNZ R7,D4RETTABLE:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;数码显示的查表程序END3、运用Keil软件进行程序的调试将以上所编程序输入Keil软件中,创建工程,并选择设备为Atmel目录下的AT89C51单片机,调试无误后建造出所需目标,其结果如图4所示:图4 程序调试结果三、基于Proteus和Keil的软硬件联合仿真运用两软件分别对系统上电初始状态、开始按钮按下后的状态和有人抢答的状态进行仿真,仿真结果如下分以下三种情况讨论。
1、上电初始状态接通电源,数码管无数码显示。
如图5。
图5 上电初始状态2、开始按钮按的状态按下开始按钮,数码管显示0,蓝色的“抢答开始指示灯亮”起。
如图6。
图6 开始按钮按下3、有人抢答的状态开始抢答后,当4号选手优先按下抢答按钮,数码管显示4,并亮起红色的四号选手抢答成功指示灯,扬声器发出提示音。
此时其他选手抢答无效,直到主持人将系统清零。
如图7。
图7 有人抢答时四、心得与体会通过一周紧张的设计,最后终于完成了我的设计任务——基于AT89C51的抢答器。
通过本次课程设计的学习,我深深地体会到设计课的重要性和目的性所在。
本次设计课不仅仅培养了我们实际操作能力,也培养了我们灵活运用课本知识,理论联系实际,独立自主的进行设计的能力。
它不仅仅是一个学习新知识、新方法的好机会,同时也是对我所学知识的一次综合的检验和复习,使我明白了自己的缺陷所在,从而查漏补缺,学以致用。
这次设计和设计中遇到的问题,也让我积累了一定的经验,尤其是在Proteus 和Keil这两款软件的使用方面有了更深的理解。
此次的课程设计树立了对自己工作能力的信心,相信会对今后的学习工作生活都有非常重要的影响,而且大大的提高了动手能力,使我充分的体会到了创造过程中的探索的艰难和成功的喜悦。
虽然这次做出的作品还存在很多需要改进的地方,但是在整个设计过程中所学习到的东西是这次实训所得到的最大收获跟财富,使我终身受益。
五、参考文献[1]《单片机原理及应用》薛峰.朱晓骏编著北京:北京理工大学出版社,2011,9。