《电子乒乓球单片机课程设计报告课件》由会员分享,可在线阅读,更多相关《电子乒乓球单片机课程设计报告课件(18页珍藏版)》请在金锄头文库上搜索。
1、大连民族大学机电工程学院自动化系单片机系统课程设计报告题 目:电子乒乓球专 业:自动化班 级:146班学生姓名:马玉明 马国昊指导教师:刘岩川 刘冠群设计完成日期: 2016年 12月30日课程设计任务书题目:电子乒乓球 课程设计时间: 2016.12.122016.12.30一、设计任务 二、设计内容及要求 系统设计的方案; 软件仿真电路实现; 需要的详细材料; 实验电路焊接与调试; 设计的性能指标; 撰写设计报告; 资料归档。三、设计重点四、课程设计进度要求 2016.12.1212.18 文献检索,原理图及PCB板设计; 2016.12.1912.20 程序设计,软件仿真,材料采购; 2
2、016.12.2112.23 硬件焊接调试; 2016.12.2412.28 软硬件联调; 2016.12.29报告撰写; 2016.12.30 成果验收,答辩;五、参阅书目1 郭天祥.新概念51单片机C语言教程M.北京:电子工业出版社,2009.2 胡汉才.单片机原理与接口技术M.北京: 清华大学大学出版社,2004.1-505.3 邢国泉. LM35温度传感器的温度特性及其应用J. 医疗设备信息.2007,11,25-28.4 薛国红,赵修斌,卢艳娥等.零漂与增益控制对量化的影响分析J.西安:空军工程大学,2008.目 录1任务分析和性能指标11.1任务分析11.2性能指标12 总体设计方
3、案12.1硬件方案12.2软件方案13 系统硬件设计23.1检测电路23.2控制电路24 系统软件设计24.124.224.325 调试及性能分析25.1 调试分析25.1.1 软件调试25.1.2 硬件调试25.1.3 系统功能调试35.2 性能分析3总 结3参考文献4附录1 元器件清单5附录2 调试系统照片61任务分析和性能指标1.1任务分析此次我们的设计任务是,用单片机开发板设计一个电子乒乓球。通过我们对乒乓球打法和规则的分析发现,它主要是实现两个人通过控制独立按键来控制流水灯的左右移动。但前提是,当流水灯移到某一方的时候,这一方必须且只能在超前或滞后0.5秒之内按下按键,否则对方得分并
4、且用数码管把分数显示出来。当某一方率先得满11分时,这方赢并且这方的数码管全亮8,蜂鸣器响。1.2性能指标 在规定时间内按下独立按键,来控制流水灯的左右移动。 通过按键按下的时间差来控制流水灯的流速。 在规定时间内没有按下按键时,对方得分用数码管显比分。 某一方率先得满11分这方赢并且蜂鸣器响。12总体方案设计2.1硬件方案通过对产品功能的分析,其硬件主要有LED灯、数码管、单片机最小系统、蜂鸣器等。16个LED灯我们通过单片机的P1端口来控制,用前四个端口控制LED灯的阴极,后四个端口通过控制PNP型三极管的基极电平,来间接控制LED灯的阳极,这样可以给LED灯充足的电流使其发光。4个数码管
5、是通过单片机P2口的前四个端口和P3端口来控制。前四个端口控制三极管的基极电流来间接控制数码管的阳极,P3端口控制数码管的阴极。这样可以给数码管充足的电流使其发光。蜂鸣器通过P2.7端口控制。P2.7端口直接控制三极管的的基极电流来间接控制蜂鸣器的阳极电流使其有充足的电流放光。2.2软件方案通过对系统功能的分析,其主要有发球判断、按键扫描、LED灯左右移动、接球判断、数码管计分、输赢判断、蜂鸣器响、延时等功能子程序组成。所以我们主要先进行每一个子程序的撰写,并进行调试,然后进行主程序的撰写并用主程序来调用这些子程序,然后进行总体调试。23硬件设计与实现3.1检测电路3.2控制电路34软件设计与
6、实现4.1 主程序ORG 0000HAJMP MAIN ORG 0030HMAIN: MOV DPTR,#TAB MOV 30H,#03H LCALL DISPLAY MOV P1,#00H CLR P2.7 LCALL DELAY1S MOV P1,#0FFH SETB P2.74.2子程序YF: MOV P1,#0EEH;点亮D1 JB P0.2,YF LCALL Delay50ms JB P0.2,YF LJMP LOOP1ZF: MOV P1,#77H;点亮D16 JB P0.0,ZF LCALL Delay50ms JB P0.0,ZF LJMP LP2LOOP1: LCALL LM
7、MOV TMOD,#01H MOV TL0,#00H MOV TH0,#4CH MOV R2,#10 SETB TR0 SETB ET0 SETB EA JNB P0.0,LP1 LJMP YOUDEFENLP1:LCALL Delay50ms JNB P0.0,LP2 LJMP YOUDEFENLP2:LCALL RMMOV TMOD,#01H MOV TL0,#00H MOV TH0,#4CH MOV R2,#10 SETB TR0 SETB ET0 SETB EA JNB P0.2,LP3LJMP ZUODEFEN LP3:LCALL Delay50ms JNB P0.2,LP4LJMP
8、 ZUODEFENLP4:LJMP LOOP1LM: JB P0.0,LM1 LJMP YOUDEFEN LM1:CLR P1.0 LCALL LOOP JB P0.0,LM2 LJMP YOUDEFEN LM2:CLR P1.1 LCALL LOOP JB P0.0,LM3 LJMP YOUDEFEN LM3:CLR P1.2 LCALL LOOP JB P0.0,LM4 LJMP YOUDEFEN LM4:CLR P1.3 LCALL LOOP RET LOOP: CLR P1.4 LCALL Delay50ms SETB P1.4 CLR P1.5 LCALL Delay50ms SET
9、B P1.5 CLR P1.6 LCALL Delay50ms SETB P1.6 CLR P1.7 LCALL Delay50ms MOV P1,#0FFH RETRM:JB P0.2,RM1 LJMP ZUODEFEN RM1:CLR P1.3 LCALL LOOP2 JB P0.2,RM2 LJMP ZUODEFEN RM2:CLR P1.2 LCALL LOOP2 JB P0.2,RM3 LJMP ZUODEFEN RM3:CLR P1.1 LCALL LOOP2 JB P0.2,RM4 LJMP ZUODEFEN RM4:CLR P1.0 LCALL LOOP2 RET LOOP2:
10、 CLR P1.7 LCALL Delay50ms SETB P1.7 CLR P1.6 LCALL Delay50ms SETB P1.6 CLR P1.5 LCALL Delay50ms SETB P1.5 CLR P1.4 LCALL Delay50ms MOV P1,#0FFH RETZUODEFEN: DEC 30H LCALL DISPLAY LJMP YF YOUDEFEN: INC 30H LCALL DISPLAY LJMP ZFYYING:MOV P3,#00HMOV P2,#0FFHCLR P2.2CLR P2.3LCALL DELAY1SLJMP YYINGZYING:
11、 MOV P3,#00HMOV P2,#0FFHCLR P2.0CLR P2.1LCALL DELAY1SLJMP ZYINGDISPLAY: MOV DPTR,#TAB MOV P3,#0FFH CLR A MOV A,30H cjne a,#0,DI1 LJMP ZYING DI1:CJNE A,#6H,DI LJMP YYING DI:MOVC A,A+DPTR MOV P3,A MOV P2,#00HRETDelay50ms: MOV R3,#200 Del2: MOV R4,#250 DJNZ R4,$ DJNZ R3,Del2RETDELAY1S: MOV R3,#5 D2:MOV
12、 R4,#250 D3:MOV R5,#200 DJNZ R5,$ DJNZ R4,D3 DJNZ R3,D2 RETTAB: DB 0Xc0,0Xf9,0Xa4,0Xb0,0X99,0X92,0X82END85 调试及性能分析5.1 调试分析5.1.1 软件调试在进行软件调试的时候,出现各种各样的错误。比如使用短跳转程序的时候,出现了超出其跳转的范围,所以就只能用长跳转来代替。其次就是地址没有定义或者是定义重复,也就是重名的现象,这只能修改其地址名字使之不要重名就可以了。上面那些错误是经常出现也是比较容易处理的,但是下面这些错误出现的概率虽不是很高,但是很难处理。例如,虽然程序逻辑上是真确的但是就是会提示有错误。这种错误常常就是一些隐藏的错误,必须对数据存储单元的大小和有没有被占用要进行分析,所以是比较难得。5.1.2 硬件调试完成了对硬件PCB图的设计,还要对硬件实物电路板进行调试。我们的电路板主要有LED灯、数码管、蜂鸣器、按键、电源开关、USB接口和复位按钮。首先我们编写了一个简单的调试程序,就是将单片机mcu的P0、P1、P2、P3端口全给低电平,理论上所有的LED灯和数码管都会亮还有蜂鸣器也会响。这些进过测试完好之后再进行独立按键的调试经过调试之后,发现除了数码管和电源开关外基本都好。电源通过观察电路板发现电源开关少了一根出线,