《2022年电科班号单片机课程方案》由会员分享,可在线阅读,更多相关《2022年电科班号单片机课程方案(30页珍藏版)》请在金锄头文库上搜索。
1、个人资料整理仅限学习使用湖南工程学院课程设计任务书课程名称单片机原理与应用课题基于单片机比赛计分器设计专业班级 电子科学与技术0802 班学生姓名周里学号 200801180210 指导老师汪 超 、李晓秀、赵葵银审批任务书下达日期 2018 年 2 月 24 日任务完成日期2018 年 3 月 7 日精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 30 页个人资料整理仅限学习使用设计内容与设计要求设计内容:设计一个甲,乙两队用的比赛计分器,要求实现以下功能:1、给甲,乙两队分别设置1 个加分按钮,按一下能分别实现加一分。2、给甲,乙两
2、队分别设置1 个减分按钮,按一下能分别实现减一分。3、设置一个清零按钮,按一下能实现清零4、设置预置分按钮。5、设置一个加减一分、两分和三分的切换按钮。设计要求:1、设计方案要合理、正确;2、系统硬件设计及焊接制作;3、系统软件设计及调试;4、系统联调;5、写出设计报告。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 30 页个人资料整理仅限学习使用主要设计条件1、MCS-51单片机实验操作台1 台;2、PC机及单片机调试软件;3、单片机应用系统板1 套;4、制作工具 1 套;5、系统设计所需的元器件。说明书格式1.封面2.课程设计任务
3、书3.目录4.系统总体方案设计5.系统硬件设计6.软件设计 包括流程图)7.系统的安装调试说明8、 总结9、参考文献10、附录 源程序清单及硬件原理图等);11、课程设计成绩评分表。进 度 安 排精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 30 页个人资料整理仅限学习使用设计时间为两周第一周星期一、上午:布置课题任务,讲课及课题介绍下午:借阅有关资料,总体方案讨论星期二、确定总体设计方案星期三、硬件模块方案设计星期四、软件模块方案设计星期五、设计及调试第二周星期一、设计及调试星期二、设计及调试星期三、总调星期四、写说明书星期五、上午
4、:写说明书,整理资料下午:交设计资料,答辩参 考 文 献1 、微型计算机原理及应用许立梓编机械工业出版社 2002 2 、微型计算机接口技术及应用刘乐善编华中理工大学出版社2000 3 、计算机硬件技术基础实验教程邹逢兴编高等教育出版社2000 4 、 16 位微型计算机原理接口及其应用周佩玲编中国科学技术大学出版社2000 5 、微型计算机原理与接口技术吴秀清编中国科学技术出版社2001 6 、微型计算机接口技术邓亚平编清华大学出版社 2001 7 、单片机原理及及应用王迎旭编机械工业出版社 2001 8 、单片机应用程序设计技术周航慈著北京航空航天大学出版社 2002 精选学习资料 - -
5、 - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 30 页个人资料整理仅限学习使用9 、单片机实用技术问答谢宜仁主编人民邮电出版社 2002 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 30 页个人资料整理仅限学习使用目录第 1 章系统概述 11.1 系统功能 11.2 设计内容及要求11.2.1 设计内容 11.2.2 设计要求 21.3 按键设置 2第 2 章总体方案设计32.1 总体系统框图 32.2 系统组成 3第 3 章系统硬件设计53.1 控制电路设计 53.1.1 复位电路 53.1
6、.2 时钟输入电路 53.1.3 发光二极管显示电路63.1.4 矩阵键盘电路 73.1.5 数码管显示电路 7第 4 章软件设计 94.1 主程序设计 94.2 各子程序设计 104.2.1 初始化子程序 104.2.2 延时子程序 104.2.3 按键判断之程序 114.2.4 数码管显示之程序11第 5 章硬件系统的制作与调试135.1 复位实现两队分值清零135.2 预置分值 135.3 分值加减实现 14总结和体会 16参考文献 17附录 A 系统硬件总电路图 18附录 B 程序清单 19精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6
7、 页,共 30 页个人资料整理仅限学习使用第 1 章系统概述1.1 系统功能设计一个甲、乙两队比赛计分器,主要用于各种体育比赛记录分数。采用键盘作为输入,使用LED 数码管进行显示。基于以上思路,本次设计使用80C51 实现一基于单片机的电子计分器的设计,其主要具有如下功能:1)用户两个按钮对各队的分数加减操作,本系统中可分别对两队比分进行加 1、加 2、加 3 和减 1,减 2,减 3 操作,并且可以同步显示对应的 LED灯亮。2)比分通过8 个 8 段共阴极数码管显示器进行显示,每队比分显示三位,中间使用了两位显示分隔符,实际只使用数码的了8 段中 7 段。4)具有复位功能,通过复位键实现
8、。5)预置分按钮可以实现直接置入一个相同分数,然后通过加减可以达到置入想要显示的两队的初始分数。1.2 设计内容及要求1.2.1 设计内容1)分别给甲乙队设置一个分数控制按钮,此按钮有6 种状态,分别为 -3,-2,-1,+1,+2,+3。2)设置一个切换状态按钮,可以分别切换每一种状态,然后每一种状态会有相对应的发光二极管点亮以区别是哪种状态。3)设置一个复位按钮,按下实现甲、乙队总分清零显示4)设置一个预置分按钮,用于直接赋给给甲乙比分,这里直接赋值50:50,再可以通过加减按键实现所要赋给的分值。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第
9、 7 页,共 30 页个人资料整理仅限学习使用1.2.2 设计要求(1)方案合理、正确,系统稳定、可靠。(2)软件设计要求尽可能精练、简短和运行可靠。(3)硬件电路要求简单明了,以节约成本。1.3 按键设置本系统设计中一共用到了5 个按钮,分别为:清零按钮、甲队分数控制按键,乙队分数控制按键,切换状态按钮和预置比分值按键。每个按钮的功能如下:控制甲的按键:实现 -3、-2、-1、+1、+2、+3功能;控制乙的按键:实现 -3、-2、-1、+1、+2、+3功能;分值切换按键:实现甲乙的各种状态的切换;预置比分按键:预置甲乙的比分,这里是50比 50;复位清零按键:实现甲乙比分清零;精选学习资料
10、- - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 30 页个人资料整理仅限学习使用第 2 章总体方案设计2.1 总体系统框图本系统的设计是以80C51 单片机为核心,配以一定的外围电路和软件,实现比赛计分器的功能。利用了8 个 8 段共阴级数码管显示器 . 其中甲乙两个分值各用3 个数码管显示分值,另外两个显示分隔符。采用动态显示输出比分,用户信息输入则采用44 矩阵式键盘,本系统中使用的是独立的键盘。状态切换时候用不同的发光二极管的对应显示切换到了不同的分值。系统设计方案的硬件电路设计框图如图2-1 所示。图 2-1 硬件电路设计2.2 系统组成系统
11、由硬件部分和软件部分组成。硬件电路由复位按键、80C51 单片机、矩阵键盘和 6 个发光二极管, 8 个数码管等组成。软件部分主程序主要由键盘识别、键值处理、8 位 8 段共阴极 LED显示器扫描显示子程序组成。软件设计主要有四个部分:信息输入、信息处理、显示输出。信息输入时采用键盘来实现,所以需要检测键盘有无精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 30 页个人资料整理仅限学习使用按键的子程序;信息处理需要对用户通过键盘输入的不同信息进行辨别并执行相应的处理;显示输出采用动态输出,从而达到设计的目的。精选学习资料 - - - -
12、 - - - - - 名师归纳总结 - - - - - - -第 10 页,共 30 页个人资料整理仅限学习使用第 3 章系统硬件设计3.1 控制电路设计3.1.1 复位电路如图 3-1 所示,按钮与单片机的RST引脚相连,当每次按下该按钮后,系统将通过软件实现对计分实现清零功能。这里我选择的是使用电平复位。跳冒是插在1、2 端口。复位电路图如下图3-1 所示。图 3-1 复位硬件电路图3.1.2 时钟输入电路一般时钟电路分为内部时钟方式和外部时钟,这里我采用的是内部时钟方式。时钟信号输入电路如下图3-2 所示。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - -
13、 - -第 11 页,共 30 页个人资料整理仅限学习使用图 3-2 时钟输入电路3.1.3 发光二极管显示电路本系统所使用得单片机上在低电平时LED点亮,高电平时 LED熄灭。这里只用了 6 个灯,从左到右依次指示处理的是-3,-2,-1,+1,+2,+3 分值。实际的硬件电路图如下图3-3 所示。图 3-3 LED 灯硬件图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 12 页,共 30 页个人资料整理仅限学习使用3.1.4 矩阵键盘电路本系统所使用的单片机外围的键盘电路是可以有独立和矩阵键盘两种使用情况,这里我是做独立键盘使用的。图上S1-
14、S4 可以配置成独立按键,通过跳帽J11 切换, J11 有三根针组成,图上跳到左端就可以作为独立按键使用。本设计中使用了S1,S2,S3,S4,这里 S1 是甲分数的控制键, S2 是乙分数的控制键, S3 是加减分值切换键。 S4 是预置分数按键。按键使用中有消抖处理。矩阵键盘电路图如下图3-4 所示。图 3-4 矩阵键盘电路3.1.5 数码管显示电路本系统使用的是8 位 8 段数码管显示电路,采用的是动态显示,段选是先通过了一个74HC573锁存器再连接在8 个段选信号输入的,这里也可以不接锁存器,可以有跳帽切换的;位选是先通过74138 芯片进行精选学习资料 - - - - - - -
15、 - - 名师归纳总结 - - - - - - -第 13 页,共 30 页个人资料整理仅限学习使用译码输出接到 8 个位选输入端口的。段选是接的单片机的P0 口,位选是接单片机的P2 口的 P2.0、P2.1、P2.2 三个端口。实际的数码管显示电路图如下图3.1.5-1所示。实际本设计中是使用最低三位为显示甲队的分值,最好三位是显示乙队的分值,中间两位是显示的横杠分隔符。图 3-5 数码管显示电路图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 14 页,共 30 页个人资料整理仅限学习使用第 4 章软件设计4.1 主程序设计本系统软件设计采用
16、单片机汇编语言设计,主要的语言模块有:初始化模块、按键判断模块、数码管显示模块、延时模块组成。程序设计的流程图如下图 4-1 所示。图 4-1 软件设计的流程图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 15 页,共 30 页个人资料整理仅限学习使用4.2 各子程序设计4.2.1 初始化子程序NA EQU 24H NB EQU 25H 。甲乙两队分数TEMP EQU 26H 。存放切换分数 -3-2-1123 TEMP1 EQU 27H JIAfen BIT P3.0 。甲分控制位Yifen BIT P3.1 。乙分控制位SWITCH BIT
17、P3.2 。分值切换控制位Zhifen BIT P3.3 。预置分值控制位ORG 0000H SJMP START START:MOV DPTR,#TABLE 。将表首址送 DPTR MOV NA,#0 MOV NB,#0 。比分自动清零MOV TEMP1,#1 。循环变量MOV TEMP,#-3 。开机默认加减分值为 -3 MOV P1,#11111110b 。分值显示灯亮第一个灯初始化程序是用来对各定义的变量初始化的,每一次主程序执行之前都要先执行初始化程序以保证变量的值为初值。4.2.2 延时子程序DELAY:MOV R6,#10 E:MOV R7,#300 DJNZ R7,$ DJNZ
18、 R6,E RET 这个延时程序设计是在硬件调试过程中更改数据得来的,不同的硬件延 时 应 选 择 适 合 的 延 时 时 间 。 延 时 程 序 延 时 时 间 计 算 式 :精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 16 页,共 30 页个人资料整理仅限学习使用1T+1T+(*10+2T。4.2.3 按键判断之程序A1:ACALL DISPLAY 。调显示函数 JNB JIAfen,S1 JNB Yifen,S2 JNB SWITCH,S3 JNB Zhifen,S4 LJMP A1 。判断按下的控制键这里只是按键选择程序,实际上转移到各
19、自的处理程序中就有按键的消抖处理和对应按键信号所要执行的处理程序。4.2.4 数码管显示之程序DISPLAY:MOV A,NA 。甲队比分显示 MOV B,#100 。将 8 位二进制转换位十进制 DIV AB MOV P2,#0 MOVC A,A+DPTR 。送段码 MOV P0,A 。显示甲比分比分百位 LCALL DELAY MOV A,B MOV B,#10 DIV AB MOV P2,#1 MOVC A,A+DPTR MOV P0,A LCALL DELAY MOV A,B MOV P2,#2 MOVC A,A+DPTR MOV P0,A 精选学习资料 - - - - - - - -
20、 - 名师归纳总结 - - - - - - -第 17 页,共 30 页个人资料整理仅限学习使用 LCALL DELAY MOV P2,#3 MOV P0,#40H 。显示分隔符 LCALL DELAY 上面是甲队分值对应数码管显示函数的代码,对段选P0 口和位选 P2 口的处理就可以实现要显示的分值。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 18 页,共 30 页个人资料整理仅限学习使用第 5 章硬件系统的制作与调试单片机语言程序是基于Keil uVision2编程软件编写的汇编程序。在 keil内建立工程后建立汇编文件,编写MCS-51程
21、序,进过不断对程序的更改和调试。最后生成我们想要的HEX文件,再用单片机程序下载软件 STC_ISP_V3.1进行对十六进制的可下载文件进行下载到单片机上,将运行结果和实验现象与预定效果进行比较,再反过来对程序进行修改以达到要求。最后经过不断的改进就可以实现设计的目的。5.1 复位实现两队分值清零下图 5-1 是清零时所拍摄的硬件显示图,可以看出它实现了清零的功能。图 5-1 复位清零硬件效果图5.2 预置分值这里的预置分值的功能是当预置分值按键按下后,两个队的分值显示都会变为50 分,然后如果要调整,就可以通过不同的分值加减处理得到所要的分值比。实际的效果如下图5-2 所示。精选学习资料 -
22、 - - - - - - - - 名师归纳总结 - - - - - - -第 19 页,共 30 页个人资料整理仅限学习使用图 5-2 预置分值功能硬件实现摄像图5.3 分值加减实现下面是显示的两个不同的分值比信号的硬件效果摄像显示图,如下图 5-3,图 5-4 所示,可以看出本系统设计的加减功能是可行的,完全可以实现比赛计分的功能。图 5-3 变化前分值显示图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 20 页,共 30 页个人资料整理仅限学习使用图 5-4 通过加减变化后显示图精选学习资料 - - - - - - - - - 名师归纳总结
23、- - - - - - -第 21 页,共 30 页个人资料整理仅限学习使用总结和体会通过此次课程设计让我知道设计开始,我们首先理清了自己的思路,整理出了总体方案,然后设计出硬件原理图,接着就根据硬件来设计软件,最后就是调试了。在这次设计中困难最大的就是调试,收获最多的也是调试,因为调试的时候你必须对程序相当的熟悉,对每一条指令都了如指掌,并且硬件的连接也要清晰的印在脑海里,只有这样你才能让软件和硬件结合在一起,并且让他们按照你的想法工作。本次调试中我发现了自己软件设计中的延时程序的延时时间是不够的,当然在更改之后就弄清楚其实实质行的问题是按键消抖我只进行了前段的消抖,在等键释放的程序我就没有
24、考虑,导致了调试中,按住分值切换键后,指示不同分值的流水灯就不断的循环点亮了。再者在调试中还对所用到的器件有了更深的认识和了解,在以后的设计中就可以熟练的使用了。整个的设计过程中我懂得了许多东西, 当遇到一不了的问题,跟同伴一起商量、合作,或许能收到事半功倍的效果。不管学什么,一定要打好基础,学好、学精通,但光有理论还是不行的,还得能为己所用。更重要的是要培养了独立思考和设计的能力,增强对知识应用的信心。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 22 页,共 30 页个人资料整理仅限学习使用参考文献1 单片机原理与应用王迎旭编机械工业出版社2
25、 51 系列单片机原理与接口技术实验指导周向红编湖南工程学院3 微型计算机原理及应用许立梓编机械工业出版社 2002 4 微型计算机接口技术及应用刘乐善编华中理工大学出版社 2000 5 计算机硬件技术基础实验教程邹逢兴编高等教育出版社 2000 6 16 位微型计算机原理接口及其应用周佩玲编中国科技大学出版社 2000 7 微型计算机原理与接口技术吴秀清编中国科学技术出版社2001 8 微型计算机接口技术邓亚平编清华大学出版社 2001 9 单片机原理及及应用王迎旭编机械工业出版社 2001 10 单片机应用程序设计技术周航慈著北京航空航天出版社2002 11 单片机实用技术问答谢宜仁 主编
26、人民邮电出版社 2002 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 23 页,共 30 页个人资料整理仅限学习使用附录 A 系统硬件总电路图附录图 总体实物硬件图精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 24 页,共 30 页个人资料整理仅限学习使用附录 B 程序清单NA EQU 24H NB EQU 25H 。甲乙两队分数TEMP EQU 26H 。存放切换分数 -3-2-1123 TEMP1 EQU 27H JIAfen BIT P3.0 。甲分控制位Yifen BIT P3.1 。乙分
27、控制位SWITCH BIT P3.2 。分值切换控制位Zhifen BIT P3.3 。预置分值控制位ORG 0000H SJMP START START:MOV DPTR,#TABLE 。将表首址送 DPTR MOV NA,#0 MOV NB,#0 。比分自动清零MOV TEMP1,#1 。循环变量MOV TEMP,#-3 。开机默认加减分值为 -3 MOV P1,#11111110b 。分值显示灯亮第一个灯A1:ACALL DISPLAY 。调显示函数 JNB JIAfen,S1 JNB Yifen,S2 JNB SWITCH,S3 JNB Zhifen,S4 LJMP A1 。判断按下的
28、控制键S1:LCALL DELAY1 。去抖动 JB JIAfen,A1 。确认按键 MOV A,NA ADD A,TEMP MOV NA,A C0:JB JIAfen,A1 。等键释放 LCALL DISPLAY 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 25 页,共 30 页个人资料整理仅限学习使用 SJMP C0 S2:LCALL DELAY1 。去抖动 JB Yifen,A1 MOV A,NB ADD A,TEMP MOV NB,A C1:JB Yifen,A1 。等键释放 LCALL DISPLAY SJMP C1 JB0: JB
29、SWITCH,A1 RET S4:LCALL DELAY1 。去抖动 JB Zhifen,A1 MOV NA,#50 MOV NB,#50 C2:JB Zhifen,A1 。等键释放 LCALL DISPLAY SJMP C2 S3: LCALL DELAY1 。去抖动 JB SWITCH,A1 INC TEMP1 MOV A,TEMP1 D00: CJNE A,#2,D0 MOV TEMP,#-2 LCALL JB0 。等键释放 MOV P1,#11111101b 。这里执行的是加 -2的命令 lJMP D00 D0:CJNE A,#3,D1 MOV TEMP,#-1 LCALL JB0 M
30、OV P1,#11111011b 。这里执行的是加 -1的命令 lJMP D0 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 26 页,共 30 页个人资料整理仅限学习使用D1: CJNE A,#4,D2 MOV TEMP,#1 LCALL JB0 MOV P1,#11110111b 。这里执行的是加1 的命令 lJMP D1 D2: CJNE A,#5,D3 MOV TEMP,#2 LCALL JB0 MOV P1, #11101111b 。这里执行的是加2的命令 lJMP D2 D3:CJNE A,#6,D4 MOV TEMP,#3 LCAL
31、L JB0 MOV P1,#11011111b 。这里执行的是加3的命令 lJMP D3 D4:CJNE A,#7,D5 MOV TEMP1,#1 MOV TEMP,#-3 LCALL JB0 MOV P1,#11111110b 。这里执行的是加 -3 的命令 lJMP D4 D5: LJMP A1 。分值切换循环 -3,-2,-1,1,2,3 。* * 显示函数DISPLAY:MOV A,NA 。甲队比分显示精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 27 页,共 30 页个人资料整理仅限学习使用 MOV B,#100 。将 8位二进制转换位
32、十进制 DIV AB MOV P2,#0 MOVC A,A+DPTR 。送段码 MOV P0,A 。显示甲比分比分百位 LCALL DELAY MOV A,B MOV B,#10 DIV AB MOV P2,#1 MOVC A,A+DPTR MOV P0,A LCALL DELAY MOV A,B MOV P2,#2 MOVC A,A+DPTR MOV P0,A LCALL DELAY MOV P2,#3 MOV P0,#40H 。显示分隔符 LCALL DELAY 。* 乙队比分显示 MOV A,NB MOV B,#100 DIV AB MOV P2,#5 MOVC A,A+DPTR MOV
33、 P0,A LCALL DELAY MOV A,B MOV B,#10 DIV AB MOV P2,#6 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 28 页,共 30 页个人资料整理仅限学习使用 MOVC A,A+DPTR MOV P0,A LCALL DELAY MOV A,B MOV P2,#7 MOVC A,A+DPTR MOV P0,A LCALL DELAY MOV P2,#4 MOV P0,#40H LCALL DELAY RET TABLE:DB 3FH,06H,5BH,4FH,66H DB 6DH,7DH,07H,7FH,6F
34、H 。*延时程序DELAY:MOV R6,#10 E:MOV R7,#300 DJNZ R7,$ DJNZ R6,E RET DELAY1:MOV R6,#1000 F:MOV R7,#5000 DJNZ R7,$ DJNZ R6,F RET END 电气信息学院课程设计评分表项目评价优良中及格差精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 29 页,共 30 页个人资料整理仅限学习使用设计方案合理性与创造性10% )开 发 板 焊 接 及 其 调 试 完 成 情 况*10%)硬件设计或软件编程完成情况设计说明书质量(20%答辩情况 (10%完成任务情况(10%独立工作能力(10%出勤情况 (10%综 合 评 分指导教师签名: _ 日期:_ 注:表中标 *号工程是硬件制作或软件编程类课题必填内容;此表装订在课程设计说明书的最后一页。课程设计说明书装订顺序:封面、任务书、目录、正文、评分表、附件非 16K大小的图纸及程序清单)。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 30 页,共 30 页