为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

单片机时钟设计

2017-10-21 31页 doc 249KB 13阅读

用户头像

is_633808

暂无简介

举报
单片机时钟设计单片机时钟设计 西华大学课程设计 摘 要 近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善 本次做的数字钟是以单片机(AT89C51)为核心,结合相关的元器件(6个锁存器,6个七段LED数码管,...
单片机时钟设计
单片机时钟设计 西华大学课程设计 摘 要 近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善 本次做的数字钟是以单片机(AT89C51)为核心,结合相关的元器件(6个锁存器,6个七段LED数码管,3个按键)和应用程序(proteus软件和KEIL编译软件),构成相应的应用系统。 关键词: AT89C51 led数码管 proteus软件 西华大学课程设计 目 录 摘 要 ........................................................................................................................1 引 言 .......................................................................................................................... I 1 单片机 ...................................................................................................................... I 1.1 MCS-51单片机简介 ......................................................................................1 1.2 MCS-51系列单片机 (51子系列与52子系列) .............................................1 1.3 MCS-51单片机中断系统的结构 ...................................................................2 1.4 单片机应用 ...................................................................................................2 2 课程设计原理 ..........................................................................................................3 2.1 设计要求 ......................................................................................................3 2.2 AT89C51的单片机简介 ..............................................................................4 2.3 晶振电路 ......................................................................................................5 2.4复位电路 .........................................................................................................5 3 程序流程图及源程序 ............................................................ 错误~未定义签。6 3.1 流程图 ..........................................................................................................7 3.2 源程序 ..................................................................... 错误~未定义书签。19 总 结 ..........................................................................................................................7 参 考 文 献 ................................................................................................................ 21 II 西华大学课程设计 引 言 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。 单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。 单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。 数字钟是采用数字电路实现对.时,分,秒.数字显示的计时装置,广泛用于个人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便。因此,研究数字钟及扩大其应用,有着非常现实的意义 I 西华大学课程设计 1 单片机 1.1 MCS-51单片机简介 MCS51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的。 1.2 MCS-51系列单片机 (51子系列与52子系列) MCS-51系列单片机分为两大系列,即51子系列与52子系列。 51子系列:基本型,根据片内ROM的配置,对应的芯片为8031、8051、8751、8951 52子系列:增强型,根据片内ROM的配置,对应的芯片为8032、8052、8752、8952 这两大系列单片机的主要硬件特性如下表: 图1.1 51/52系列主要硬件特性 上表中可以看到,8031、8031、8032、80C32片内是没有ROM的,对应着上表看,我们可以发现,51系列的单片机的RAM大小为128B,52系列的RAM大小为256B,51系列的计数器为两个16位的,52系列的计数器为三个16位计数器。51系列的中断源为5个,52系列的中断源为6个。 1 西华大学课程设计 1.3 MCS-51单片机中断系统的结构 5个中断源的符号、名称及产生的条件如下: INT0:外部中断0,由P3(2端口线引入,低电平或下跳沿引起。 INT1:外部中断1,由P3(3端口线引入,低电平或下跳沿引起。 T0:定时器,计数器0中断,由T0计满回零引起。 T1:定时器,计数器l中断,由T1计满回零引起。 :串行I,O中断,串行端口完成一帧字符发送,接收后引起。 TI,RI 图1.2 MCS-51中断系统结构 1.4 单片机应用 由于单片机具有显著的优点,它已成为科技领域的有力工具,人类生活的得力助手。它的应用遍及各个领域,主要表现在以下几个方面: (1) 单片机在智能仪表中的应用 单片机广泛地用于各种仪器仪表,使仪器仪表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比。 (2)单片机在机电一体化中的应用 机电一体化是械工业发展的方向。机电一体化产品是指集成机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品, 2 西华大学课程设计 例如微机控制的车床、钻床等。单片机作为产品中的控制器,能充分发挥它的体积小、可靠性高、功能强等优点,可大大提高机器的自动化、智能化程度。 (3) 单片机在实时控制中的应用 单片机广泛地用于各种实时控制系统中。例如,在工业测控、航空航天、尖端武器、机器人等各种实时控制系统中,都可以用单片机作为控制器。单片机的实时数据处理能力和控制功能,可使系统保持在最佳工作状态,提高系统的工作效率和产品质量。 (4) 单片机在分布式多机系统中的应用 在比较复杂的系统中,常采用分布式多机系统。多机系统一般由若干台功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系、协调工作。单片机在这种系统中往往作为一个终端机,安装在系统的某些节点上,对现场信息进行实时的测量和控制。单片机的高可靠性和强抗干扰能力,使它可以置于恶劣环境的前端工作。 (5) 单片机在人类生活中的应用 自从单片机诞生以后,它就步入了人类生活,如洗衣机、电冰箱、电子玩具、收录机等家用电器配上单片机后,提高了智能化程度,增加了功能,倍受人们喜爱。单片机将使人类生活更加方便、舒适、丰富多彩。 综合所述,单片机已成为计算机发展和应用的一个重要方面。另一方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。 2 课程设计原理 2.1 设计要求 单片机控制的数字钟的硬件结构与软件设计,编写C语言源程序。此数字钟是一个将“时”、“分”、“秒”显示于人的视觉器官的计时装置。显示器件选用LED七段数码管。在译码显示电路输出的驱动下,显示出清晰、直观的数字符号。针对数字钟会产生走时误差的现象,在电路中就设计有有校准时间功能的电路。使用动态数码显示的方法,运用独立式按键识别过程,按“时”,“分”,“秒”数据送出显示处理方法。 (1)具有时、分、秒计数显示功能,以24小时循环 (2)LED数码管显示时、分、秒的个位和十位 (3)可以在任意时刻校准时间 3 西华大学课程设计 2.2 AT89C51的单片机简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的 图2.1 AT89C51 4 西华大学课程设计 2.3 晶振电路 右图所示为时钟电路原理图,在AT89S51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片内部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。 图2.2 晶振电路 2.4复位电路 单片机复位的条件是:必须使RST/VPD 或RST引(9)加上持续两个机器周期(即24个振荡周期)的高电平。例如,若时钟频率为12 MHz,每机器周期为1μs,则只需2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机常见的复位如图所示。电路为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RESET端的电位与VCC相同,随着充电电流的减少,RESET的电位逐渐下降。只要保证RESET为高电平的时间大于两个机器周期,便能正常复位。该电路除具有上电复位功能外,若要复位,只需按图中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。 图2.3 复位电路 5 西华大学课程设计 2.3 系统原理图 图2.4 原理图 2.4 系统仿真图 图2.5 仿真图 6 西华大学课程设计 3 流程图及源程序 3.1 流程图 图3.1 流程图 程序运行,led显示时间。通过“设置”、“减”、“加”3个按键,对时间进行修改。按“设置”键1下,进入秒钟设置,按“设置”键2下,进入分钟设置,按“设置”键3下,进入时钟设置,按下“加”或“减”按键进行对应的“秒、分、时”时间的加或减设置,按“设置”键4下,释放设置恢复时钟正常运行。按下rest键时间显示清零。 3.2 源程序 #include #define uchar unsigned char #define uint unsigned int sbit KEY1=P0^0; //设定 sbit KEY5=P0^1; //减 sbit KEY9=P0^2; //加 uchar key1,key5,key9; 7 西华大学课程设计 uchar time=0; //设置时间用计时变量 uchar k; sbit D20=P2^0; //573锁存信号控制 sbit D21=P2^1; //573锁存信号控制 sbit D22=P2^2; //573锁存信号控制 sbit D23=P2^3; //573锁存信号控制 sbit D24=P2^4; //573锁存信号控制 sbit D25=P2^5; //573锁存信号控制 uchar sum=0; //统计变量定义 uchar ss=0,sg=0,fs=0,fg=0,ms=0,mg=0; //时间变量的定义 时十位 时个位 分十位 分个位 秒十位 秒个位 uchar sdm=0; //设定时间秒 uchar sdf=0; //设定时间分 uchar sds=0; //设定时间时 void delay(uint); uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; // 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90 void main() { D20=1; P1=0x00; P1=table[mg]; delay(5); D20=0; D21=1; P1=0x00; P1=table[ms]; delay(5); D21=0; D25=1; P1=0x00; P1=table[ss]; 8 西华大学课程设计 delay(5); D25=0; D24=1; P1=0x00; P1=table[sg]; delay(5); D24=0; D23=1; P1=0x00; P1=table[fs]; delay(5); D23=0; D22=1; P1=0x00; P1=table[fg]; delay(5); D22=0; EA=1;//允许CPU中断 ET0=1;//允许T0中断 TR0=1;//启动T0 ET1=1;//允许T1中断 TR1=1;//启动T1 TH0=(65536-50000)/256; TL0=(65536-50000)%256; TH1=(65536-50000)/256; TL1=(65536-50000)%256; TMOD=0x11; while(1) { //处理按键 if(KEY1==0) { 9 西华大学课程设计 delay(5); if(KEY1==0) { while(1) { if(KEY1==0) { delay(5); if(KEY1==0) { key1++; TR0=0; TR1=1; } while(!KEY1); } if(k!=0) { switch(k) { case 1: k=0; sdm=ms*10+mg; while(1) { if(KEY1==0) { delay(5); if(KEY1==0) { key1++; } while(!KEY1); 10 西华大学课程设计 if(key1>=4) { key1=0; ms=sdm/10; mg=sdm%10; TR0=1; break; } } if(KEY9==0) { delay(5); if(KEY9==0) { sdm++; if(sdm>=60) sdm=0; D20=1; P1=table[sdm%10]; delay(5); D20=0; D21=1; P1=table[sdm/10]; delay(5); D21=0; } while(!KEY9); } if(KEY5==0) { delay(5); if(KEY5==0) 11 西华大学课程设计 { sdm--; if(sdm>=60) sdm=0; D20=1; P1=table[sdm%10]; delay(5); D20=0; D21=1; P1=table[sdm/10]; delay(5); D21=0; } while(!KEY5); } } break; case 2: k=0; sdf=fs*10+fg; while(1) { if(KEY1==0) { delay(5); if(KEY1==0) { key1++; } while(!KEY1); if(key1>=4) 12 西华大学课程设计 { key1=0; fs=sdf/10; fg=sdf%10; TR0=1; break; } } if(KEY9==0) { delay(5); if(KEY9==0) { sdf++; if(sdf>=60) sdf=0; D22=1; P1=table[sdf%10]; delay(5); D22=0; D23=1; P1=table[sdf/10]; delay(5); D23=0; } while(!KEY9); } if(KEY5==0) { delay(5); if(KEY5==0) 13 西华大学课程设计 { sdf--; if(sdf>=60) sdf=0; D22=1; P1=table[sdf%10]; delay(5); D22=0; D23=1; P1=table[sdf/10]; delay(5); D23=0; } while(!KEY5); } } break; case 3: k=0; sds=ss*10+sg; while(1) { if(KEY1==0) { delay(5); if(KEY1==0) { key1++; } while(!KEY1); if(key1>=4) { 14 西华大学课程设计 key1=0; ss=sds/10; sg=sds%10; TR0=1; break; } } if(KEY9==0) { delay(5); if(KEY9==0) { sds++; if(sds>=24) sds=0; D24=1; P1=table[sds%10]; delay(5); D24=0; D25=1; P1=table[sds/10]; delay(5); D25=0; } while(!KEY9); } if(KEY5==0) { delay(5); if(KEY5==0) { sds--; 15 西华大学课程设计 if(sds>=24) sds=0; D24=1; P1=table[sds%10]; delay(5); D24=0; D25=1; P1=table[sds/10]; delay(5); D25=0; } while(!KEY5); } } break; } break; } } } } //*********时钟时间显示*************// if(sum>=20) { sum=0; mg++; if(mg>=10) { mg=0; ms++; if(ms>=6) { 16 西华大学课程设计 ms=0; fg++; if(fg>=10) { fg=0; fs++; if(fs>=6) { fs=0; sg++; if(ss==2) if(sg==4) sg=0; if(sg>=10) { sg=0; if(ss<=2) ss++; if(ss>2) ss=0; D25=1; P1=0x00; P1=table[ss]; delay(5); D25=0; } D24=1; P1=0x00; P1=table[sg]; delay(5); D24=0; } 17 西华大学课程设计 D23=1; P1=0x00; P1=table[fs]; delay(5); D23=0; } D22=1; P1=0x00; P1=table[fg]; delay(5); D22=0; } D21=1; P1=0x00; P1=table[ms]; delay(5); D21=0; } D20=1; P1=0x00; P1=table[mg]; delay(5); D20=0; } } } void delay(uint m) { unsigned int i,j; for(i=0;i=40) { time=0; TR1=0; k=key1; key1=0; } } 19 西华大学课程设计 总 结 做了两周的课程设计,有很多的心得体会,有关于单片机的,也有关于模电数电等基础科目的。 因为单片机已经很久没复习,刚拿到目,不知道从哪入手,后来通过对书本的回顾,加深了对单片机的记忆。有些知识会迁移和联系模电数电。课堂教学考虑到大多数同学的需求,主要强调“基本”——基本知识、基本理论、基本方法、基本技能。而这次设计正是为我们提供了一个深入学习、探索的机会,成为课堂教学的有益补充。我们正面临就业问题,这次课设给了我们一个机会去试验。 20 西华大学课程设计 21 西华大学课程设计 参 考 文 献 1 普通图书 007 [1] 黄惟公(单片机原理与应用技术[M].:西安电子科大出版社2[2] 张毅刚(MC-51单片机应用设计(二版)[M].:哈工大出版社 2005 [3] 李广第(单片机基础[M](北京:北京航天航空大学出版社 [4] 杨文龙(单片微机原理及应用[M].西安:电子科技出版社 [5] 周航慈(单片机程序设计基础[M](北京:北京航天航空大学出版社 [6] 胡汉才(单片机原理及其接口技术[M](北京:清华大学出版社 22
/
本文档为【单片机时钟设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索