当前位置: 首页 > news >正文

广东省城乡建设厅网站免费找精准客户的app

广东省城乡建设厅网站,免费找精准客户的app,企业如何在工商网站上做公示,秭归建设局网站基于普中开发板51单片机的篮球计分器液晶LCD1602显示 1.主要功能:讲解视频:2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单&&下载链接资料下载链接(可点击): 基于51单片机的篮球计分器液晶LCD1602显示 ( pr…

基于普中开发板51单片机的篮球计分器液晶LCD1602显示

  • 1.主要功能:
  • 讲解视频:
  • 2.仿真
  • 3. 程序代码
  • 4. 设计报告
  • 5. 设计资料内容清单&&下载链接
    • 资料下载链接(可点击):

基于51单片机的篮球计分器液晶LCD1602显示

( proteus仿真+程序+设计报告+实物仿真讲解视频)

仿真图proteus8.16(有低版本)

程序编译器:keil 4/keil 5

编程语言:C语言

设计编号:P09

1.主要功能:

基于51单片机AT89C51/52(与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用)

基于51单片机的篮球计分器液晶LCD1602显示

设计内容:

1、设计LCD显示篮球比赛计时计分牌。

2、通过加分按钮可以给A队或B队加分。

3、设计对调功能,A队和B队分数互换,意味着中场交换场地。

4、显示比赛倒计时功能。

5、创新内容:

如显示第几小节。

可以通过按键完成+1、+2、+3、-1操作。

篮球比赛24秒进攻倒计时功能

(目前仅完全适配普中开发板A234,其他普中开发板型号可能需要做代码修改或接线)

需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

以下为本设计资料展示图:

讲解视频:

仿真讲解+代码讲解

img

2.仿真

开始仿真

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。

以上仿真结果均符合设计要求。

img

3. 程序代码

使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。

img

主要代码


//延时子函数
void delay(uint z)  
{uint x;uchar y;for(x=z;x>0;x--)for(y=110;y>0;y--);
}
//LCD1602液晶写指令子函数
void write_com(uchar com)
{RS=0;RW=0;//写入P0=com;delay(5);E=1;delay(5);E=0;
}
//LCD1602液晶写数据子函数
void write_date(uchar date)
{RS=1;RW=0;//写入P0=date;delay(5);E=1;delay(5);E=0;
}
LCD1602液晶设置当前行
//void write_sfm(uchar hang,uchar add)
//{
//	if(hang==1)   			   //设置当前行
//		write_com(0x80+add);
//	else
//		write_com(0x80+0x40+add);	
//}/********************************************************************
* 名称 : write_string(uchar hang,uchar add,uchar *p)
* 功能 : 改变液晶中某位的值,如果要让第一行,第五个字符开始显示"ab cd ef" ,调用该函数如下write_string(1,5,"ab cd ef;")
* 输入 : 行,列,需要输入1602的数据
* 输出 : 无
***********************************************************************/
void write_string(uchar hang,uchar add,uchar *p)
{if(hang==1)   write_com(0x80+add);elsewrite_com(0x80+0x40+add);while(1){if(*p == '\0')  break;write_date(*p);p++;}	
}//LCD1602液晶初始化子函数
void LCD1602_init()
{uchar i;a_team=0;    //H.T分数初始化b_team=0;    //R.T分数初始化time=0;TMOD=0x10;    //定时器1初始化 TL1=0x00;TH1=0x4c;  //设置定时器初值 定时器50ms一次中断EA=1;     //开总中断ET1=1;     //开定时器1TR1=0;     //定时器1不工作E=0; miao=0;fen=12;//默认单节比赛时间(单位分钟)num=1;sec_24=24;change_flag = 0;write_com(0x38);  //LCD设置初始化write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);  //LCD显示初始化for(i=0;i<16;i++){write_date(table1[i]);}write_com(0x80+0x40);for(i=0;i<16;i++){write_date(table2[i]);}
}
//分数更新子函数
void point_lcd(uchar add,uchar dat)
{write_com(0x80);  //LCD显示初始化if(change_flag){write_string(1,2,"B");write_string(1,8,"A");}else{write_string(1,2,"A");write_string(1,8,"B");}if(change_flag){if(add == 0x04){add = 0x0A;}else if(add == 0x0A){add = 0x04;}}write_com(0x80+add);write_date(0x30+dat/100);write_date(0x30+(dat%100)/10);write_date(0x30+dat%10);write_com(0x80+add);
}
//按键扫描子函数
void keyscan()
{uchar i=0;i=Matrix_buttons_scan();//按键检测if(i==1)     //A分数加一{if(a_team<1000)a_team++;point_lcd(0x04,a_team);  	}else if(i==2)    //A分数加二{if(a_team<1000)a_team=a_team+2;point_lcd(0x04,a_team);}else if(i==3)    //A分数加三{if(a_team<1000)a_team=a_team+3;point_lcd(0x04,a_team);}else if(i==4)    //A分数减一{if(a_team>=1)a_team=a_team-1;point_lcd(0x04,a_team);}else if(i==5)    //B分数加一{if(b_team<1000)b_team++;point_lcd(0x0A,b_team);}else if(i==6)    //B分数加二{if(b_team<1000)b_team=b_team+2;point_lcd(0x0A,b_team);}else if(i==7)    //B分数加三{if(b_team<1000)b_team=b_team+3;point_lcd(0x0A,b_team);}else if(i==8)    //B分数减一{if(b_team>=1)b_team=b_team-1;point_lcd(0x0A,b_team);}else if(i==9)    //交换{if(change_flag){change_flag = 0;}else{change_flag = 1;}point_lcd(0x04,a_team);point_lcd(0x0A,b_team);		}else if(i==10)    //{TR1=~TR1;     //定时器1工作/暂停if(TR1==1)  //当倒计时工作时,S1按下定时器立即停止工作{PT1=0;//取消定时器1优先级最高}else   //倒计时不工作时,S1按下倒计时立即工作{PT1=1;//定时器1优先级最高}	}else if(i==11)    //{sec_24=24;write_com(0x80+0x4e);	//24s倒计时显示write_date(0x30+sec_24/10); //更新倒计时时间write_date(0x30+sec_24%10);write_com(0x80+0x4e);}}
//比赛倒计时/24s倒计时
void counter_down()
{if(time>=20)     //每1s倒计时做减一操作{miao--;sec_24--;write_com(0x80+0x4e);  //24s倒计时显示write_date(0x30+sec_24/10);write_date(0x30+sec_24%10);write_com(0x80+0x4e);if(sec_24==0)    //24s结束{sec_24=24;TR1=0;     //定时器1暂停}if((miao==0)&&(fen==0))  //检测一节比赛是否结束{TR1=0;     //定时器1暂停write_com(0x80+0x44);write_date(0x30);num++;sec_24=24;    //24s计时复位write_com(0x80+0x4e);  //24s倒计时显示write_date(0x30+sec_24/10);write_date(0x30+sec_24%10);write_com(0x80+0x4e);write_com(0x80+0x4b); //更新"SEC-?"write_date(0x30+num);write_com(0x80+0x4b);miao=0;     //倒计时复位fen=12;}if(miao==-1){miao=59;fen--;}write_com(0x80+0x40);  //更新倒计时显示write_date(0x30+fen/10);write_date(0x30+fen%10);write_com(0x80+0x43);write_date(0x30+miao/10);write_date(0x30+miao%10);write_com(0x80+0x43);time=0;}
}
//主函数
void main()
{LCD1602_init();while(1){keyscan();  //分数按键检测}
}

4. 设计报告

9978字设计报告,内容包括摘要,硬件设计、软件设计、软硬件框图、调试、结论等

img

5. 设计资料内容清单&&下载链接

资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

0、常见使用问题及解决方法–必读!!!!

1、仿真图

2、程序源码注释

3、功能要求

4、开题报告

5、设计报告

6、软硬件流程框图

7、烧录工具

8、讲解视频

Altium Designer 安装破解

filename.bat

KEIL+proteus 单片机仿真设计教程

KEIL安装破解

Proteus元器件查找

Proteus安装

Proteus简易使用教程

单片机学习资料

普中-2&普中-3&普中-4开发板原理图.pdf

相关数据手册

答辩技巧

设计报告常用描述

鼠标双击打开查找嘉盛单片机51 STM32单片机课程毕业设计.url

资料下载链接(可点击):

http://www.hkea.cn/news/348939/

相关文章:

  • 城乡建设委员会网站河北seo推广公司
  • 某网站栏目策划2022十大热点事件及评析
  • 德清网站建设中心优化大师官方免费下载
  • 生日网页制作免费网站制作代做网页设计平台
  • 学校类网站特点游戏优化大师官网
  • 手机电视网站大全河南网站建设定制
  • zblog做的商城网站上海有实力的seo推广咨询
  • 免费网站模板psd网络营销的整体概念
  • 网站模板下载破解版环球军事新闻最新消息
  • 徐汇苏州网站建设东莞免费建站公司
  • 厦门网站建设哪家强深圳网站维护
  • 政府网站新媒体平台建设关键词权重查询
  • 重庆网站建设制作公司百度客服人工在线咨询电话
  • 微信公众号平台入口官网奶盘seo伪原创工具
  • 泉州网站建设公司推荐宁德市地图
  • 大厂县住房和城乡建设局网站刷百度指数
  • 低代码开发平台优缺点昆山seo网站优化软件
  • 网站开发年终总结网络营销战略的内容
  • 建立门户网站的意义营销推广网
  • 网站建设网站软件有哪些百度推广开户费用标准
  • 找家装修公司家装吉林seo外包
  • 保定医疗网站建设公司会计培训班初级费用
  • 最好的销售管理系统seo发帖网站
  • 德州乐陵德州seo公司seo批量建站
  • 贵州省建设监理协会官方网站seo代运营
  • 北京哪家做网站优化账号权重查询
  • 大唐网站建设培训管理平台
  • 男人和女人在床上做那个网站网络营销策划推广公司
  • 深圳市招投标交易中心天津谷歌优化
  • 厦门园网站忱建设百度推广怎么联系