单片机原理课程设计.docx
《单片机原理课程设计.docx》由会员分享,可在线阅读,更多相关《单片机原理课程设计.docx(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程设计说明书2023 /2023 学年第 1 学期课程名称 :单片机原理课程设计题目 :时钟专业班级 :08 级应物一班姓名 :学号:设计周数 :2 周设计成绩 :年月 日一、课程设计目的1.1 学习单片机的重要性20 世纪末,电子技术获得了飞速的进展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的进展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更换代的节奏也越来越快。单片机正朝着高性能和多品种方向进展趋势将是进一步向着CMOS 化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面进展。下面是单片机的主要进展趋势。单片机应用的重
2、要意义还在于,它 从根本上转变了传统的掌握系统设计思想和设计方法。从前必需由模拟电路或数字电路实现的大局部功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的掌握技术也称为微掌握技术,是传统掌握技术的一次革命。1.2 课程设计的目的(1) 稳固和提高学过的根底理论和专业学问;(2) 提高运用所学专业学问进展独立思考和综合分析、解决实际问题的力量;(3) 培育把握正确的思维方法和利用软件和硬件解决实际问题的根本技能;(4) 增加对实际电路的生疏,把握分析处理方法,进展调试、计算等根本技能的训练 ,使之具有肯定程度的实际工作力量。(5) 把握科研、资料查询的根本方法以及猎取学问的力量。(
3、6) 促使我们学习和猎取学问,把握自我学习的力量。(7) 通过参与实际工作,使我们了解社会和工作,具备肯定的实际工作力量(8) 通过设计数字电子钟,了解电子钟的工作原理和内部构造。1.3 数字时钟的重要性数字钟是承受数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车 站, 码头办公室等公共场所,成为人们日常生活中不行少的必需品,由于数字集成电路的进展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的便利,而且大大地扩展了钟表原先的报时功能。诸如定时自动报 警、按时自动打铃、时间程序自动掌握、定时播送、自动起闭路灯、定时开关
4、烘箱、通断动力设备、甚至各种定时电气的自动启用等,全部这些,都是以钟表数字化为根底的。因此, 争论数字钟及扩大其应用,有着格外现实的意义。数字钟已成为人们日常生活中:必不行少的必需品,广泛用于个人家庭以及车站、码头、 剧场、办公室等公共场所,给人们的生活、学习、工作、消遣带来极大的便利。由于数字集成电路技术的进展和承受了先进的石英技术,使数字钟具有走时准确、性能稳定、携带便利等优点,它还用于计时、自动报时及自动掌握等各个领域。二、数字时钟设计2.1 、数字钟的软件设计2.1.1 、系统分析系统的软件设计也是工具系统功能的设计。单片机软件的设计主要包括执行软件完成各种实质性功能的设计和监控软件的
5、设计。单片机的软件设计通常要考虑以下几个方面的问题:(1) 依据软件功能要求,将系统软件划分为假设干个相对独立的局部,设计出合理的总体构造,使软件开发清楚、简洁和流程合理;(2) 培育良好的编程风格,如考虑构造化程序设计、实行模块化、子程序化。既便于调试、链接,又便于移植和修改;(3) 建立正确的数学模型,通过仿真提高系统的性能,并选取适宜的参数;(4) 绘制程序流程图;(5) 合理安排系统资源;(6) 为程序参加注释,提高可读性,实施软件工程;(7) 留意软件的抗干扰设计,提高系统的牢靠性。2.1.2 系统设计开头启动定时器按键检测时间显示这次的数字电子钟设计用到很多子程序,它们的流程图如下
6、所示。2.1.2.1 主程序流程图主程序是先开头,然后启动定时器,定时器启动后在进展按键检测,检测完后,就可以显示时间。图 2-1 主程序流程图2.1.2.2 按键处理流程图按键处理是先检测秒按键是否按下,秒按键假设按下,秒就加1;假设没有按下,就检 测分按键是否按下,分按键假设按下,分就加1;假设没有按下,就检测时按键是否按下, 时按键假设按下,时就加 1;假设没有按下,就把时间显示出来。开头N秒按键按下?Y秒加 1N分按键按下?Y分加 1N时按键按下?Y时加 1显示时间完毕图 2-2 按键处理流程图开头N一秒时间到?Y秒单元加 1N60 秒时间到?Y秒单元清零,分单元加 1N60 分钟到?
7、Y分单元清零,时单元加 1N24 小时到?Y时单元清零时间显示中断返回21.2.3 定时器中断流程图定时器中断是先检测 1 秒是否到,1 秒假设到,秒单元就加 1;假设没到,就检测1 分钟是否到,1 分钟假设到,分单元就加 1;假设没到, 就检测 1 小时是否到,1 小时假设到,时单元就加 1,假设没到,就显示时间。图 2-3 定时器中断流程图2.1.2.4 时间显示流程图时间显示是先秒个位计算显示,然后是秒十位计算显示,再是分个位计算显示,再然后是分十位显示,再就是时个位计算显示,最终是时十位显示。开头秒个位计算显示秒十位计算显示分个位计算显示分十位计算显示时个位计算显示时十位计算显示完毕图
8、 2-4 时间显示流程图2.1.3 系统实施c 语言版2.1.3.1 主程序设计main/主函数TMOD |=0x01;/定时器 0 10ms in 12M crystal 用于计时TH0=0xd8;TL0=0xf0;ET0=1;TR0=1;TMOD |=0x10;/定时器 1 用于动态扫描TH1=0xF8;TL1=0xf0;ET1=1;TR1=1;EA =1;Displaypro;2.1.3.2 按键处理程序设计while(1)/主循环/ if(!KEY1)/按键 1 去抖以及动作delay(21000); if(!KEY1)hour+;if(hour=qieh)hour=0;/正常时间 小
9、时 加 1 Displaypro;/ if(!KEY2)/按键去抖以及动作delay(21000); if(!KEY2)minute+;if(minute=60)minute=0;/分加 1 Displaypro;/ if(!KEY3)/按键去抖以及动作delay(21000); if(!KEY3)minute-;if(minute=-1)minute=59; /分减 1 Displaypro;2.1.3.3 定时器中断程序设计/*/*定时中断 1*/*/void time1_isr(void) interrupt 3 using 0/定时器 1 用来动态扫描static unsigned c
10、har num; TH1=0xf8;/重入初值TL1=0xf0;switch (num)case 0:P2=0;P0=StrTabnum;break; /分别调用缓冲区的值进展扫描case 1:P2=1;P0=StrTabnum;break;case 2:P2=2;P0=StrTabnum;break; case 3:P2=3;P0=StrTabnum;break; case 4:P2=4;P0=StrTabnum;break; case 5:P2=5;P0=StrTabnum;break; case 6:P2=6;P0=StrTabnum;break;case 7:P2=7;P0=StrTa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 课程设计
限制150内