1、 1 比赛计分器课程设计比赛计分器课程设计 学号:学号: 姓名:姓名: 班级:班级: 1 第 1 章 系统概述 1.1 功能简述 本设计内容为比赛计分器,主要用于各种体育比赛记录分数。采用矩 阵式键盘作为输入,用户可分别对两队比分进行加 1、加 2、加 3 和减 1 减 2、减 3 操作,其加减 1,2,3 分可以通过加减 1 分、2 分和 3 分的切 换按钮实现,并通过指示灯显示其每次按下加减分键所加减的分值。可以 实现预置分。比分通过 4 个 8 段数码管显示器进行显示,每队比分显示 2 位。 第 2 章 总体方案设计 2.1 系统框图 系统框图,见图 2.1。 图 2.1 系统框图 89
2、C52 单片机 3x4 矩阵键盘 4 个 8 段数码显示器 发光二极管 复位电路 2 本设计用 80C51 单片机为核心,利用 4 个 8 段数码管显示器.采用动 态显示输出比分,用户信息输入则采用 34 矩阵式键盘。89C52 单片机 有 32 根 I/O 线,所以不用扩展 I/O 口。用一片单片机即可满足本设计的 输入输出。 2.2 软件总体设 软件设计主要分为 3 个部分:信息输入、信息处理、显示输出。主要 包括:显示函数,按键获取函数,按键处理函数,进制转换函数。信息输 入时采用矩阵式键盘来实现,所以需要检测键盘有无按键的子程序;信息 处理需要对用户通过键盘输入的不同信息进行辨别并执行
3、相应的处理; 显 示输出考虑到成本和电路体积,决定采用动态输出。 第 3 章 系统硬件设计 3.1 80C51 单片机 因为我们上课时学的是 MCS-51,所以就选择了 STC89C52 单片机,因 为它与 INTEI MCS-51 兼容,并且它们都具有相同的 CPU 和指令系统, 引脚功能兼容,容易掌握和使用。 3.2 34 矩阵式键盘 根据设计共需要 7 个按键,可采用 33 矩阵式键盘,但考虑到常用键 盘为 34 矩阵式键盘,而且方便以后功能的扩展和方便硬件的连接,所 以最终决定采用 34 矩阵式键盘作为输入。 3 3.3.1 数码管显示器数量选择 两个队,每队 2 位比分,每个显示器只
4、能显示一位,则至少需要采用 4 个 8 段数码管显示器。段数码管显示器采用动态显示输出比分。 3.3.2 数码管共阴共阳接法的选择 51 单片机 I/O 口输出高电平时输出的电流很小,数码管不会太亮; 因为本设计采用动态显示,单片机 I/O 口直接接数码管,所以决定采用共 阳数码管。 3.3.3 数码管驱动的选择 为了使数码管亮度达到要求,数码管的位选端需要驱动,因为单片机 I/O 口的高电平输出的电流很小, 需要驱动电路驱动, 从而增加显示亮度。 最简单便宜的驱动就是使用三极管,为低电平时开通,所以选择 PNP 型三 极管。 第 4 章 软件设计 4.1 主函数设计 主函数程序代码: MAIN: MOV NUMA,#0 MOV NUMB,#0 ;分数清零 4 MOV TEMP,#1 ;起始时的分数加 1 MOV P1,#0DFH ACALL TRAN M0: ACALL DISP ;调用显示函数 ACALL KEYSCAN ;调用按键获取函数 SJMP M0 ; 首先初始化将储存甲乙两对分数的内存单元清零,起始时 TEMP 置 1, 并使 LED