大三单片机课程设计:陈荣科的电子时钟与键盘控制实现

需积分: 9 11 下载量 40 浏览量 更新于2024-11-09 6 收藏 104KB DOC 举报
本篇文档是关于电气工程专业大三学生陈荣科完成的单片机电子时钟课程设计报告。该设计的目标是利用单片机的内置定时器和外部数码管,实现一个实时显示时、分、秒的电子时钟,并且具备时间调节功能,能够通过键盘对时间进行加减操作。 在实验要求部分,设计者被要求熟练掌握定时器的使用和编程技巧,特别是定时中断的处理。通过定时器每50毫秒中断一次,计数器在中断服务程序中运行,每计数20次即代表1秒,以此类推计算出分钟和小时。此外,还需学会数码管显示电路的驱动程序编程以及键盘电路的控制程序,这涉及到模块化编程和硬件连接。 硬件电路设计包括一个总电路图、键盘控制电路和显示部分电路图。通过这些电路图,我们可以看到如何连接单片机、定时器、数码管和键盘,以确保各个部分之间的正确通信和操作。 程序设计部分,首先创建了延迟子程序、BCD码转换子程序以及用于显示学号的子程序。接着,设计了一个定时器0中断服务程序,用于实时更新并显示时间。然后,添加了键盘控制子程序,允许用户对时间进行加减操作,最终整合所有子程序,形成完整的电子时钟和可调时钟程序。 汇编语言程序从0x0000H地址开始,设置了启动地址,并定义了主程序、定时器中断服务程序以及键盘控制子程序的入口点。在主程序中,初始化了定时器模式并设置定时器0的工作方式,为整个时钟系统的运行奠定了基础。 通过这个项目,陈荣科不仅提升了单片机编程技能,还锻炼了硬件设计和实际应用能力,实现了理论知识与实践操作的结合。这个设计不仅具有实用性,还能帮助学生深入理解单片机工作原理和嵌入式系统设计的基本流程。