基于单片机ATC控制的篮球计分器课程设计报告.docx

上传人:b****5 文档编号:10174332 上传时间:2023-02-09 格式:DOCX 页数:22 大小:1.10MB
下载 相关 举报
基于单片机ATC控制的篮球计分器课程设计报告.docx_第1页
第1页 / 共22页
基于单片机ATC控制的篮球计分器课程设计报告.docx_第2页
第2页 / 共22页
基于单片机ATC控制的篮球计分器课程设计报告.docx_第3页
第3页 / 共22页
基于单片机ATC控制的篮球计分器课程设计报告.docx_第4页
第4页 / 共22页
基于单片机ATC控制的篮球计分器课程设计报告.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

基于单片机ATC控制的篮球计分器课程设计报告.docx

《基于单片机ATC控制的篮球计分器课程设计报告.docx》由会员分享,可在线阅读,更多相关《基于单片机ATC控制的篮球计分器课程设计报告.docx(22页珍藏版)》请在冰豆网上搜索。

基于单片机ATC控制的篮球计分器课程设计报告.docx

基于单片机ATC控制的篮球计分器课程设计报告

课程设计报告

设计课题:

单片机——篮球计分器

 

专业班级:

学生姓名:

指导教师:

 

宁波技师学院电气技术系

二零一三年9月

摘要

进入21世纪,伴随着电子,信息通信技术地应用与普及开发,人们对电子技术地要求也越来越高.目前嵌入式单片机渗透到我们生活地各个领域,按照历史性、本质性普遍性要求,嵌入式系统应定义为:

“嵌入到对象体系中地专用计算机系统”.对于嵌入式即可分软件部分和硬件部分.以MCU为核心,就是各种各样地单片机,是嵌入式硬件部分地实现方式之一,它主要是因为把处理器和存储器等部件集成在一块芯片上.在探索单片机地发展道路时,有过两种模式,即“Σ模式”与“创新模式”.“Σ模式”将通用计算机系统中地基本单元进行裁剪后,集成在一个芯片上,构成单片微型计算机“创新模式”则完全按嵌入式应用要求设计全新地,满足嵌入式应用要求地体系结构、微处理器、指令系统、总线方式、管理模式等.Intel公司地MCS-48、MCS-51就是按照创新模式发展起来地单片形态地嵌入式系统.MCS-51是在MCS-48探索基础上,进行全面完善地嵌入式系统,成为单片嵌入式系统地典型结构体系.

体育比赛计分器是对体育比赛过程中所产生地比分等数据进行快速采集记录、加工处理、传递利用地工具.篮球比赛地计分器是一种得分类型地工具.它由计分器等多种电子设备组成.虽然篮球比赛中很早就开始研究应用了电子计分器,通常都是利用模拟电子器件、数字电子器件或是模拟、数字混合组成地,其稳定性和高准确度计分仍存在一些问题.以单片机为核心地篮球比赛计分器,计分准确,具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特地优点.

 

目录

一总体设计方案1

1.1系统设计方案1

1.2系统结构框图1

二系统硬件设计2

2.1晶振电路2

2.2复位电路3

2.3数码管电路4

2.4LED指示电路5

2.5按钮加分电路..............................................................................................................6

三软件设计......................................................................................................................7

3.1主流程图......................................................................................................................7

3.2程序图..........................................................................................................................9

四制作与调试................................................................................................................18

五结论............................................................................................................................19

六致谢............................................................................................................................20

附录1系统实物原来图.................................................................................................21

2实验原理图...................................................................................................................23

3系统仿真图...................................................................................................................24

4PCB原理图...................................................................................................................25

5分工表...........................................................................................................................29

一总体设计方案

1.1系统设计方案

篮球计分系统主要由:

复位电路、晶振电路、数码管显示电路、LED灯指示输赢电路、甲乙加分电路等部分电路组成.

各器件地选用:

1单片机地选用:

单片机芯片选用AT89C51.

2数码管地选用:

数码管选用四位共阴极数码管和两位共阳极数码管.

3晶振地选用:

晶振选用地是12MHZ.

1.系统结构框图

图1..2-1系统结构框图

二系统硬件设计

复位电路、晶振电路、数码管显示电路迪电路组成.

2.1晶振电路

图2.1-1晶振电路

内部方式时钟电路如图2.1-1所示.在XTAL2和XTAL2引脚上外接定时元件,内部振荡电路就产生自激振荡.

 

2.2复位电路

 

图2.2-1按键复位电路

按键手动复位有电平方式和脉冲方式.而此次选用地便是按键电平复位.按键电平复位是通过复位端经电阻与Vcc接通而实现地.电路如图2.2-1所示.

2.3数码管电路

图2.3-1数码管电路

注:

此电路可以十分清楚地体现出当前比赛地分数指示.

图2.3-2数码管

2.4LED指示电路

图2.4-1LED指示电路

注:

此电路可以明显地反映出LED地运行状态(输赢状态),如图2.4-1所示.

 

2.5按钮加分电路

 

图2.5-1按钮加分电路

注:

此电路可以选择甲、乙地加分,如图2.5-1所示.

三软件设计

3.1主程序流程图

 

图3.1-1流程图

注:

篮球计分程序根据流程图所写,根据按钮是否按下跳起来判断是否执行下一条令,从而使LED指示灯与数码管显示出值.

3.2程序图

;篮球记分器

ORG0000H

JMPLOOP3;主程序

ORG0003H

JMPKAI;外部中断0:

判断输赢

ORG0013H

JMPJIAO;外部中断1:

比分交换

LOOP3:

SETBEA;中断开启

SETBEX0

SETBIT0

SETBEX1

SETBIT1

MOVP0,#0FFH;赋初值

MOVP1,#0FFH

MOVP2,#00H

MOVP3,#0CH

MOVA,#00H

MOVR5,#00H

MOVR1,#00H

MOVR2,#00H

MOVR3,#00H

MOVR4,#00H

MOVR6,#00H

CLRCY

LOOP2:

MOVDPTR,#TABLE1;比分显示开始扫描

LCALLDAY1;扫描左移

MOVA,R1;左边比分十位数值传送到P2口

MOVCA,@A+DPTR

MOVP2,A

LCALLDAY2;延时扫描时间

LCALLDAY1;扫描左移

MOVDPTR,#TABLE2;左边比分个位数值传送到P2口

MOVA,R2

MOVCA,@A+DPTR

MOVP2,A

LCALLDAY2;延时扫描时间

LCALLDAY1;扫描左移

MOVDPTR,#TABLE3

MOVA,R3

MOVCA,@A+DPTR

MOVP2,A

LCALLDAY2;延时扫描时间

LCALLDAY1;扫描左移

MOVDPTR,#TABLE4

MOVA,R4

MOVCA,@A+DPTR

MOVP2,A

LCALLDAY2;延时扫描时间

LCALLDAY1;扫描左移

MOVDPTR,#TABLE5;右边比分十位数值传送到P2口

MOVA,R5

MOVCA,@A+DPTR

MOVP2,A

LCALLDAY2;延时扫描时间

LCALLDAY1;扫描左移

MOVDPTR,#TABLE6;右边比分个位数值传送到P2口

MOVA,R6

MOVCA,@A+DPTR

MOVP2,A

LCALLDAY2;延时扫描时间

MOVP1,#0FFH

CLRCY

JNBP3.0,LOOP20;判断左边有没有加1分键按下

LCALLDAY

JBP3.0,$;去抖动

LCALLDAY

JBP3.0,$

MOVA,#01;左边加1分并判断分数有没有超过十分

ADDA,R2

MOVR2,A

MOVB,#10

DIVAB

MOVR2,B

MOVB,R1;左边个位数值超过10分,十位数加上原来地十位数值传到R1

ADDA,B

MOVR1,A

JMPLOOP2

LOOP20:

JNBP3.1,LOOP21;判断左边有没有加2分键按下

LCALLDAY

SETBP0.0

SETBP0.1

SETBP0.2

JBP3.1,$;去抖动

LCALLDAY

JBP3.1,$

MOVA,#2;左边加2分并判断分数有没有超过十分

ADDA,R2

MOVR2,A

MOVB,#10

DIVAB

MOVR2,B

MOVB,R1;左边个位数值超过10分,十位数加上原来地十位数值传到R1

ADDA,B

MOVR1,A

JMPLOOP2

LOOP21:

JNBP3.4,LOOP22;判断左边有没有加3分键按下

LCALLDAY

SETBP0.0

SETBP0.1

SETBP0.2

JBP3.4,$;去抖动

LCALLDAY

JBP3.4,$

MOVA,#3;左边加3分并判断分数有没有超过十分

ADDA,R2

MOVR2,A

MOVB,#10

DIVAB

MOVR2,B

MOVB,R1;左边个位数值超过10分,十位数加上原来地十位数值传到R1

ADDA,B

MOVR1,A

JMPLOOP2

LOOP22:

JNBP3.5,LOOP30;判断右边有没有加1分键按下

LCALLDAY

SETBP0.0

SETBP0.1

SETBP0.2

JBP3.5,$;去抖动

LCALLDAY

JBP3.5,$

MOVA,#01;右边加1分并判断分数有没有超过十分

ADDA,R6

MOVR6,A

MOVB,#10

DIVAB

MOVR6,B

MOVB,R5;右边个位数值超过10分,十位数加上原来地十位数值传到R5

ADDA,B

MOVR5,A

JMPLOOP2

LOOP30:

JNBP3.6,LOOP31;判断右边有没有加2分键按下

LCALLDAY

SETBP0.0

SETBP0.1

SETBP0.2

JBP3.6,$;去抖动

LCALLDAY

JBP3.6,$

MOVA,#2;右边加2分并判断分数有没有超过十分

ADDA,R6

MOVR6,A

MOVB,#10

DIVAB

MOVR6,B

MOVB,R5;右边个位数值超过10分,十位数加上原来地十位数值传到R5

ADDA,B

MOVR5,A

JMPLOOP2

LOOP31:

JNBP3.7,LOOP32;判断右边有没有加3分键按下

LCALLDAY

SETBP0.0

SETBP0.1

SETBP0.2

JBP3.7,$;去抖动

LCALLDAY

JBP3.7,$

MOVA,#3;右边加3分并判断分数有没有超过十分

ADDA,R6

MOVR6,A

MOVB,#10

DIVAB

MOVR6,B

MOVB,R5;右边个位数值超过10分,十位数加上原来地十位数值传到R5

ADDA,B

MOVR5,A

JMPLOOP2

LOOP32:

JMPLOOP2

DAY1:

MOVA,P1;扫描左移

RLCA

MOVP1,A

RET;跳转返回

DAY2:

MOVR7,#10;扫描时间

LOOP5:

MOVR0,#250

LOOP:

NOP

NOP

DJNZR0,LOOP

DJNZR7,LOOP5

RET;跳转返回

TABLE1:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;左边十位数值地表格

TABLE2:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;左边个位数值地表格

TABLE3:

DB40H

TABLE4:

DB40H

TABLE5:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;右边十位数值地表格

TABLE6:

DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;右边个位数值地表格

 

KAI:

SETBP0.0;判断输赢先赋初值

SETBP0.1

SETBP0.2

LCALLDAY

JNBP0.7,LOOP34

JMPLOOP33

LOOP34:

PUSHACC;开始判断

MOVA,#10

MOVB,R1

MULAB

MOVB,R2

ADDA,B

MOV100H,A;用乘法和加法算出左边地数值并传到100H

MOVA,#10

MOVB,R5

MULAB

MOVB,R6

ADDA,B

MOV110H,A;用乘法和加法算出右边地数值并传到100H

MOVA,100H

CJNEA,110H,LOOP201;开始比较

CLRP0.1;右边赢P0.1亮

POPACC

SETBP0.7

JMPLOOP33

LOOP201:

JNCLOOP200;平局P0.2灯亮

CLRP0.2

SETBP0.7

POPACC

JMPLOOP33

LOOP200:

CLRP0.0;左边赢P0.0亮

SETBP0.7

POPACC

LOOP33:

RETI

JIAO:

PUSHACC;2边比分交换输赢灯赋初值

SETBP0.0

SETBP0.1

SETBP0.2

MOVA,R1

XCHA,R5

MOVR1,A

MOVA,R2

XCHA,R6

MOVR2,A

POPACC

RETI

DAY:

MOVR7,#50;去抖动延时

D1:

MOVR0,#250

DJNZR0,$

DJNZR7,D1

RET

四制作与调试

 

根据自己地设计题目,用Protel99SE软件绘出电子草图,交与指导老师检查.之后在Proteus软件里搭出电子图,并且写出程序,放于Proteus软件里进行仿真,并且通过.通过以后在Protel99SE软件里把PCB板制作,同时要注意板子地外观,和元器件地摆放,使之达到理想状态.

PCB板子做好以后,把图打印在热转印纸上,之后再和板子通过热转印机把图转印至板子上.在把板子放置腐蚀液里,把露铜部分经行腐蚀,留下被覆盖地部分.

腐蚀好之后,用清水和砂纸打磨,露出铜线.然后用机子把洞打出来,把元器件焊在上面.

在调试时,按步骤一步一步地经行,在出现问题时,应及时记录,并且及时修改.

完全调试成功后,叫老师看过后上交.

五结论

 

这次地设计是完全自足完成地,但是已经遇到不少困难,在老师和同学地帮助下,我也比较顺利地完成了!

在此期间,也累积下了不少地经验,相信在之后地实习中我可以更加地得心应手.但是期间犯下地错误也要去改正,这次实习也将结束,希望下次可以更好地去完成每一次任务!

六致谢

在这次实习里,感觉帮助给我地同学,已经给予我们帮助地两位指导老师,没有你们地真诚相助,我不可能完成地这么顺利,在次,我表示深深地感谢.

附录1实物图

 

2实验原理图

 

 

3系统仿真图

 

4PCB原理图

 

5分工表

 

组成员

小组分工

工作

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1