微机控制系统实习报告_第1页
微机控制系统实习报告_第2页
微机控制系统实习报告_第3页
微机控制系统实习报告_第4页
微机控制系统实习报告_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微机控制系统实习报告课题:电子钟设计系 院:机械与控制工程学院专 业:自动化组成员:陈增林(3070419150)叶明广(3070419131)陈其宇(3070419132)庞业煌(3070419145)电子钟设计1、 设计要求电子钟的设计要求是用单片机组成一个具有键盘模块、显示模块、闹铃模块、单片机模块的电子钟,键盘采用4*4的键盘,键盘具有调整时间,设置闹铃开或关等功能。显示模块使用三个二联(0.5)数码管显示时、分、秒。数码管的驱动使用到三极管9012来驱动。单片机是使用上电复位。二、设计方案本设计采用at89s52单片机为核心控制器件,系统组成框图如下图1所示。at89s51是美国at

2、mel公司生产的低功耗,高性能cmos8位单片机,片内含4k bytes的可系统编程的flash只读程序存储器,器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集flash程序存储器既可在线编程(isp)也可用传统方法进行编程及通用8位微处理器于单片芯片中,atmel公司的功能强大,低价位at89s51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。at89s51单片机驱动电路闹铃模块4*4键盘复位及时钟电路数码管显示时间 时分 秒图1 系统组成框图3、 硬件设计原理电路图如图2所示,电路板pcb图如图3所示,图4为电源的pcb图。图3

3、 电子钟pcb图图4 电源pcb图4、 软件设计1、 程序流程图程序流程图如图5所示. 图五(a)主程序图五(b) 键功能程序流程图2、 参考程序#include#define uchar unsigned char#define uint unsigned int#define key p3void msec(uint x);void xianshi();uchar jianpan(void);void naolingsheji();void tiaoshijian();sbit nling=p10; /蜂鸣器sbit kaiguan=p11; /闹铃开关bit dian,keep=1;uc

4、har i,sum;uint k,n;uchar hour,min,sec;uchar hour1,min1,sec1; uchar shijian6=1,2,3,4,5,6;/时间 时-秒uchar naoling6=1,2,3,4,5,6;/闹铃 时-秒code uint shuzu11=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40;uchar weixuan6=0xfe,0xfd,0xfb,0xf7,0xef,0xdf; /位选初始化 void main() /*定时初始化* tmod=0x01; tl0=(65536-20

5、000+35)%256; /35为实际校正 th0=(65536-20000+35)/256; /35为实际校正 ie=0x82; tr0=1; /* kuaiguan=0; while(1) shijian0=hour/10; /时间 shijian1=hour%10; shijian2=min/10; shijian3=min%10; shijian4=sec/10; shijian5=sec%10; naoling0=hour1/10; /闹铃 naoling1=hour1%10; naoling2=min1/10; naoling3=min1%10; naoling4=sec1/10;

6、 naoling5=sec1%10; tiaoshijian(); /调时间 naolingsheji(); /闹铃设计 /*进入定时t0中断*void timet() interrupt 1 tl0=(65536-20000+35)%256; /35为实际校正 th0=(65536-20000+35)/256; /35为实际校正 xianshi(); sum+; if(sum=25 | sum=50) dian=dian; /点闪 if(sum=50) nling=1; /整点报时1s sum=0; sec+; if(sec=60) sec=0;min+; if(min=60) min=0;

7、hour+; if(hour=24) hour=0; /*送数显示*void xianshi() for(i = 0;i = 0) & (k = 9) /0-9有效 shijianw=k; w+; msec(200); while(w 23 | min 59 | sec 59) /超范围时无效 goto nn; break; case 14:mm: keep=0; /调闹铃时间 naoling0=10; naoling1=10; naoling2=10; naoling3=10; naoling4=10; naoling5=10; do k=jianpan(); if(k = 0) & (k

8、= 9) /0-9有效 naolingw=k; w+; msec(200); while(w 23 | min1 59 | sec1 59) /超范围时无效 goto mm; keep=1; break; case 13: keep=keep; /看闹铃开/关 msec(255);break; case 12: kaiguan=kaiguan; /闹铃开关 msec(200); break; default:break; /*闹铃设计*void naolingsheji() if(min=0 & sec=0) nling=0; /整点报时 if(kaiguan=1 & hour=hour1 &

9、 min=min1 & n=1 ) k+; if(k = 5000) nling=nling; k=0; /*键盘扫描*uchar jianpan(void) / static ;静态变量 uchar n,m,leiyu; uchar bijiao=0x01; key=0x0f; if(key != 0x0f) msec(10); /消除抖动 if(key != 0x0f) /判断是否确有按键按下 for(n = 0;n 4; n+) /行扫描 leiyu=0x10; key=bijiao; for(m = 0;m 4; m+) /列扫描 if(key & leiyu) =0) return(

10、n*4+m); /有按下是取出键值 else leiyu = leiyu 1; /扫描下一列 bijiao = bijiao 1; /扫描下一行 return(22); /没按键按下时返回0/*延时1ms*void msec(uint x) uchar j; while(x-) for(j=0;j125;j+) ; 5、 调试6、 实习心得历时三个星期的综合电子实习就要结束了,三个星期以来,我们为了那个课题做了很多工作,在这个过程中感觉学到了很多东西。我们组选的题目不是实习指导书里的的,设计课题是电子钟设计,这个设计的要求是用单片机组成一个具有键盘模块、显示模块、闹铃模块、单片机模块的电子钟,

11、键盘采用4*4的键盘,键盘具有调整时间,设置闹铃开或关等功能。显示模块使用三个二联(0.5)数码管显示时、分、秒。数码管的驱动使用到三极管9012来驱动。单片机是使用上电复位。选好题目,明确功能要求之后就开始资料的收集。完成这些资料的准备之后我们开始了电路图的设计,按照设计的电路图画好pcb图之后开始软件部分的设计,软件部分主要设计到相关实验程序的编写,完成这些后就可以进行电路板的制作,制作过程在这里就省略了。做好电路板之后就开始原件的焊接,完成这一步就进到了最后一步,调试作品的过程,通常来说调试是最难的一部分。在调试过程是让。处理好这些细节之后我们的作品也就完成了。经过这次实习,我觉得我们以前在学校所接触的书本上的东西远远不够,我们应该更多的投入到实际之中,更多的接触社会,只存在于理论中,不仅让我们觉得枯燥乏味,不易理解,而且让我们不能真正明白和懂得知识理论和实际的差距,学习更多的理论的同时我们也要积极接触社会实践,希望学校可以给我们更多这样

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论