1、 嵌入式程序设计 课程设计 设计名称 秒表设计课程设计报告 专业班级 测控 09-2 学 号 姓 名 指导教师 2 Sr4eewwe 一:课程设计题目一:课程设计题目 秒表/时钟计时器 二:课程设计任务与要求:二:课程设计任务与要求: 利用 89C51 单片机设计秒表/时钟计时器,通过 LED 显示器显示秒十位和个 位,在设计过程中用一个存储单元作为秒计数单元,当一秒钟到来时,就让秒计 数单元加 1,当秒计数达到 60 时,就自动返回到 0,重新开始秒计数。 三:设计过程:三:设计过程: 1.设计原理:设计原理:此次课程设计题目是秒表/时钟计时器,由课程设计的要求和任务, 我采用的 C 语言编
2、程, 设计秒表要求一秒定时, 采用了定时器和 FOR 循环来定时, 其中一个软件一个硬件,会在方案论证中分析在 1 秒时采用的是硬件定时,即用 单片机内部的定时器 T0。先将时钟初始化,赋入初值 50ms 定时,循环 20 次来 进行 1 秒定时。 然后由定义的变量 second 来进行加一运算, 然后将其值通过 P1, P2 口在数码管上进行显示。其中数码管的显示时,我在程序中首先定义了一个 关于数码管显示的字形码定义,以便在显示时调用即可。 (1)方案论证:方案论证: 方案 1:在方案 1 中,我们所选用的是软件定时,即用 for 循环来定时 1 秒进行 显示的变化。 方案 2:在方案 2
3、 中,采用的是硬件定时,即用单片机内部的定时器 T0。先将 时钟初始化,赋入初值 50ms 定时,循环 20 次来进行 1 秒定时。 方案比较:我们从两方面进行两种方案的比较,第一,由于此次课程设计要求是 秒表,则在定时时要求比较精确,所以采用硬件的定时器定时时比较准确的。第 二,由于秒表的定时程序是很小的,在利用软件定时占用的 CPU 并不是很多, 不能显现出来,但真正大程序时会很占用资源的,所以在用定时中断过程中是非 常节省资源的。综合上述两种比较,我们选用了第二种方案。 (2 2)创新点创新点: a.在课程要求的基础上,我们做成的电路板上,用复位键来控制秒表计时的重新 开始,即清零。 b
4、.在以上设计的基础上,我们又重新设计了一个程序,基本原理没有变,只是将 3 秒表在到达 59 清零的瞬间向分的位数上进 1,程序将会在附录 3 中给出。 2.硬硬件系统框图与说明:件系统框图与说明: 首先,连接的是单片机 51 的最小系统,其中包括时钟电路,复位电路, 在此中包括的元器件在附录 3 中。我们所选用的数码管是共阴极的,置 1 时 导通,所以将单片机的 P1.0P1.7 连接数码管的 adp,P2 口同理。然后在数码 管秒表个十位的显示则由软件程序来控制。 3.软件主要模块流程图与说明:软件主要模块流程图与说明: 4 判 断 是 否中断 初始化 Count+ Count =20? N Y Second+ Second =59? Second=0 数码管显 示当前 值 N Y 等待 N Y 5 在真正应用时,我们的一秒定时是用定时中断的,但单片机的 T0 最长也不 能 1 秒定时,所以我们采用 50ms 定时循环 20