




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单机微机原理与接口技术课程设计实验报告 一、课程设计目的 (1)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力;(2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提高组成系统、编程、调试的动手能力;(3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。二、课程设计实现的功能1、功能说明 (1)本电子钟可以显示当前时刻、年月日和闹钟时刻。不同时间的显示可以用key4来切换。 (2)独立键盘key1-key4(左到右)调节不同功能,7段数码管显示。 (3) 闹铃功能:本程序有闹铃功能,当定时时间到时,闹铃会滴滴滴报警,报警30秒 (4)时、分、秒之间和年、月、日之间也是用“.”分割。2、键盘控制(1)key1-键移动调整单位,每按一次移动一个单位,可调整时分秒、年月日和闹钟时间。比如:在显示时分秒时,按下key1键,可通过key2和key3对秒加减;再按一下key1,可对分加减;再按一下key1,可对时加减;再按key1,时间开始走动(2)key2-加1;key3-减1;(3)key4-键切换时分秒、年月日和闹铃时间的显示。比如:当前为时分秒,按一下key4,则显示年月;再按一下,则显示闹铃时间;再按一下,则显示时分秒时间。 三、硬件结构概括(一)复位电路单片机复位的条件是:必须使RST/VPD 或RST引(9)加上持续两个机器周期(即24个振荡周期)的高电平。例如,若时钟频率为12 MHz,每机器周期为1s,则只需2s以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机常见的复位如图所示。电路为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RESET端的电位与VCC相同,随着充电电流的减少,RESET的电位逐渐下降。只要保证RESET为高电平的时间大于两个机器周期,便能正常复位。该电路除具有上电复位功能外,若要复位,只需按图中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平(二)晶振电路(三)按键电路(四)显示部分 (五) 整体电路图四、软件结构概述(1)代码说明/ */设计项目:带闹铃的电子钟 (梁绍科 林望桐)/功能: key1-键:开始/调时分秒/调年月日/调定时/ key2-键:加1/ key3-键:减1/ key4-键:切换页面/*/#include#define uchar unsigned char#define uint unsigned int/sbit dula=P26;/sbit wela=P27;sbit key1=P34;sbit key2=P35;sbit key3=P36;sbit key4=P37;sbit bear=P32;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;uchar sec1,min1,hour1,year1,mon1,day1,temp1,temp2,sec2,min2,hour2;void keyscan();void display(uchar hour,uchar min,uchar sec);void delay(uint z)uint x,y;for(x=0;xz;x+)for(y=0;y110;y+);/*/初始化及数码管显示(林望桐负责)/*/void init()TMOD=0X02;TH0=6;TL0=6;EA=1;ET0=1;TR0=1;hour1=15;min1=59; sec1=57;year1=11;mon1=12;day1=24;void display(uchar hour,uchar min,uchar sec)uchar s1,s2,m1,m2,h1,h2;s2=sec/10;s1=sec%10; m2=min/10;m1=min%10; h2=hour/10;h1=hour%10; / dula=1;P1=tableh2;/dula=0;P2=0XFF;/wela=1;P2=0XFE;delay(1);/ dula=1;P1=tableh1+0x80;/dula=0;P2=0XFF;/wela=1;P2=0XFd;delay(1);/dula=1;P1=tablem2;/dula=0;P2=0XFF;/wela=1;P2=0XFb;delay(1);/dula=1;P1=tablem1+0x80;/dula=0;P2=0XFF;/wela=1;P2=0XF7;delay(1);/dula=1;P1=tables2;/dula=0;P2=0XFf;/wela=1;P2=0Xef;delay(1);/dula=1;P1=tables1;/dula=0;P2=0XFF;/wela=1;P2=0Xdf;delay(1);/*/*/按键扫描(梁绍科负责)/*/void keyscan()if(key1=0)delay(10);if(key1=0)/TR0=0;temp1+;if(temp1=4) temp1=0;TR0=1; while(!key1)switch(temp2)case 0:display(hour1,min1,sec1);break;case 1:display(year1,mon1,day1);break; case 2:display(hour2,min2,sec2);break;if(key2=0)delay(10);if(key2=0)if(temp2=0)TR0=0;switch(temp1)case 1:sec1+;if(sec1=60)sec1=0;break;case 2:min1+;if(min1=60)min1=0;break;case 3:hour1+;if(hour1=24)hour1=0;break;while(!key2)display(hour1,min1,sec1);if(temp2=1)TR0=1;switch(temp1)case 1:day1+;if(day1=32)day1=1;break;case 2:mon1+;if(mon1=13)mon1=1;break;case 3:year1+;if(year1=100)year1=0;break;while(!key2)display(year1,mon1,day1);if(temp2=2)TR0=1;switch(temp1)case 1:sec2+;if(sec2=60)sec2=0;break;case 2:min2+;if(min2=60)min2=0;break;case 3:hour2+;if(hour2=24)hour2=0;break;while(!key2)display(hour2,min2,sec2);if(key3=0)delay(10);if(key3=0)if(temp2=0)TR0=0;switch(temp1)case 1:if(sec1=0)sec1=60;sec1-;break;case 2:if(min1=0)min1=60;min1-;break;case 3:if(hour1=0)hour1=24;hour1-;break;while(!key3)display(hour1,min1,sec1);if(temp2=1)TR0=1;switch(temp1)case 1:if(day1=1)day1=32;day1-;break;case 2:if(mon1=1)mon1=13;mon1-;break;case 3:if(year1=0)year1=100;year1-;break;while(!key3)display(year1,mon1,day1);if(temp2=2)TR0=1;switch(temp1)case 1:if(sec2=0)sec2=60;sec2-;break;case 2:if(min2=0)min2=60;min2-;break;case 3:if(hour2=0)hour2=24;hour2-;break;while(!key3)display(hour2,min2,sec2);if(key4=0)delay(10);if(key4=0)temp1=0;temp2+;if(temp2=3)temp2=0;while(!key4)switch(temp2)case 0:display(hour1,min1,sec1);break;case 1:display(year1,mon1,day1);break;case 2:display(hour2,min2,sec2);break; switch(temp2)case 0:display(hour1,min1,sec1);break;case 1:display(year1,mon1,day1);break;case 2:display(hour2,min2,sec2);break;/*/*/发声子程序 (林望桐负责)/*/void Music(uchar t) uchar i,j; for(i=0;i200;i+) bear=bear; for(j=0;j=sec2&sec1sec2+10)/|(min1=0&sec120)整点报警/for(i=0;i20;i+)/bear=bear;/P1=P1;Music(90);Music(120);switch(temp2)case 0:display(hour1,min1,sec1);break;case 1:display(year1,mon1,day1);break; case 2:display(hour2,min2,sec2);break;delay(10);/bear=1;/P1=0xff;/*/*/主程序 /*/void main()init();while(1) keyscan();alarm();/*/定时器0功能(梁绍科负责)/*/void time1()interrupt 1uint m;m+;if(m=3686)m=0; sec1+;if(sec1=60) sec1=0; min1+; if(min1=60)min1=0;hour1+; if(hour1=24) hour1=0; day1+; if(day1=32) day1=1; mon1+;if(mon1=13)mon1=1;year1+;if(year1=100)year1=0; /*/(二)硬件效果图 年月日显示闹钟定时设置时分秒显示五、心得体会 单片机作为我们主要的专业课程之一,我觉得单片机课程设计很有必要,而且很有意义。在这次课程设计中,运用到了很多以前的专业知识,虽然过去从未独立应用过它们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的一大收获。另外,要做好一个课程设计,就必须做到:在设计程序之前,对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常德,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计结束了,但是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中化学 专题1 洁净安全的生存环境 第1单元 空气质量的改善说课稿 苏教版选修1001
- 甘肃省民勤县第五中学七年级体育《篮球(原地单手肩上投篮、变方向运球)》说课稿 新人教版
- 2025浙江嘉兴海宁市国土空间规划设计有限公司招聘1人笔试历年参考题库附带答案详解(3卷合一)
- 2025年影视导演考试题库(附答案)
- 2025年行政执行考试题库及答案
- Unit 1 My classroom Part A大单元(教学设计)-人教PEP版英语四年级上册
- 4 匀变速直线运动的速度与位移的关系说课稿-2025-2026学年高中物理人教版必修1-人教版2004
- 2025年护理生理学题库及答案68
- 2025年护考护理题库及答案大全
- 5.1.1 腔肠动物和扁形动物(说课稿)2024-2025学年八年级生物学上册同步教学(人教版河北专版)
- 造雪师培训课件
- 2025年广东省深圳市宝安外国语学校中考数学三模试卷
- 资产评估学教程(第八版)习题及答案
- 工业设计课件全套
- 道路运输企业安全生产责任制度
- 中西医结合治疗冠心病
- 膈疝介绍课件
- 注册电气工程师考试试题及答案
- 手术室护理工作中人文关怀和措施
- 2025年《儿童脑性瘫痪》标准课件
- 慢性胃炎针灸治疗
评论
0/150
提交评论