《单片机实践报告》题目电子时钟设计专业电子信息工程学生姓名王健吉准考证号指导教师2014年10月一,课程设计的目的和意义课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。二,课程设计的基本任务利用89S51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入、蜂鸣报警等知识,设计一款单片机和简单外设控制的电子时钟。三,主要功能要求1)使用6位数码管,前两位显示小时(24小时制),中间两位显示分钟,后两位显示秒。时钟每走1秒,秒数码管加1显示,60秒后分钟数码管加1显示,60分钟后小时数码管加1显示。2)设计89S51单片机最小系统3)掌握使用Protel99绘制原理图和布板的过程、方法和技巧。4)掌握单片机开发软件(KeilC51或Wave)的使用和调试。5)编写并调试单片机定时及其中断程序,以实现电子时钟的功能。6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。7)掌握硬件和软件联合调试的方法。8)完成系统硬件电路的设计和制作。9)完成系统程序的设计。10)完成整个系统的设计、调试和制作。11)完成课程设计报告。四,整体设计框图及整机概述整体设计框图整机概述:1)开机为走时模式,正常显示时间。在此模式下整点闹时,定点闹时有效。2)共设置3个按键,分别为模式键、功能键1、功能键2。按动模式键,模式将在‘走时/调时/日期显示及调整/闹钟显示及调整’4个模式下切换。3)走时模式下,按动功能键1/功能键2停止闹时。4)调时模式下,功能键1调整分钟数值,功能键2调整小时数值。5)日期显示及调整模式下,功能键1调整日期数值,功能键2调整月份数值。6)闹钟显示及调整模式下,功能键1调整闹钟分钟数值,功能键2调闹钟时钟数值。五,软件流程图和流程说明1)主程序流程图调用显示子程序调用闹钟查询子程序调用按键扫描子程序调用模式查询子程序初始化开始等待定时器中断流程图说明初始化:包括定时器赋初值,初始化各内存单元。开定时器中断,开CPU中断,送段码表头地址给DPTR。读R3数值,拆出低位并查表转成段码送位选码段码送P0口保护现场显示子程序调用延时子程序读R3数值,拆出高位并查表转成段码送位选码段码送P0口调用延时子程序读R4数值,拆出低位并查表转成段码送位选码段码送P0口读R4数值,拆出高位并查表转成段码送位选码调用延时子程序调用延时子程序段码送P0口读R5数值,拆出低位并查表转成段码送位选码调用延时子程序段码送P0口读R5数值,拆出高位并查表转成段码送位选码调用延时子程序段码送P0口返回恢复现场2)显示子程序流程图P1数据送累加器A并取反。取正逻辑屏蔽高5位P1口写1按键扫描子程序YNA值为0?.0值为0?返回YA值为0?YN模式值加1模式值为4?Y模式值清零N模式查询子程序3)按键扫描子程序走时模式设置秒/分/时数据分别送R3/R4/.1值为1?.2值为1?关闹钟,清键值模式值送累加器A模式查询子程序NA值为0?NA值为1?A值为2?YY走时模式设置调时模式设置Y日期显示及调整模式设置N闹钟显示及调整模式设置4)模式查询子程序日期显示及调整子程序与闹钟显示及调整子程序流程图与调时模式子程序大同小异。a)日期显示及调整子程序送给R3/R4/R5的数据为日/月/年,按功能键1日期加1,按功能键2月份加1。至于数值的合法性在程序里有具体的判断。b)闹钟显示及调整子程序送给R3/R4/R5的数据为闹钟开关值/闹钟分/闹钟时,按功能键1闹钟分加1,按功能键2闹钟时加1。至于数值的合法性在程序里有具体的判断。调时模式设置秒/分/时数据分别送R3/R4/Y分钟数值加1,.1值为1?.2值为1?小时数值加1,键值清零闹钟查询子程序Y取闹钟开关取闹钟数据与当前时间一致开闹钟取模式值YY模式0?NN闹钟开?N返回5)闹钟查询子程序六,总结设计及调试体会硬件设计部分首先要通过计算与参考资料等决定参数。而后通过仿真软件等调试,确定参数无误后再开始用Protel99SE画原理图,进而生成PCB进行布板。软件设计部分设计软件首先要考虑要做的功能,确定出合理的算法。合理的算法不仅要可以实现功能,而且在添加功能的时候要方便灵活。有的人为了实现某种功能用了各种各样的方法来实现,结果程序结构吃死,当想要添加功能或者修改其他功能的时候,将修改程序大部分结构,也就是说要破坏程序现有的结构。关于调试Keil软件调试单片机程序的时候,编译通过并不代表程序是正确的。编译通过只能
单片机电子时钟课程设计实验报告 来自淘豆网www.taodocs.com转载请标明出处.