基于51单片机的八位抢答器设计【普中开发板】( proteus仿真+程序+设计报告+讲解视频) |
您所在的位置:网站首页 › 抢答器功能扩展 › 基于51单片机的八位抢答器设计【普中开发板】( proteus仿真+程序+设计报告+讲解视频) |
【普中开发板】基于51单片机的八位抢答器设计( proteus仿真+程序+设计报告+讲解视频) Proteus 仿真:Proteus 8.16(有低版本) 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:P06 1. 主要功能:普中开发板实验设计 本设计旨在设计一个基于51单片机的8位竞赛抢答器设计。 以单片机为核心,设计一个8位竞赛抢答器:同时供8名选手或8个代表队比赛,分别用8个按钮1-8号表示。 1.设置一个系统清除和抢答控制开关S,开关由主持人控制。 2.抢答器具有锁存与显示功能。即选手按按钮,锁存相应的编号,并在优先抢答选手的编号一直保持到主持人将系统清除为止。 3.抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如20秒)。 4.当主持人启动“开始”键后,定时器进行减计时。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。 5.如果在主持人启动"开始"键前抢答 ,抢答无效。且显示器上会显示抢答选手编号。 6.如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。 (目前仅完全适配普中开发板A234,其他普中开发板型号可能需要做代码修改或接线) 需注意本设计仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。 资料下载链接:P系列单片机设计下载链接(复制到浏览器打开) https://docs.qq.com/doc/DS2pPenNRaHB6SlR1以下为本设计资料展示图: 2. 讲解视频:讲解视频包含仿真运行讲解、实物运行讲解和代码讲解 【普中】基于51单片机的八位抢答器( proteus仿真程序报告讲解) 3. 设计说明书(报告)随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也越来越重要。本文设计出以AT89C51单片机为核心的8位抢答器,采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,充分利用了单片机系统结构简单、功能强大、可靠性好、实用性强的特点。 4. 仿真打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。 5. 实物烧录和现象软件准备: 第一次使用务必先安装CH340驱动。 双击打开 STC-ISP.exe。 下载步骤: 0.板子先上电,接电源线到电脑USB口,先不上电,板子无灯光。 1.选择选择单片机型号 2.选择下载器的串口 3.打开编译生成的 HEX 文件 4.点击下载,单片机板子电源键按下接通电源,等待下载完成提示 6. 程序代码使用keil4或者keil5编译,代码有注释。 核心代码: void main() { TMOD = 0X12; //初始化定时器 TH0 = 6; TL0 = 6; TH1 = (65536-50000)/256; //50ms计时初值 TL1 =(65536-50000)%256; EA = 1; //开总中断 ET0 = 1; //开T0中断 ET1 = 1; //开T1中断 temp_fen=fen=10; //设置抢答倒计时 while(1) { ChangeFor(); KeyScanf(); if((start== 1)&&(flag == 0)) //如果开始键动作,且处于空闲状态 { flag = 1; //设置运行标志 fen=temp_fen; TR1 = 1; //启动定时器 } if((add==1)&&(flag==0))//如果时间+键动作,且处于空闲状态 { add=0; key_flick++; if((key_flick%25)==0){//消抖 key_flick=0; temp_fen++; //时间+1 fen=temp_fen; } } if((dec==1)&&(flag==0))//如果时间-键动作,且处于空闲状态 { dec=0; key_flick++; if((key_flick%25)==0){//消抖 key_flick=0; temp_fen--; //时间-1 fen=temp_fen; } } if((start==0)&&(flag==0)) { if((key != 0)) //如果键值有效 { xianshou = key; //显示抢答键 flag = 2; TR1 = 0; //关闭T0 flaga = 8000; //报警值,蜂鸣器响2秒 TR0 = 1; //启动T0 } } while(flag == 1) //如果运行标志有效,进入运行状态 { ChangeFor(); //显示 KeyScanf(); //扫描抢答键 if((key != 0)) //如果键值有效 { xianshou = key; //显示抢答键 flag = 2; TR1 = 0; //关闭T0 flaga = 8000; //报警值,蜂鸣器响2秒 TR0 = 0; //启动T0 } } if((end == 1)&&(flag==2)) //运行结束后复位键按下 { flag = 0; //回到初始状态 xianshou = 0; //变量归零 fen = 0; TR0 = 0; TR1 = 0; start=0; key=0; end=0; } } } 7. 设计资料内容清单&&下载链接资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。 0、常见使用问题及解决方法–必读!!!! 1.程序代码 2.仿真 3.开题报告 4.功能要求 5.设计报告 6.讲解视频 7.烧录工具 Altium Designer 安装破解 KEIL+proteus 单片机仿真设计教程 KEIL安装破解 Proteus元器件查找 Proteus安装 Proteus简易使用教程 单片机学习资料 普中-2&普中-3&普中-4开发板原理图.pdf 相关数据手册 答辩技巧 设计报告常用描述 鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |