单片机课程设计[1]
- 格式:doc
- 大小:262.00 KB
- 文档页数:14
单片机简单的课程设计一、课程目标知识目标:1. 让学生理解单片机的基本组成、工作原理和功能特点;2. 掌握单片机编程的基本语法和指令;3. 学会使用单片机进行简单的输入输出控制。
技能目标:1. 能够运用单片机设计简单的电路系统;2. 能够分析并解决单片机应用中的问题;3. 能够运用编程软件编写简单的单片机程序并进行调试。
情感态度价值观目标:1. 培养学生对单片机技术的兴趣,激发学习热情;2. 培养学生的团队协作精神,学会共同解决问题;3. 增强学生的创新意识和实践能力,敢于尝试新方法,勇于克服困难。
课程性质:本课程为实践性较强的课程,旨在让学生在理论学习的基础上,通过动手实践,提高对单片机技术的理解和应用能力。
学生特点:学生处于初中或高中阶段,具备一定的物理和数学基础,对电子技术和编程有一定了解,但实践经验不足。
教学要求:结合学生特点和课程性质,注重理论与实践相结合,强调动手实践,引导学生主动探究,培养学生的创新精神和实践能力。
通过本课程的学习,使学生能够达到上述课程目标,并具备一定的单片机应用能力。
后续教学设计和评估将围绕这些具体的学习成果展开。
二、教学内容1. 单片机基础知识:介绍单片机的概念、发展历程、基本组成(CPU、存储器、输入输出接口等)和工作原理。
相关教材章节:第一章 单片机概述、第二章 单片机硬件结构。
2. 单片机编程基础:讲解单片机编程语言(如C语言)、基本语法、常用指令和编程技巧。
相关教材章节:第三章 单片机编程语言、第四章 基本指令与编程。
3. 单片机输入输出控制:学习单片机I/O端口的应用,掌握简单输入输出控制电路的设计与实现。
相关教材章节:第五章 输入输出接口、第六章 I/O控制程序设计。
4. 单片机实践项目:设计并实现简单的单片机应用项目,如流水灯、温度控制器等。
相关教材章节:第七章 单片机应用实例。
5. 调试与优化:学习使用仿真器、编程器等工具进行程序调试和优化。
相关教材章节:第八章 程序调试与优化。
简单的单片机课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,包括其硬件组成和软件编程基础。
2. 使学生了解并能够描述单片机在现实生活中的应用实例。
3. 让学生掌握单片机编程中的基础指令,能够读懂简单的程序代码。
技能目标:1. 培养学生动手操作单片机的能力,能够完成基本的电路连接和程序下载。
2. 使学生能够运用所学知识,编写简单的控制程序,实现对单片机外围设备的控制。
3. 培养学生团队协作和问题解决能力,通过课程设计项目,提高实际操作和创新能力。
情感态度价值观目标:1. 激发学生对电子科技的兴趣,培养其探索精神和创新意识。
2. 培养学生严谨、细心的学习态度,使其在实践过程中养成良好的操作习惯。
3. 增强学生的环保意识,使其在设计和操作过程中注重节能环保。
分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能够独立完成单片机的基本电路连接,并下载程序实现基础功能。
2. 学生能够编写简单的程序代码,实现对单片机外围设备的控制。
3. 学生通过小组合作,完成一个具有实际应用价值的单片机课程设计项目,并进行展示和分享。
二、教学内容本课程教学内容依据课程目标,紧密关联教材,主要包括以下几部分:1. 单片机基础知识:介绍单片机的硬件结构、工作原理以及常用型号,涵盖教材第一章内容。
2. 单片机编程基础:讲解单片机编程的基本指令、语法和编程技巧,对应教材第二章。
3. 单片机外围设备控制:学习如何通过编程实现对单片机外围设备的控制,如LED灯、蜂鸣器等,涉及教材第三章。
4. 课程设计项目实践:分组进行具有实际应用价值的单片机课程设计项目,结合教材第四章实例,锻炼学生动手能力和团队协作能力。
教学大纲安排如下:第一周:单片机基础知识学习,完成教材第一章的学习。
第二周:单片机编程基础,学习教材第二章内容,并进行简单的编程练习。
第三周:单片机外围设备控制,学习教材第三章内容,进行实际操作练习。
单片机综合实验课程设计一、课程目标知识目标:1. 学生能理解单片机的基本工作原理,掌握其内部结构和功能模块;2. 学生能掌握单片机编程的基本语法和常用指令,具备编写简单程序的能力;3. 学生能了解并运用单片机接口技术,实现与外围设备的通信和控制。
技能目标:1. 学生能运用所学知识,设计并实现简单的单片机控制系统;2. 学生能熟练使用编程软件和开发工具,进行单片机的程序编写、调试与优化;3. 学生能通过实验操作,培养动手能力和团队协作能力,提高问题解决能力。
情感态度价值观目标:1. 学生通过课程学习,增强对电子技术和编程的兴趣,培养主动探索和创新的意识;2. 学生在学习过程中,树立正确的价值观,认识到单片机技术在现实生活中的应用价值;3. 学生通过团队协作,培养沟通与协作能力,增强集体荣誉感和责任感。
课程性质:本课程为单片机原理与应用的综合实验课程,注重理论与实践相结合,以培养学生的动手能力和创新能力为主。
学生特点:学生具备一定的电子技术和编程基础,对单片机有一定了解,但实践经验不足。
教学要求:教师应结合学生特点和课程性质,采用任务驱动、案例教学等方法,引导学生主动参与实验,提高实践操作能力和创新能力。
同时,注重个体差异,因材施教,确保每位学生都能在课程中学有所获。
通过课程目标的分解与实现,为后续教学设计和评估提供依据。
二、教学内容本课程教学内容主要包括以下三个方面:1. 单片机原理与结构- 熟悉单片机的内部结构,掌握其功能模块;- 了解单片机的工作原理,理解指令执行过程;- 学习单片机编程语言,掌握基本语法和常用指令。
教学大纲:参照教材第1章至第3章,共计6学时。
2. 单片机编程与接口技术- 学习单片机程序设计方法,掌握程序编写、调试与优化技巧;- 了解单片机接口技术,掌握I/O口、定时器、中断等应用;- 学习外围设备与单片机的通信协议,实现数据交换和控制。
教学大纲:参照教材第4章至第6章,共计10学时。
单片机课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理和结构,理解其工作流程。
2. 使学生了解并熟练运用单片机的编程语言,如C语言或汇编语言。
3. 帮助学生掌握单片机外围电路的设计与搭建,使其能独立完成简单的电路系统。
技能目标:1. 培养学生运用单片机解决实际问题的能力,提高创新思维和动手实践能力。
2. 培养学生具备查阅资料、分析问题、设计方案、调试程序等综合技能。
情感态度价值观目标:1. 培养学生对单片机课程的兴趣,激发学习热情,形成自主学习、合作学习的良好习惯。
2. 培养学生具备团队协作精神,学会与他人分享、交流、合作,提高沟通能力。
3. 培养学生关注科技发展,了解单片机在现实生活中的应用,增强社会责任感和创新意识。
课程性质分析:本课程为单片机课程设计,旨在让学生在掌握理论知识的基础上,通过实际操作,提高解决实际问题的能力。
学生特点分析:学生已具备一定的电子技术基础和编程能力,对单片机有一定了解,但实践经验不足,需要通过本课程加强实践操作和综合运用。
教学要求:1. 理论与实践相结合,注重培养学生的动手能力。
2. 引导学生主动思考,发现问题,解决问题。
3. 创设实际情境,提高学生的学习兴趣和参与度。
4. 注重培养学生的团队协作能力和沟通能力。
二、教学内容1. 单片机原理及结构:介绍单片机的组成、工作原理,重点讲解CPU、存储器、输入输出接口等部分。
参考教材章节:第一章 单片机概述2. 单片机编程语言:学习C语言和汇编语言的基础知识,掌握编程技巧,能独立编写简单的单片机程序。
参考教材章节:第二章 单片机编程语言3. 单片机外围电路设计:讲解并实践常用外围电路的设计与搭建,如LED 灯、蜂鸣器、数码管等。
参考教材章节:第三章 单片机外围电路设计4. 单片机程序下载与调试:学习使用编程器、仿真器等工具,掌握程序下载、调试方法。
参考教材章节:第四章 单片机程序下载与调试5. 实践项目:设计并实现几个实际项目,如温度控制器、智能小车、智能家居系统等,锻炼学生解决实际问题的能力。
郑州轻工业学院软件学院单片机与接口技术课程设计总结报告设计题目:电子万年历学生:系别:专业:班级:学号:指导教师:2021年12月16日设计题目:电子万年历设计任务与要求:1、显示年月日时分秒及星期信息2、具有可调整日期和时间功能3、增加闰年计算功能方案比拟:方案一:系统分为主控制器模块、显示模块、按键开关模块,主控制模块采用AT89C52单片机为控制中心,显示模块采用普通的共阴LED数码管,键输入采用中断实现功能调整,计时使用AT89C52单片机自带的定时器功能,实现对时间、日期的操作,通过按键盘开关实现对时间、日期的调整。
方案二:系统分为主控模块、时钟电路模块、按键扫描模块,LCD显示模块,电源电路、复位电路、晶振电路等模块。
主控模块采用AT89C52单片机,按键模块用四个按键,用于调整时间,显示模块采用LCD1602,时钟电路模块采用DS1302时钟芯片实现对时间、日期的操作。
两个方案工作原理大致相同,只有显示模块和时钟电路不同。
LED数码管价格适中,对于数字显示效果较好,而且使用单片机的端口也较少; LCD1602液晶显示屏,显示功能强大,可以显示大量文字、图形,显示多样性,清晰可见,价格相对LED数码管来说要昂贵些,但是基于本设计显示的东西较多,假设采用LED数码管的话,所需数码管较多,而且不利于控制,因此选择LCD1602作为显示模块。
DS1302是一款高性能的实时时钟芯片,以计时准确、接口简单、使用方便、工作电压范围宽和低功耗等优点,得到广泛的应用,实时时钟有秒、分、时、星期、日、月和年,月小于31天时可以自动调整,并具有闰年补偿功能,而且在掉电时能够在外部纽扣电池的供电下继续工作。
单片机有定时器的功能,但时间误差较大,且需要编写时钟程序,因此采用DS1302作为时钟电路。
比照以上方案,结合设计技术指标与要求我们选择了方案二进行设计。
逻辑总框图:该电子万年历的总体设计框图如图(1)所示。
单片机综合实验课程设计一、课程目标知识目标:1. 学生能理解单片机的基本原理,掌握其内部结构及相关功能模块的使用方法。
2. 学生能掌握单片机编程的基本语法和技巧,能独立完成简单的程序设计。
3. 学生能了解单片机在现实生活中的应用,并学会分析实际案例。
技能目标:1. 学生能运用所学知识,完成单片机的基本操作和程序编写。
2. 学生能通过实验,学会使用相关开发工具和调试技巧,具备一定的故障排查能力。
3. 学生能运用单片机技术解决实际问题,提高创新实践能力。
情感态度价值观目标:1. 学生通过单片机综合实验课程,培养对电子信息科学的兴趣和热情。
2. 学生在团队协作中,学会沟通、分享和合作,提高解决问题的能力。
3. 学生能认识到单片机技术对社会发展的作用,树立正确的价值观和责任感。
课程性质:本课程为实践性课程,侧重于培养学生的动手能力和创新能力。
学生特点:学生已具备一定的单片机基础知识,对实际操作感兴趣,但编程能力和问题解决能力有待提高。
教学要求:结合学生特点,注重理论与实践相结合,强调动手实践和团队协作,提高学生的综合能力。
通过课程目标分解,使学生在知识、技能和情感态度价值观方面取得具体的学习成果,为后续教学设计和评估提供依据。
二、教学内容本课程教学内容主要包括以下几部分:1. 单片机基础理论:回顾单片机的基本原理、内部结构、工作原理等,重点讲解中断系统、定时器/计数器、串行通信等模块的功能和应用。
2. 单片机编程语言:以C语言为基础,介绍单片机编程的基本语法、数据类型、运算符、控制语句等,并通过实例进行讲解。
3. 单片机实验操作:结合教材章节,进行以下实验:- 基本输入输出实验:学习单片机I/O口控制,实现LED灯、蜂鸣器等设备的控制。
- 中断控制实验:掌握中断系统的使用,实现外部中断控制。
- 定时器/计数器实验:学习定时器/计数器的配置,完成定时控制等功能。
- 串行通信实验:了解串行通信原理,实现单片机之间的数据传输。
单片机实践项目课程设计一、课程目标知识目标:1. 学生能够理解单片机的基本结构、工作原理及其在各行各业的应用。
2. 学生掌握单片机编程的基础知识,如指令系统、寄存器、I/O 口控制等。
3. 学生能够描述并分析单片机外围电路的原理及其功能。
技能目标:1. 学生能够运用所学知识,独立完成单片机的编程和调试。
2. 学生能够设计简单的单片机控制系统,解决实际问题。
3. 学生通过实践项目,提高动手能力,培养创新意识和团队协作精神。
情感态度价值观目标:1. 学生培养对单片机及电子技术的兴趣,激发学习热情。
2. 学生在实践过程中,培养耐心、细致的工作态度,提高解决问题的能力。
3. 学生认识到单片机在现代科技发展中的重要作用,树立为国家和民族科技事业作贡献的信念。
课程性质:本课程为实践性较强的学科,强调理论知识与实际操作的相结合。
学生特点:学生处于高年级阶段,已具备一定的电子技术基础和编程能力,具有较强的探究欲望和自主学习能力。
教学要求:教师需注重引导学生将所学知识应用于实践,鼓励学生创新思维,提高解决问题的能力。
通过课程学习,使学生能够达到预定的学习成果。
二、教学内容1. 单片机基础知识:介绍单片机的基本结构、工作原理,重点讲解CPU、内存、I/O 口等组成部分的功能及相互关系。
教材章节:第一章 单片机概述2. 单片机编程语言:讲解单片机编程所需的基础知识,如指令系统、寄存器、汇编语言等。
教材章节:第二章 单片机编程语言3. 单片机外围电路设计:介绍单片机与外围电路的连接方法,讲解常用外围元器件的原理及功能。
教材章节:第三章 单片机外围电路设计4. 单片机实践项目:设计多个实践项目,涵盖灯光控制、温度测量、电机控制等方面,让学生动手实践,巩固所学知识。
教材章节:第四章 单片机实践项目5. 单片机系统设计与调试:讲解单片机系统设计的方法和步骤,培养学生独立设计单片机控制系统及调试的能力。
教材章节:第五章 单片机系统设计与调试教学内容安排和进度:共15课时,其中基础知识3课时,编程语言4课时,外围电路设计3课时,实践项目4课时,系统设计与调试1课时。
简单的单片机课程设计一、课程目标知识目标:1. 理解单片机的基本概念、结构和工作原理;2. 掌握单片机编程的基本语法和指令;3. 学会使用单片机进行简单的输入输出控制;4. 了解单片机在实际应用中的使用场景和功能。
技能目标:1. 能够运用单片机编程软件进行程序编写和烧录;2. 能够运用基本的电子元件与单片机连接,实现简单的电路控制;3. 能够分析并解决简单的单片机控制系统问题;4. 培养学生的动手操作能力和团队协作能力。
情感态度价值观目标:1. 培养学生对单片机及电子技术的兴趣和热情;2. 增强学生对科技创新和实践操作的自信心;3. 培养学生严谨、细致的学习态度,树立正确的价值观;4. 引导学生关注单片机在生活中的应用,体会科技带来的便利。
课程性质:本课程为选修课程,以实践操作为主,理论教学为辅,注重培养学生的动手能力和实际应用能力。
学生特点:学生处于初中或高中年级,对电子技术有一定的基础,对单片机编程和控制感兴趣,但可能缺乏实际操作经验。
教学要求:结合学生特点,注重理论与实践相结合,强调动手实践,培养学生的问题分析和解决能力。
通过课程学习,使学生能够达到预设的知识、技能和情感态度价值观目标,为后续深入学习电子技术打下基础。
教学过程中,将目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 单片机基础知识:介绍单片机的概念、发展历程、结构组成及工作原理。
关联课本第一章内容。
- 单片机的种类与选型- 单片机的内部结构- 单片机的工作原理2. 单片机编程语言:学习单片机编程的基本语法、指令系统及编程技巧。
关联课本第二章内容。
- 编程语言概述- 汇编语言与C语言的对比- 常用指令介绍3. 单片机输入输出控制:学习如何使用单片机进行简单的输入输出控制,包括I/O口编程、中断控制等。
关联课本第三章内容。
- I/O口编程- 中断控制原理与应用- 定时器/计数器应用4. 单片机外围电路设计:学习如何使用基本的电子元件与单片机连接,实现简单的电路控制。
单片机编程课程设计一、课程目标知识目标:1. 理解单片机的基本原理和功能,掌握单片机编程的基本语法和结构。
2. 学习并掌握单片机常见的外围设备接口,如LED灯、按键、传感器等的使用方法。
3. 了解单片机在实际应用中的典型应用场景,如智能家居、自动化控制等。
技能目标:1. 能够运用C语言编写简单的单片机程序,实现基本的功能,如点亮LED 灯、读取传感器数据等。
2. 学会使用常见的编程工具和开发环境,如Keil、Arduino IDE等,进行单片机程序的编写、调试和下载。
3. 能够分析并解决单片机编程过程中遇到的问题,具备初步的故障排查和程序优化能力。
情感态度价值观目标:1. 培养学生对手工制作和编程的兴趣,激发他们的创新意识和实践能力。
2. 培养学生的团队合作精神,学会在项目中进行沟通、协作和解决问题。
3. 增强学生对科技改变生活的认识,提高他们对科技学习的热情,培养未来的科技人才。
课程性质:本课程为实践性较强的学科,注重理论知识与实际操作的结合,旨在培养学生的动手能力和实际编程技能。
学生特点:针对高中年级学生,具备一定的物理、数学基础,对电子技术和编程有一定了解,但实践经验不足。
教学要求:教师应结合课本内容,注重理论与实践相结合,提供丰富的实例和实际操作机会,引导学生主动探索、实践和解决问题。
同时,关注学生的学习进度和个体差异,提供有针对性的指导和支持。
通过本课程的学习,使学生能够达到上述课程目标,为后续相关课程和实际应用打下坚实基础。
二、教学内容1. 单片机原理概述:介绍单片机的组成、工作原理,以及常见的单片机型号及其特点。
- 教材章节:第一章 单片机基础知识2. 单片机编程语言基础:学习C语言基本语法,掌握变量、数据类型、运算符、控制结构等编程基础。
- 教材章节:第二章 单片机编程语言3. 单片机I/O口编程:学习如何控制单片机的输入输出口,实现LED灯、按键等基础控制。
- 教材章节:第三章 单片机I/O口编程4. 中断与定时器编程:了解中断原理,学习定时器编程,实现精确时间控制。
学单片机的课程设计一、课程目标知识目标:1. 理解单片机的基本结构、工作原理及其在各行各业的应用。
2. 掌握单片机编程的基本语法、指令系统以及编程技巧。
3. 学习并掌握单片机外围电路的设计方法,如传感器、执行器等。
技能目标:1. 能够运用所学知识设计简单的单片机控制系统,具备实际操作能力。
2. 培养学生具备分析和解决单片机应用过程中出现问题的能力。
3. 提高学生的团队协作能力和创新能力,能够共同完成复杂的单片机项目。
情感态度价值观目标:1. 培养学生对单片机技术的兴趣和热情,激发学习动力。
2. 培养学生具备良好的工程素养,关注单片机技术的发展趋势。
3. 增强学生的自信心和责任感,使其在单片机项目实践中能够克服困难,勇于担当。
课程性质:本课程为实践性较强的课程,结合理论知识,培养学生的动手操作能力和创新能力。
学生特点:学生处于高年级阶段,已具备一定的电子技术基础和编程能力,具有较强的求知欲和探索精神。
教学要求:教师应注重理论与实践相结合,关注学生的个体差异,引导学生在实践中掌握单片机技术,提高学生的综合素养。
通过分解课程目标为具体的学习成果,为教学设计和评估提供明确的方向。
二、教学内容1. 单片机基础理论- 单片机的基本结构及工作原理- 单片机指令系统与编程语法- 单片机外围电路设计方法2. 单片机编程与操作- 常用单片机开发环境介绍- 单片机C语言编程基础- 单片机程序下载与调试方法3. 单片机应用实例- 传感器与单片机的接口技术- 执行器与单片机的控制方法- 常见单片机应用系统的分析与设计4. 实践项目与案例分析- 设计简单的单片机控制系统- 分析并解决单片机应用中的问题- 团队合作完成复杂单片机项目教学内容安排与进度:第一周:单片机基础理论第二周:单片机编程与操作第三周:单片机应用实例第四周:实践项目与案例分析教材章节:第一章:单片机概述第二章:单片机结构与原理第三章:单片机指令与编程第四章:单片机外围电路设计第五章:单片机应用系统实例教学内容注重科学性和系统性,结合课程目标,让学生在实践中掌握单片机技术,培养其动手能力和创新能力。
实验项目:智力抢答器一、设计目的现如今电视节目日益丰富其中的竞赛环节也越来越多,其中智力抢答器是不可或缺的器材。
在本学期学习了单片机这门课之后,我们小组成员觉得可以试着自己来实现抢答器的功能,令它能准确、公正、直观地判断出第一抢答者,并通过抢答器的数码管显示和蜂鸣器报警指出抢答组别。
我们最终做出一种数字式抢答器的设计方案,通过Proteus设计完成,利用WAVE6000软件编辑程序,仿真验证,适用于多种竞赛场合。
二、设计要求设计一个用于智力竞赛的抢答器,其功能的实现是由单片机控制的,满足(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软件,通过仿真可以显示所设计系统的功能,对于程序的调试等有很大的帮助。
总体框图四、硬件设计总体设计电路图整个系统分为:外部振荡电路、复位电路、加减分电路及蜂鸣器报警电路、抢答电路及裁判控制开始停止电路、数码管显示电路几个部分本设计的核心是单片机AT89C51。
AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
振荡电路使用外部振荡电路,由两个1nF的电容和一个晶体振荡外部震荡电路外部中断和内部中断并存,单片机有硬件复位端,只要输入持续4个机器周期的高电平即可实现复位。
硬件复位后的各状态可知寄存器及存储器的值都恢复到了初始值。
因为本设计功能中有倒计时时间的记忆功能,所以不能对单片机进行硬件复位,只能用软复位。
软复位实际上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序开始。
复位电路P3.3接口的开关按下意味着答题结束,P3.4接口开关表示给抢答相应组加上一分,P3.5接口开关按下表示相应组减去一分。
裁判示意开始抢答、有组抢答成功、违规抢答、最后5s倒计时都会触发蜂鸣器发出警报。
P3.6为蜂鸣器控制口。
加减分电路及蜂鸣器报警电路P1.0和P1.7由裁判控制,分别是抢答开始和停止键。
P1.1-P1.6是6组抢答的输入口,按下按钮抢答。
抢答电路及裁判控制开始停止电路采用排阻RESPACK-8来做为上拉电阻,排阻一般应用在数字电路上,通常作为某个并行口的上拉或者下拉电阻用。
排阻具有方向性,与色环电阻相比具有整齐、少占空间的优点,比用若干只固定电阻更方便。
数码管7SEG-MPX4-CC-BLUE,它是共阴极的数码管允许抢答后,开始倒计时从15s知道0s。
在最后5s蜂鸣器会发出警报。
第三组抢答,答题时间有30s,在最后5s蜂鸣器会发出警报。
若还没有允许抢答就有人按下抢答器,那么蜂鸣器会发出警报,并显示是哪一组违规抢答。
如图为第一组违规抢答如图为第三组回答正确加一分如图为第三组回答错误减一分电路具有记忆功能,每次抢答后都能看到抢答组的分数。
如图表示第三组已经获得4分七、软件编程OK EQU 20HRING EQU 22HORG 0000HAJMP MAINORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040HMAIN: MOV R1,#0FHMOV R2,#01EHMOV TMOD,#11H;设置未定时器/模式1MOV TH0,#0F0HMOV TL0,#0FFH;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H;50ms为一次溢出中断SETB EASETB ET0SETB ET1SETB EX1;允许3个中断,T0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0;开始就运行定时器,初始显示888如果想重新计数,重置TH1/TL1 ;=====查询程序=====START: MOV R5,#00HMOV R4,#00HMOV R3,#00HACALL DISPLAY;未开始抢答时候显示888ACALL DELAYJB P1.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询ACALL BARK;按键发声MOV A,R1MOV R6,A;送R1->R6,因为R1中保存了抢答时间SETB OK;抢答标志位,用于COUNT只程序中判断是否查询抢答MOV R3,0AH;抢答只显示计时,灭号数AJMP COUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面NEXT:JNB P1.1,FALSE1JNB P1.2,FALSE2JNB P1.3,FALSE3JNB P1.4,FALSE4JNB P1.5,FALSE5JNB P1.6,FALSE6AJMP START;=====非法抢答处理程序=====FALSE1: ACALL BARK;按键发声MOV R3,#01HAJMP ERRORFALSE2: ACALL BARKMOV R3,#02HAJMP ERRORFALSE3: ACALL BARKMOV R3,#03HAJMP ERRORFALSE4: ACALL BARKMOV R3,#04HAJMP ERRORFALSE5: ACALL BARKAJMP ERRORFALSE6: ACALL BARKMOV R3,#06HAJMP ERROR;=====INT1(答题对错加减分数程序)===== INT1SUB:MOV R4,#0AHMOV R5,#0AHJNB P3.4,INC1JNB P3.5,DEC1JNB P1.7,BACK1ACALL DISPLAYAJMP INT1SUBMOV A,R3SUBB A,#01HJZ XXY1SUBB A,#02HJZ XXY2SUBB A,#03HJZ XXY3SUBB A,#04HJZ XXY4SUBB A,#05HJZ XXY5SUBB A,#06HJZ XXY6XXY1:MOV R7,41HXXY2:MOV R7,42HXXY3:MOV R7,43HXXY4:MOV R7,44HXXY5:MOV R7,45HINC1:INC R7CJNE R3,#01H,L1MOV 51H,R7L1:CJNE R3,#02H,L2MOV 52H,R7L2:CJNE R3,#03H,L3MOV 53H,R7L3:CJNE R3,#04H,L4MOV 54H,R7L4:CJNE R3,#05H,L5MOV 55H,R7L5:CJNE R3,#06H,LLMOV 56H,R7LL:ACALL DELAY1AJMP INT1SUBDEC1:DEC R7ACALL DELAY1AJMP INT1SUBBACK1:RETI;=====倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=====COUNT: MOV R0,#00H;重置定时器中断次数MOV TH1,#3CHMOV TL1,#0B0H;重置定时器RECOUNT:MOV A,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6MOV 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 P1.7,QUIT;如按下停止键退出ACALL DISPLAYJB OK,ACCOUT;如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用)AJMP RECOUNTACCOUT:JNB P1.1,TRUE1JNB P1.2,TRUE2JNB P1.3,TRUE3JNB P1.4,TRUE4JNB P1.5,TRUE5JNB P1.6,TRUE6AJMP RECOUNTQUIT:CLR OK;如果按下了"停止键"执行的程序CLR RINGAJMP START;=====正常抢答处理程序=====TRUE1: ACALL BARK;按键发声MOV A,R2MOV R6,A;抢答时间R2送R6MOV R3,#01HMOV R7,41HCLR OK;因为答题的计时不再查询抢答,所以就锁了抢答 AJMP COUNTTRUE2:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#02HMOV R7,42HCLR OKAJMP COUNTTRUE3:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#03HMOV R7,43HCLR OKAJMP COUNTTRUE4:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#04HMOV R7,44HCLR OKAJMP COUNTTRUE5:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#05HMOV R7,45HCLR OKAJMP COUNTTRUE6:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#06HMOV R7,46HCLR OKAJMP COUNT;=====犯规抢答程序=====ERROR:MOV R0,#00HMOV TH1,#3CHMOV TL1,#0B0HMOV 34H,R3;犯规号数暂存与(34H)HERE: MOV A,R0CJNE A,#0AH,FLASH;0.5s向下运行->灭并停响CLR RINGMOV R3,#0AHMOV R4,#0AHMOV R5,#0AH;三灯全灭AJMP CHECK1FLASH:CJNE A,#14H,CHECK1;下面系1s的情况,响并显示号数并清R0,重新计 SETB RINGMOV R0,#00HMOV R3,34H;取回号数MOV R5,#0BHMOV R4,#0BH;显示FF和号数AJMP CHECK1CHECK1:JNB P1.7,QUIT1ACALL DISPLAYAJMP HEREQUIT1: CLR RINGCLR OKAJMP START;=====显示程序=====DISPLAY:MOV 41H,51HMOV 42H,52HMOV 43H,53HMOV 44H,54HMOV 45H,55HMOV 46H,56HMOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出,MOV A,r5MOVC A,@A+DPTRMOV P2,#01HMOV P0,AACALL DELAYMOV DPTR,#DAT2MOV A,r4MOVC A,@A+DPTRMOV P2,#02HMOV P0,AACALL DELAYMOV A,r3MOVC A,@A+DPTRMOV P2,#04HMOV P0,AACALL DELAYMOV A,R7MOVC A,@A+DPTRMOV P2,#08HMOV P0,AACALL DELAYRETDAT1: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;=====延时(显示和去抖动用到)=====DELAY: MOV 32H,#12HLOOP: MOV 33H,#0AFHLOOP1: DJNZ 33H,LOOP1DJNZ 32H,LOOPRET;=====发声程序=====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。