




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、时、分、秒计时器设计班级电子0934姓名(学号)高文德(27)吴景森(32)彭亮(31)三人共同完成项目分工方案总体设计、程序集成、报告撰写延时、显示模块函数设计中断、主函数模块函数设计仿真电路设计及调试一、任务及要求用51单片机设计时、分、秒计时器,具体要求如下。1、 具有时、分、秒计时功能和8位数码管显示功能,显示格式为:“时分秒”;2、 用proteus设计仿真电路进行结果仿真;3、 4人组成设计小组完成,小组成员有明确分工,1人负责总体方案设计及报告撰写,2人负责功能模块函数设计,1人负责仿真电路设计及调试。4、 完成程序设计、仿真电路设计、结果仿真,完成报告并上传空间课程栏目中的课程
2、设计报告子栏目中。二、设计方案(高文德负责完成) 课程设计目的1综合利用所学单片机知识完成一个单片机应用系统设计,从而加深对单片机软硬知识的理解,获得初步的应用经验。2学习at89c51定时/计数器的原理及基本应用。3掌握多位数码管动态显示及keil uvision2 ide的使用方法。 课程设计原理单片机控制的数字钟的硬件结构与软件设计,给出了汇编语言源程序。此数字钟是一个将“时”、“分”、“秒”显示于人的视觉器官的计时装置。显示器件选用led七段数码管。在译码显示电路输出的驱动下,显示出清晰、直观的数字符号。定时器/计数器t0用于时间计时。选择方式1,重复定时,定时时间设为50ms,定时时
3、间到则中断,在中断服务程序中用一个计数器对50ms计数,计20次则对秒单元加1,秒单元加到60则对分单元加1,同时秒单元清0;分单元加到60则对时单元加1,同时分单元清0;时单元加到24则对时单元清0,标志一天时间计满。在对各单元计数的同时,把它们的值放到存储单元的指定位置。 设计制作流程1,在proteus中设计硬件2,在keil51中编写程序,编译、连接形成hex文件。3,在proteus中把hex文件加载到单片机芯片上。4,运行仿真看结果。 程序模块构成程序模块主要由以下几大模块组成:1 定时计数器t0及其中断初始化函数模块2 定时计数器中断程序模块3 显示函数模块 仿真电路构成仿真电路
4、主要由以下元器件构成:单片机:80c51电阻:resled数码管:7seg-mpx8-ca-blue电源:power非门:not2、中断模块程序流程图(吴景森负责完成) 重装初值 判断temp是否为20 temp加“1” 否 temp恢复为0 判断秒是否为59秒加“1” 否秒恢复为0 判断分是否为59 分加“1” 否分恢复为0 判断时是否为23时加“1” 否 时恢复为03、 显示模块程序流程图(彭亮负责完成) 第一位显示个位 第二位显示十位 第三位显示横杠第四位显示分的个位第五位显示分的十位第六位显示横杠第七位显示时的个位第八位显示时的十位四,仿真电路设计(三人共同完成) 调试结果下图是通过用
5、proteus设计仿真后得到的结果:以下是进行上述仿真的程序代码: /*倒计时及显示程序*/#include#define uchar unsigned char#define uint unsigned intuchar code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;/共阳七段编码uchar temp=0;/定义定时器溢出计数变量,每隔50ms产生1次溢出,temp加1uchar h=0,m=0,miao=0;/定义倒计时变量,当temp计数加20(20x5
6、0ms=1s)时,miao减1,当秒减到0时,分减1,当分减到0时,时减一/*-定时计数器t0及其中断初始化函数-*/void timer0init(void) tmod=0x01;/设置定时器0为工作方式1 th0=(65536-50000)/256;/16位计数初值除以256得到高8位初值 tl0=(65536-50000)%256;/16位计数初值除以256的余数得到低8位初值 ea=1;/开总中断 et0=1;/开定时器0中断tr0=1;/启动定时器0/*-延时函数-*/void delay(uint n) uint i,j; for(i=n;i0;i-) for(j=124;j0;j
7、-);/*定时计数器中断程序,每当定时计数器溢出时触发中断,执行该程序*/void time0() interrupt 1 th0=(65536-50000)/256;/重装初值tl0=(65536-50000)%256; if(temp=20) temp=0; if(miao=59) miao=0;if(m=59)m=0;if(h=23)h=0;else h+;else m+; else miao+; else temp+;/*-显示函数-*/void display(void) p1=0xfe;/输出秒个位的位码 p0=tablemiao%10; /输出秒个位的段码 delay(1); /
8、亮1ms p1=0xfd;/输出秒十位的位码 p0=tablemiao/10; /输出秒十位的段码 delay(1); /亮1msp1=0xfb;/输出-的位码 p0=0xbf; /输出-的段码 delay(1); /亮1msp1=0xf7;/输出分个位的位码 p0=tablem%10; /输出分个位的段码 delay(1); /亮1msp1=0xef;/输出分十位的位码 p0=tablem%10; /输出分十位的段码 delay(1); /亮1msp1=0xdf;/输出-的位码 p0=0xbf; /输出-的段码 delay(1); /亮1msp1=0xbf;/输出时个位的位码 p0=tabl
9、eh%10; /输出时个位的段码 delay(1); /亮1msp1=0x7f;/输出时十位的位码 p0=tableh%10; /输出时十位的段码 delay(1); /亮1ms/*-主函数-*/void main(void) timer0init();/调用初始化函数对定时计数器进行初始化 while(1) display();/调用显示函数显示时间 五、设计总结此次的单片机时钟计时设计我感觉是很成功的,虽然在设计的过程中遇到了很多困难,但经过我们团队的合作,最终还是克服了困难,完成了这次设计任务。从中我们也学到了很多东西,并且进一步对单片机程序设计的总体规划有了更加深入的了解。下面我就来和大家分享一下这次设计中所遇到的困难和获得的收获吧:刚开始我们团队没有明确的分工,我们本来想三个人先各搞各的,然后把三个人做的拿到一起比对,把三个人写的好的部分综合到一起,整理成一篇设计稿,结果大家忙了很久没有一个人写出了一篇完整的设计稿。后来我们还是决定分工合作,因为高文德的程序学得好,所以他设计程序,而吴景森的逻辑思维比较强,所以他就设计程序模块流程图,而我(彭亮)的文笔不错,我就负责文字描述和总结。把任务分下来后我们各司其职,最终完成了这个艰巨的设计任务。虽然这次设计任务困难重重,但在完成之后我们发现我们的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年份三月份装修合同墙漆色差判定标准与赔偿机制
- 2025年江苏省职业院校技能大赛中职组(护理技能)参考试题(附答案)
- 计算机二级考试知识图谱试题及答案
- 口腔诊所后勤人员年度总结
- 幼儿园德育工作年终总结
- 2025深圳的劳动合同模板
- 高中学业规划咨询服务合同范本
- 民间个人借款担保合同范本
- 材料采购合同样本
- ppp项目合同标准文本6
- 2025年浙江宁波奉化区农商发展集团有限公司招聘笔试参考题库附带答案详解
- 2025年《宏观经济政策与发展规划》核心备考题库(含典型题、重点题)
- 【百强校】【黑吉辽卷】黑龙江省哈尔滨市第三中学2025年高三学年第一次模拟考试(哈三中一模)语文试卷
- 2025年高考物理一轮总复习:牛顿运动定律(原卷版)
- 全国计算机等级考试一级试题及答案(5套)
- 公司安全事故隐患内部举报、报告奖励制度
- 外周灌注指数PI
- 《光伏发电工程预可行性研究报告编制规程》(NB/T32044-2018)中文版
- 小学生竞选班干部ppt
- 公务员事业单位考试写作练习纸
- 建筑施工现场总平面布置图
评论
0/150
提交评论