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