版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理与应用课程设计与实现 实训报告专业 : 自动化年级/班级: 姓名 : 实训时间 :实训地点 :指导教师 : 一、 实训题目:基于51单片机电子时钟设计设计要求:(1)可设定时间; (2)可显示当时时间; (3)每小时振铃响一次,并且振铃铃声响次数与时间一致。二、 实训目的: (1). 学习8051定时器时间计时处理、按键扫描及LED数码管显示的设计方法。 (2). 设计任务及要求 利用实验平台上6个LED数码管, 设计带有闹铃功能的数字时钟。三、 所用器件工作原理及控制方法:189s52AT89S52是一种低功耗、高性能CMOS 8位微控制器,使用 ATMEL 公司高密度非易失性存储
2、器技术制造,与工业80C51产品指令和引脚完全兼容。并具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。2.定时 软件方法,利用单片机本身的定时计数功能,节省成本,提高稳定性。3显示采用LED8段数码管
3、,具有耗电低、配置灵活、线路简单、安装方便、耐转动、价格低廉且寿命长等优点。474LS24474LS244为3态8位缓冲器,一般用作总线驱动器。74LS244没有锁存的功能。地址锁存器就是一个暂存器,它根据控制信号的状态,将总线上地址代码暂存起来。8086/8088数据和地址总线采用分时复用操作方法,即用同一总线既传输数据又传输地址。5.简介 当微处理器与存储器交换信号时,首先由CPU发出存储器地址,同时发出允许锁存信号ALE给锁存器,当锁存器接到该信号后将地址/数据总线上的地址锁存在总线上,随后才能传输数据。74ls244图例锁存器是一个很普通的时序电路。一般的,它在时钟上升沿或者下降沿来的
4、时候锁存输入,然后产生输出,在其他的时候输出都不跟随输入变化,这就是所谓边缘触发的D触发器。 通常用作单片机的地址锁存器的芯片有74LS373、8282、74LS273、74HC373等。 用途它主要用于三态输出,作为地址驱动器、时钟驱动器、总线驱动器和定向发送器等。其真值表如下:74Ls244真值表 74LS244真值表:L表示低电平 H表示高电平 X表示不定状态 Z表示高阻态 74Ls244技术参数最小典型最大VCC4.25V5V5.25V高电平输出电流-15mA低电平输出电流24mA工作温度070四、 软硬件设计1. 显示模块(1) 硬件设计(2) 流程图(3)
5、软件设计void led_dispiay( ) wx_0=0;wx_1=0; /小时位选 ledbit=smgtime1s/10; /十位显示 wx_1=1; delay(); wx_1=0; ledbit=smgtime1s%10; /个位显示 wx_0=1; delay(); wx_0=0; wx_2=0;wx_3=0; /分钟显示 ledbit=smgtime1f/10; /十位显示 wx_3=1; delay(); wx_3=0; ledbit=smgtime1f%10; /个位显示 wx_2=1; delay(); wx_2=0; wx_4=0;wx_5=0; /分钟显示 ledbi
6、t=smgtime1x/10; /十位显示 wx_5=1; delay(); wx_5=0; ledbit=smgtime1x%10; /个位显示 wx_4=1; delay(); wx_4=0;2. 定时模块(1) 流程图(2) 软件设计void time1() interrupt 1time50ms+;if(time50ms=20) /计数20个50ms为1s time50ms=0; time1s+; if( time1s=60) time1s=0; time1f+; if(time1f=60) time1f=0; time1x+; if(time1x=24) time1x=0; TH0=
7、0x3c; TL0=0xb0;3. 键盘控制模块(1) 硬件设计(2) 流程图(3) 软件设计void shezhi_diaplay() if(1) if(yiwei=0) delayms(66);if(yiwei=0) TR0=0; +num; /*.秒调整.*/ if(num=1&jia=0) delayms(70); if(num=1&jia=0) time1s+; if(num=1&sub=0) delayms(70); if(num=1&sub=0) time1s-; / led_dispiay( );/*.分钟调整.*/ if(num=2&j
8、ia=0) delayms(70); if(num=2&jia=0) time1f+; if(num=2&sub=0) delayms(70); if(num=2&sub=0) time1f-; /led_dispiay( );/*.小时调整.*/ if(num=3&jia=0) delayms(70); if(num=3&jia=0) time1x+; if(num=3&sub=0) delayms(70); if(num=3&sub=0) time1x-; / led_dispiay( ); if(num>=4) num=0;
9、TR0=1; 4. 总设计电路图五、 实训总结: 经过两周的单片机课程设计,我组基本完成课题要求。虽然还是存在很多不足,但是功能上基本达标。时钟显示功能,精确度完全可以满足日常生活显示时间的需要;调时功能,方便快捷。硬件设施合乎要求,软件设计可以配合硬件实现要求功能。但是由于时间比较短,出现部分不足:初期时钟不显示数字,经检查是由于硬件连接不完善,存在漏焊,虚焊和错焊等问题。不过,我们相信,如果时间充足,将软件改进,我们完全可以很好实现所有功能。 另外,在本次设计的过程中,我们发现很多的问题,虽然以前没有做过这样的设计但通过这次设计我学会了很多东西,单片机课程设计重点就在于软件算法的设计,需要
10、有很巧妙的程序算法,虽然以前写过几次程序,但我们觉的写好一个程序并不是一件简单的事,比如写一个程序看其功能很少认为编写程序简单,但到编的时候才发现一些细微的知识或低级错误经常犯做不到最后常常失败,所以有些东西只有学精弄懂并且要细心才行,只学习理论有些东西是很难理解的,更谈不上掌握。从这次的课程设计中,我们真正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的练习的过程中才能提高,我想这就是我们在这次课程设计中的最大收获。最后非常感谢王老师的悉心指导!六、 附件:附1:程序代码#include <reg52.h>#inc
11、lude <intrins.h>/有_nop_的头文件/*变量定义*/#define uchar unsigned char#define uint unsigned intvoid shezhi_display(void);void led_display(uchar m);void zhengdian(void);void delay(void);void delayms(uchar ms); uchar time1s=0,time50ms; /定时1s计数器uchar time1f=0,time1x=0;uchar a,b,k,m,num=0;#define ledbit P
12、0 /P0.0-P0.7-AGextern uchar code smg= /共阳极0-9显示代码/-0-1-2-3-4-5-6-7-8-9- 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F ;sbit wx_0=P20;sbit wx_1=P21;sbit wx_2=P22;sbit wx_3=P23;sbit wx_4=P24; / 数码管位选sbit wx_5=P25;sbit zd=P14;sbit shezhi=P11;sbit jia=P12;sbit sub=P15;sbit yiwei=P10;void init () /对应
13、定时器和外部中断1; TMOD = 0x01; /T0T1方式控制 TH0=0x3c; TL0=0xb0; /计时50ms EA=1; /开全局中断 ET0=1; /开定时中断0 TR0=1; void delay(void) /延时函数,延时约0.6ms unsigned char j; for(j=0;j<200;j+); void delayms(uchar ms) uchar i; while(ms-) for(i=0;i<200;i+); /* */函数名:led_display()/功能 :数码管显示数据,驱动芯片74LS244/输入 :dat -8位数据/输出 :无/
14、说明 :输入十进制数。/*/void led_dispiay( ) wx_0=0;wx_1=0; /小时位选 ledbit=smgtime1s/10; /十位显示 wx_1=1; delay(); wx_1=0; ledbit=smgtime1s%10; /个位显示 wx_0=1; delay(); wx_0=0; wx_2=0;wx_3=0; /分钟显示 ledbit=smgtime1f/10; /十位显示 wx_3=1; delay(); wx_3=0; ledbit=smgtime1f%10; /个位显示 wx_2=1; delay(); wx_2=0; wx_4=0;wx_5=0; /
15、分钟显示 ledbit=smgtime1x/10; /十位显示 wx_5=1; delay(); wx_5=0; ledbit=smgtime1x%10; /个位显示 wx_4=1; delay(); wx_4=0;/*定时中断*/void time1() interrupt 1 time50ms+; if(time50ms=20) /计数20个50ms为1s time50ms=0; time1s+; if( time1s=60) time1s=0; time1f+; if(time1f=60) time1f=0; time1x+; if(time1x=24) time1x=0; TH0=0x
16、3c; TL0=0xb0; void shezhi_diaplay()if(1) if(yiwei=0) delayms(66); if(yiwei=0) TR0=0; +num; /*.秒调整.*/ if(num=1&jia=0) delayms(70); if(num=1&jia=0) time1s+; if(num=1&sub=0) delayms(70); if(num=1&sub=0) time1s-; / led_dispiay( );/*.分钟调整.*/ if(num=2&jia=0) delayms(70); if(num=2&j
17、ia=0) time1f+; if(num=2&sub=0) delayms(70); if(num=2&sub=0) time1f-; /led_dispiay( );/*.小时调整.*/ if(num=3&jia=0) delayms(70); if(num=3&jia=0) time1x+; if(num=3&sub=0) delayms(70); if(num=3&sub=0) time1x-; / led_dispiay( ); if(num>=4) num=0; TR0=1; void zhengdian(void) if(ti
18、me1s=0&time1f=0) uchar k; for(k=0;k<5;k+) zd=0; delayms(10); delayms(10); delayms(10); delayms(10); zd=1; delayms(10); /*主程序*/void main() init();/初始化 while(1) shezhi_diaplay( ); led_dispiay( );/显示 / zhengdian( ); 附2:实物图:正面背面元器件清单:AT89c521片SEG(共阴)6片PNP三极管6个22µf 电解电容1个30pf 磁片电容2个1K电阻 16个330欧姆电阻9个4.7k欧姆电阻8个100欧姆电阻8个12M晶振1个使用仪器:硬件:万用表一个,焊锡丝若干,烙铁一个PC机一台,下载线
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 购销合同贷款申请技巧分享
- 二年级品德与生活上册 爱护我们的生活环境教案3 北师大版
- 八年级历史上册 第六单元 中华民族的抗日战争第18课 从九一八事变到西安事变教案 新人教版
- 2024-2025学年高中物理 第一章 机械振动 2 单摆教案 教科版选修3-4
- 2023四年级数学上册 1 大数的认识第5课时 将整万数改写成用“万”作单位的数教案 新人教版
- 北京中南红星足球学校九年级化学上册 第三单元 课题1 分子和原子教学设计 (新版)新人教版
- 坐班合同协议书范本(2篇)
- 租的民房租房合同(2篇)
- 装修管理费合同(2篇)
- 浮选 课件 演示
- 2025届高考英语3500词汇基础+提升练01含解析
- 食源性疾病培训内容知识
- LED显示屏拆除方案
- 教科版六年级科学上册期中测试卷
- 项目管理与风险管理考核试卷
- 2024年度假区(阳澄湖镇)国(集体)公司公开招聘工作人员高频难、易错点500题模拟试题附带答案详解
- 2024秋期国家开放大学本科《经济学(本)》一平台在线形考(形考任务1至6)试题及答案
- 小学生法制教育课件
- 浙江省杭州市五校联考2025届英语高三第一学期期末复习检测试题含解析
- 期末(试题)-2024-2025学年人教PEP版(2024)英语三年级上册
- 医院法律风险防范措施计划
评论
0/150
提交评论