版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、郑州航空工业管理学院单片机课程设计论文2010届 电子信息工程专业1013083班级二O二年十二月二十七日基于STC89C5单片机的数字时钟设计一. 摘要该课程设计是利用STC89C52单片机内部的定时/计数器,以及行 列矩阵键盘和LED显示器等部件,设计一个单片机电子时钟。设计的 电子时钟通过数码管显示,并能通过按键实现设置时间和暂停、 启动 控制。二. 关键词单片机,数字时钟,定时中断,定时/计数器三. 设计要求1、利用单片机内部的定时器实现时钟功能;2、能够显示小时、分钟、秒钟;3、复位后初始时间为12-00 - 00;4、能够设定时分秒。四. 基本原理用定时/计数器TO,工作于定时方式
2、,采用方式1,对12MHZ的 系统时钟进行定时计数,初值设为 XXYY(自己计算)。形成定时时间 为50ms再有循环20次控制形成1S的定时时间,用此时间间隔作 为秒表。秒进60分加1,分够60时加1,时够24清0。把秒、分、时计数器分成十位和个位放到 8个数码管的显示缓冲区,通过数码管显示出来。显示格式为小时十位、小时个位,一,分十位、分个位,一,秒十位、秒个位。在处理过程中加上了按键 判断程序,能对按键处理。五. 单片机定时计数资源介绍1. 工作方式寄存器TMOD寄存器TMOD是定时器/计数器的工作方式控制寄存器,是一个可编程的特殊功能寄存器,字节地址为89H,不可位寻址。其中低四位控制T
3、0,高四位控制T1,其格式如图所示:D7 D6 D5 D4 D3 D2 D1 D0GATEC/M1M0GATEC/亍M1M0GATE控制方式选择位,用来控制定时器启动操作方式当GATE=C0寸,只能由软件控制TR0或TR1位来控制定时器的启 停。TRi(i=0,1)位为1,定时器启动,开始工作;TRi(i=0,1)为0时, 定时器停止工作;当GATE=1时,定时器的启动要由外部中断引脚和 TRi(i=0,1)位 共同控制。只有当外部中断引脚为高时,TRi(i=0,1)置1才能启动定 时器工作。C/T:计数/定时方式选择位,当C/T=0时设置为定时器工作方 式,计数脉冲由内部提供,计数周期等于机
4、器周期。当C/T =1时设置为计数器工作方式,计数脉冲由外部引脚T0或T1引入。M1,M0:工作方式控制位,这2位可形成四种编码,对应于四种工 作方式。4种工作方式对应于下表:M1M0工作方式方式说明00方式013位计数器,只用TLi低5位和THi的8位01方式116位计数器10方式28位自动重装计数器,THi的值在计数 中不变,TLi溢出时,THi中的值自动装入TLi中11方式3T0分成2个独立的8位计数器,T1停止计数2.控制寄存器TCON控制寄存器TCON是一个8位特殊功能寄存器,字节地址为88H,可 以位寻址,位地址为88H-8FH,用来存放控制字,控制定时器的启停, 定时器的溢出标志
5、设置和外部触发方式等。D7 D6 D5 D4 D3 D2 D1 DOTF1TR1TF0TR0IE1IT1IE0IT0本设计中用到了两个定时器,并且都用的是方式1,定时器0用来产生秒信号,定时器1用来控制在调表的时候产生闪烁。程序的初始化如下:TMOD=0x11;定时器0,1的工作方式1TH0=(65535-50000)/256; 定时器 0 赋初值TL0=(65535-50000)%256;TH1=(65535-50000)/256;/ 定时器 1 赋初值TL1=(65535-50000)%256;TR0=1;/打开定时器0TR1=0;/关闭定时器1ET1 = 1;打开定时器1的中断ET0=1
6、;打开定时器0的中断EA=1;打开总中断六. 外围电路简介键盘是单片机应用系统中最常用的输入设备,在单片机应用系统 中,操作人员一般都是通过键盘向单片机系统输入指令、地址和数据, 实现简单的人机通信。键盘实际上是一组按键开关的集合, 平时按键 开关总是处于断开状态,当按下键时它才闭合。键盘的结构形式一般 有两种:独立式键盘和矩阵式键盘。矩阵式键盘的工作方式有3种:查询工作方式、定时扫描工作方式和中断工作方式。LED数码管显示器:在单片机应用系统中,经常用到 LED数码管 作为显示输出设备,LED数码管显示器虽然显示信息简单,但它具有 显示清晰、亮度高、使用电压低、寿命长、与单片机接口方便等特点
7、, 基本上能够满足单片机应用系统的需要,所以在单片机应用系统中经 常用到。LED数码管显示器是由发光二极管按一定的结构组合起来的 显示器件。在单片机应用系统中通常使用的是 8段式LED数码管显示 器,它有共阴极和共阳极两种。所谓译码方式是指由显示字符转换得 到对应的字段码的方式。对于LED数码管显示器,通常的译码方式有 两种:硬件译码方式和软件译码方式。LED数码管在显示时,通常有 两种显示方式:静态显示方式和动态显示方式。在使用时可以把它们 组合起来。在实际应用时,如果数码管个数较少,通常用硬件译码静 态显示,在数码管个数较多时,则通常用软件译码动态显示。七. 电子时钟的硬件设计复位电路串口
8、电路晶振电路单片机显示电路键盘电路C130pC2X112M30pC3I . I 10UP10P11R110kQ QU12122129 kU274HC573U374HC57324252627,XTAL1P0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6RSTP0.7/AD7P2.0/A8P2.1/A9 P2.2/A10PSENALEEAP2.3/A11 P2.4/A12P2.6/A14P2.7/A15P1 0/T2P3.0/RXDP3.1/TXDP3.2/INTLP1 1/T2EXP1.2P1.4P3.4/T0P1.5P3.
9、5/T1P1.6P3.6/WRP1.7P3.7/RDAT89C524523DDDDDDDD E 0109101P*本设计的硬件电路主要由上电自动复位电路,时钟电路,74HC573锁存 器电路和数码管及按键电路组成。1. 上电自动复位电路在系统上电的时候对单片机复位。2. 晶振电路主要产生单片机的时钟电路。3. 锁存器电路控制数码管可以节省单片机的10资源,且74HC573提供的电流足以驱动共阳极数码管,且具有控制简单等优点。八. 元器件清单序号器件名称参数数量1单片机STC89C5212晶振12M13电容30pF24电容10uF15电阻10K16锁存器74HC57327数码管共阳2九软件流程图
10、设计注:按键处理模块/宏定义宏定义/定义按键,控制调表位 /定义按键,控制调表加 /定义按键,控制调表减 /把局键盘变为独立按键/声明按键扫描程序/声明中断初始化函数/声明粗劣延时函数/声明调表辅助显示函数/声明显示函数按键处理设置为:如没有按键,则时钟正常走时。当按下 K16按键时,进 入调分状态,时钟停止走动;按 K 15和K 14按键可进行加1或减1操作;继 续按K 16键可分别进行分和秒的调整;最后按 K0键将退出调整状态,时钟开 始计时运行。十.软件程序#in clude<reg52.h>#defi ne uint un sig ned int#defi ne uchar
11、 un sig ned char / sbit con=P33;sbit add=P3A2;sbit sub=P3A1;sbit gn d=P3A4;void keysca n();void in it();void delay( uint z);void display11();void display();uchar hour,minute,second,count,j;/ 定义各现实的数据uchar code table=0xc0,0xf9,0xa4,0xb0,0x99,定于数码管段码0x92,0x82,0xf8,0x80,0x90;void delay(uint z)/粗劣延时函数ui
12、 nt x,y;for(x=z;x>0;x-)for(y=100;y>0;y-);void display11()/调表辅助显示函数if(cou nt!=1)P0=tablehour/10;P2=0x7f;delay(2);P2=0xff;P0=tablehour%10;P2=0xbf;delay(2);P2=0xff;P0=0xbf;P2=0xdf;delay(2);P2=0xff;if(cou nt!=2)P0=tablemi nu te/10;P2=0xef;delay(2);P2=0xff;P0=tablemi nute%10;P2=0xf7;delay(2);P2=0xf
13、f;P0=0xbf;P2=0xfb;delay(2);P2=0xff;if(cou nt!=3)PO=tableseco nd/10;P2=0xfd;delay(2);P2=0xff;P0=tableseco nd%10;P2=0xfe;delay(2);P2=0xff;P2=0xff;/ 显示函数void display()P0=tablehour/10;P2=0x7f; delay(2); P2=0xff;P0=tablehour%10;P2=0xbf;delay(2);P2=0xff;P0=0xbf;P2=0xdf;delay(2);P2=0xff;P0=tablemi nu te/10
14、;P2=0xef;delay(2);P2=0xff;P0=tablemi nute%10;P2=0xf7; delay(2);P2=0xff;P0=0xbf;P2=0xfb;delay(2);P2=0xff;PO=tableseco nd/10;P2=0xfd;delay(2);P2=0xff;P0=tableseco nd%10;P2=0xfe;delay(2);P2=0xff;P2=0xff;void init()/中断初始化函数gn d=0;hour=12;minu te=0;sec on d=0;TMOD=Ox11;TH0=(65535-50000)/256;TL0=(65535-50
15、000)%256;TH1=(65535-50000)/256;TL1=(65535-50000)%256;TR0=1;TR1=0;ET仁 1;ET0=1;EA=1;void ma in ()/ 主函数ini t();while(1)keysca n();if(TR1=1)if(j<=20)display11();if(j>20&&j<=40)display。;void keysca n()/ 键盘扫描函数if(con=0)delay(2);if(con=0)while(!c on);coun t+;if(cou nt!=O)TR0=0;TR1=1;if(co
16、un t=0)display();if(co un t=1)if(add=0)delay(120);if(add=0)hour+;if(hour=24)hour=0;if(sub=0)delay(120);if(sub=0)hour-;if(hour=-1)hour=23;if(coun t=2)if(add=0)delay(120);if(add=0)minu te+;if(mi nute=60)minu te=0;if(sub=0)delay(120);if(sub=0)minu te-;if(mi nu te=-1)minu te=59;if(coun t=3)if(add=0)dela
17、y(120);if(add=0)second+;if(sec on d=60)sec on d=0;if(sub=O)delay(120);if(sub=0)sec on d-;if(sec on d=-1)second=59;if(co un t=4)coun t=0;TR0=1;TR1=0;void timer() interrupt 1/ 定时器 TO 中断函数uchar i;TH0=(65535-50000)/256;TL0=(65535-50000)%256;i+;if(i=20)i=0;second+;if(sec on d=60)sec on d=0;minu te+;if(mi
18、 nute=60)minu te=0;hour+;if(hour=24) hour=0; 定时器T1中断函数void sha n()in terrupt 3TH1=(65535-50000)/256;TL1=(65535-50000)%256;j+;if(j<=20)display11();if(j>20&&j<=40)display();if(j=41)j=0;课程设计总结:通过这次的课程设计,我更加了解了KeilC51集成环境和PROTEUS仿真软件的使用,用此软件练习电子时钟的设计,不仅能够掌握此软件的使用方法,而且 复习了原来的C语言,对电子时钟的原理和电子时钟的汇编程序有了更进一步的理 解。仿真实现了把抽象的东西具体化,把理论和实际结合起
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- .7市场部培训紫琪尔项目
- 2025年全球及中国无人机测量软件行业头部企业市场占有率及排名调研报告
- 2025年全球及中国珍珠奶茶配料行业头部企业市场占有率及排名调研报告
- 2025年全球及中国电信行业CRM软件行业头部企业市场占有率及排名调研报告
- 2025年全球及中国便携式四合一气体检测仪行业头部企业市场占有率及排名调研报告
- 2025年全球及中国塑料辅助设备行业头部企业市场占有率及排名调研报告
- 2025-2030全球机器人滚珠丝杠行业调研及趋势分析报告
- 2025年全球及中国一次性发热暖袋行业头部企业市场占有率及排名调研报告
- 2025年全球及中国金属箔电流传感贴片电阻行业头部企业市场占有率及排名调研报告
- 2025-2030全球猫咪吹风机行业调研及趋势分析报告
- 2024-2025学年广东省深圳市南山区监测数学三年级第一学期期末学业水平测试试题含解析
- 广东2024年广东金融学院招聘专职辅导员9人笔试历年典型考点(频考版试卷)附带答案详解
- DB31∕731-2020 船舶修正总吨单位产品能源消耗限额
- 2024年卫生专业技术资格考试卫生检验技术(初级(师)211)相关专业知识试题及答案指导
- 《手卫生知识培训》培训课件
- 江苏省南京鼓楼区2024年中考联考英语试题含答案
- 儿科护理学试题及答案解析-神经系统疾病患儿的护理(二)
- 15篇文章包含英语四级所有词汇
- 王阳明心学完整版本
- 四年级上册竖式计算300题及答案
- 《智能投顾 大数据智能驱动投顾创新》读书笔记思维导图
评论
0/150
提交评论