硬件设计

本设计采用单片机AT89C51作为核心元件,由控制系统,显示模块,按键驱动模块3部分组成。主要编写了主程序,中断程序,显示程序功能模块程序等。实现羽毛球计分器功能。
       整体电路主要由51单片机最小系统,LCD1602液晶显示模块,LED指示灯模块,按键模块;原理图如图:

Protues仿真图:

功能

  • 采用按钮开关实现功能控制,按照设计的功能模块共选用8个按钮开关,分别实现启动、A队加分、A队减分、B队加分、B队减分、暂停、停止、清零功能。
  • 选用LCD1602液晶屏作为显示器件,用于记录两队的分数。

软件设计

主程序源码

void main()
{    EA = 1;           //开总中断ConfigTimer0(1);  //配置T0定时1msInitLcd1602();    //初始化液晶while (1){KeyDriver();    //调用按键功能if(k==1)LcdInit();     //显示字幕}
}/* 按键驱动函数,检测按键动作,调度相应动作函数,需在主循环中调用 */
void KeyDriver()
{static bit star = 0;          //开始比赛unsigned char but = 0;         //胜利标志static unsigned char cnt = 0; //比赛次数static unsigned char cnta = 0; //A胜利次数static unsigned char cntb = 0; //B胜利次数 if(KEY_IN_3 == 0) {   delay();  star = 1; TR0 = 1;k=1;} if(star == 1){    LcdWriteCmd(0x0C);  //显示器开,光标关闭           if(KEY_IN_1 ==0)  { a++; delay();}if(KEY_IN_2 ==0)  { b++; delay();}if(KEY_IN_4 ==0)  { TR0 = 0; star=0; delay(); }if(KEY_IN_5 ==0)  { a--; if(a<0)a=0; delay();}if(KEY_IN_6 ==0)  { b--; if(b<0)b=0; delay(); }         }if(KEY_IN_7 ==0)  { a=0; b=0; sec=0; minute=0; TR0=0;star=0;cnta=0; cntb=0; cnt=0; LcdShowStr(0, 0, "                "); delay();}if(KEY_IN_8 ==0){ a=0;  b=0;   sec=0;   minute=0; LcdShowStr(0, 0, "                ");k=0;cnta=0;cntb=0;cnt=0;LcdWriteCmd(0x01); delay();}    if(a>=21 && (a-b)>=2 ) {cnt++; cnta++; but = 1; a = 0; b = 0; }    if(b>=21 && (b-a)>=2 ) {cnt++; cntb++; but = 2; a = 0; b = 0; }if(cnt==2&&(cnta==2||cntb==2)) {TR0 = 0; star = 0;}switch(cnt){case 1: if(but==1) LcdShowStr(0, 0, "1Awin"); if(but==2) LcdShowStr(0, 0, "1Bwin");break;case 2: if(but==1) LcdShowStr(5, 0, "2Awin"); if(but==2) LcdShowStr(5, 0, "2Bwin");break;case 3: if(but==1) LcdShowStr(10, 0, "3Awin"); if(but==2) LcdShowStr(10, 0, "3Bwin"); TR0=0;star=0;break;default: break;}
}

资料链接:https://pan.baidu.com/s/1qeSwV-szwQJUQpyVo7OiHQ?pwd=1368 
提取码:1368

基于51单片机的羽毛球计分器设计相关推荐

  1. 基于51单片机的羽毛球计分器proteus仿真程序设计

    硬件设计 (末尾附文件) 方案 在像羽毛球这样的竞技比赛中,计分器占着很大的作用.如果我们就只在心里记着双方的比分,显然是不实际的,而且在现在的乒乓球比赛中采用的都是21分制.因此我们不能再用传统的计 ...

  2. 基于51单片机的羽毛球计分器

    具体实现功能 由STC89C51单片机+按键模块+LCD1602液晶显示屏+电源构成 具体功能: (1)LCD1602显示参赛者A和B的分数及比赛时间: (2)通过按键分别实现启动.A队加分.A队减分 ...

  3. 51单片机篮球计分器C语言,基于51单片机的篮球计分器设计

    { while(P25==0); cc=cc+3; point_lcd(0x08,cc); if(P25==0) { while(P25==0); delay(20); } } else if(P26 ...

  4. 单片机应用系统设计技术——基于51单片机篮球计时计分器的设计

    基于51单片机篮球计时计分器的设计 一.实验目的 二.实验内容 三.实验步骤 四.C代码如下 五.实验结果

  5. 基于51单片机的篮球计分器

    基于51单片机的篮球计分器 1)LCD1602液晶屏显示: 比赛双方队名.双方比分.12分钟倒计时.24s进攻倒计时.场次 2)24s倒计时结束蜂鸣器响 3)按键功能: 比赛开始/暂停.24s倒计时重 ...

  6. 基于微型计算机系统的实时时钟设计,基于51单片机的实时时钟设计报告.doc

    基于51单片机的实时时钟设计报告 PAGE PAGE 24 课程设计(论文)任务书 信息工程 学 院 信息工程 专 业 (2) 班 一.课程设计(论文)题目 嵌入式课程设计 二.课程设计(论文)工作自 ...

  7. matlab ds18b20 单片机,基于51单片机ds18b20温度检测————设计报告.doc

    基于51单片机ds18b20温度检测----设计报告 课程名称: 微机原理课程设计 题 目: 温度检测课程设计 摘要 随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研,各个领域,已经成为 ...

  8. 基于51单片机的电子时钟设计

    基于51单片机的电子时钟设计 0 功能介绍 1.从DS1302中读取时间显示 2.一共4个按键,按键1按下进入修改时间模式,再按下切换修改的时间变量,这个时候第2和3个按键就是修改时间变量的按键,修改 ...

  9. 单片机数字定时闹钟设计c语言,电子设计 基于51单片机的定时闹钟设计.doc

    电子设计 基于51单片机的定时闹钟设计 课件之家精心整理资料--欢迎你的欣赏 课件之家精心整理资料--欢迎你的欣赏 摘 要 单片计体积小.能耗低.成本低.功能强,广泛应用于智能产品和工业自动化上.本次 ...

最新文章

  1. 嵌入式开发中DSP与FPGA的关系
  2. 最近对python颇有兴趣
  3. python3 整除 取模
  4. Service xxx does not have a SELinux domain defined
  5. 在word中给公式添加序号
  6. linux查看端口属性,linux如何查看系统属性指令?
  7. photozoompro 8 解锁代码_能够在手机上实现代码编写的APP——Pydroid 3
  8. OpenShift 4 - DevSecOps Workshop (13) - 将镜像推送到Quay,并进行漏洞扫描
  9. 获取元素在文档上的正确坐标
  10. matlab模拟光栅,matlab对光栅的仿真代码
  11. 怎么接收xml报文_Benteler/本特勒 DESADV 报文生成过程
  12. Android PreferenceScreen的使用和详解(设置页面)
  13. 使用python做王者荣耀挂机刷金币脚本
  14. u盘里删除的文件可以恢复吗?分享解决方法
  15. 详解:C语言中的指针和p, p+1, *(p+1), *P+1, p[0], p[0] 的含义
  16. java的三大体系分别是什么
  17. JAVA体育用品在线商城系统-springboot【数据库设计、论文、源码、开题报告】
  18. 淘宝卖家数据分析体系
  19. 光模块MSA多源协议详细解析
  20. 46、linux开发笔记(主线更新)

热门文章

  1. web界面测试用例(shelley_shu)
  2. element 表格背景颜色透明
  3. 访问项目无法访问 此网站192.168.*** 拒绝了我们的连接请求。
  4. 修改STM32的USB程序
  5. linux网卡操作命令 ,查看Linux下网卡连接状态(up还是down)?
  6. JSON对象转java对象 JSON数组转LIST数组
  7. 跟百事斗了100年,可口可乐凭什么“赢”?
  8. L2TP协议及AVP
  9. exec函数族的作用与讲解
  10. 氧饱夹语音芯片,内置功放直推喇叭输出,低成本语音IC,WTN6系列