单片机电子时钟设计.docx
《单片机电子时钟设计.docx》由会员分享,可在线阅读,更多相关《单片机电子时钟设计.docx(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机原理及应用综合实训报告题目: 电子时钟的设计 院 别: 自动化学院 专 业: 电气工程及其自动化 1 姓 名: 笑嘻嘻 学 号: 26 指导教师: 祁伟 辩论日期: 2011年9月19日 第 26 页电子时钟制作摘 要本实训借用实验板的MCS51单片机定时、中断功能完成电子时钟的定时工作,应用8051对单片机I/O口驱动发光二极管、LED进展电子时钟时、分、秒显示。应用8051P3口、8255B口完成时间的设定工作。利用P1口参加华彩设计,如发光二极管按键指示、时钟报时等。再根据电子时钟实际应用完成系统总体设计。,根据系统总体设计完成编程设计工作,最后通电、软件调试、运行。关键词:电子时
2、钟;8051; 8051P3;8255B目录1电子时钟的概述12电子时钟的硬件电路设计1选用单片机2发光二极管8字数码管的显示3单片机I/O口扩展4独立式按键53电子时钟软件设计局部6程序流程图6定时中断效劳程序流程图8扩展功能程序流程84电子时钟实用说明94心得体会95附录10程序代码101电子时钟的概述电子时钟功用,能利用MCS51单片机定时、中断功能完成时间的定时工作。整个系统具有参数设定、时间运行、报时、查询当前年、月、日等功能。开机可显示HELLO-,按某个特定的按键后,时钟还可以开场计时,还可以通过另一些键功能,完成分,时、日、月、年参数设定。参数设定完后,也可以通过一些键继续计时
3、。电子时钟常显示的是当前的时间,年、月、日还可以通过按几个特定的键切换、查询, 6位LED显示查询的内容,如现在的年月日。考前须知:时钟计时时可进展时间查询,但不能更改参数,假设要更改参数,必须先停顿时钟运行。2电子时钟的硬件电路设计2.1选用单片机MCS51系统选用8051单片机,如图1所示。8051单片机内有4KROM、256字节RAM,程序存放在4KROM。8051单片机最小系统组成有:1时钟电路:工作时钟;2复位电路,如图2所示;3RAM:数据存储4ROM:程序存储5I/O接口:及外界交互 晶振电路如图3所示。图3 图2 图12.2发光二极管8字数码管的显示LED显示有静态显示与动态显
4、示两种方式。动态显示接口电路简图如图4所示。将各位数码管的段并联接在一起,由P1口控制字型口,每一个数码管的共阴极共阳极接到P2.0、P2.1作为位选信号。虽说要显示的字型码通过P1口同时送到了每一个数码管,但它们不会同时显示同一个字符,只有控制共阴极共阳极的位选信号有效时,对应的数码管才会显示相应字符。这种由字型口控制要显示字符的字形码,依此循环选通每位数码管的位选信号就得到了动态显示效果。它主要是利用人眼的视觉暂留特性及数码管得余光特性,看上去似乎是多位数码管同时显示。是当显示位数较多时,节省硬件,接口电路简单,但显示占用CPU时间。静态显示占用CPU时间短,显示简单、稳定,但当显示位数较
5、多时,占用接口资源多。动态显示接口电路较简单,但占用CPU时间,显示亮度 较静态显示差,一般说,显示位数较多时,采用动态或串并转换;显示位数较少时,采用静态显示方式。 图4静态显示接口电路如图5所示。选用共阴极LED,将共阴极点连接在一起接地,每一位的段选线及一个8位并行口相连,只要将要 显示的字符的字型码送至并行口锁存, 图5LED显示器上便立即显示出该字符,直到CPU送来一个新的字型码为止,由于静态显示每位数码管均有独立的段选码,耗电量大,硬件多。如要外接6个数码管,那么需要6个8位并行口。2.3单片机I/O口扩展当单片机构成系统时,常常I/O口不够用,此时可利用MCS51的扩展能力,根据
6、需要扩展相应接口,如可编程接口芯片8255及MCS51单片机连接可扩展I/O;利用MCS-51单片机的 串行口扩展并行I/O接口。实验板原理图的显示局部就是利用串入/并出技术实现2位数码管的显示。2.4独立式按键 键盘是一组按钮式开关的集合,常采用软件来识别。键盘的操作步骤:识键。判断是否有键按下键入,假设有,那么需进一步译键。译键。在有键入的情况下,进一步识别是哪一个键,以便作进一步处理。键义分析。根据识别的结果,明确相应的键义。如果是数字键,应得出输出的数值;如果是功能键,那么应知道具体的操作要求。 键盘构成:独立联接式非编码键盘。 特点:每个键相互独立,各自接通一条输入数据线。键未按下时
7、,相应的数据线处于高电平,即为“1态。当某键按下时,该键所连之数据线接地,即为“0态。独立联接式编码键盘。 特点:在键数较多时,可采用独立式编码键盘,由4线-16线编码电路进展编码。 矩阵联接式非编码。特点:先使一行线接地,然后检查列线。如果某条列线也是低电位,那么可判别两线相交处的某号键已按下。假设在扫描时没有发现有列线为地电位,那么说明此行中无键按下。那么可将下一行线接地,如此逐一扫描列线,直到查完最后一行为止。 实验板中键盘电路设计可根据需要组合成独立联接式非编码键盘及矩阵联接式非编码,见图6所示。图63电子时钟软件设计局部3.1程序流程图编写程序之前先绘制程序流程图,理清思路,使之能简
8、明、直观指示程序流向,且很容易由此编写出具体的源程序。将程序以模块方式分割成具有相应功能的子程序。根据系统功能,合理安排主程序任务,中断效劳程序任务。图1-6主程序框图开场各功能的初始化有按键否?显示HELLO-YNP3.2键吗?时钟运行K12键吗?K13键吗?Y参数设定YNN日查询显示K14键吗?月查询显示K15键吗?年查询显示YYYNNN程序设计有两个分支:参数设定及时钟运行。静态参数设定时,定时器关闭,只完成参数“加一键的设定工作。时钟运行时,启动定时器开场计时。编写程序时, 图7首先理清思路,即通过流程图确定算法。主程序框图 如图7所示。在主程序中,分别初始化了定时器0与外部中断0。定
9、时器0的中断效劳程序用于实现时钟运进入中断图1-7中断效劳程序框图定时初值重置秒到否?NYN秒加1分到否?分加1时到否?时加1日到否?日加1月到否?月加1年到否?年加1Y中断返回NNNNYYYY行时的秒加1及进位功能。外部中断0的中断效劳程序使r=1。因此,当开场运行程序时,r=0,数码管按下时,进入外部中断0中断效劳程序,使r=1,退出中断效劳程序后,时钟开场运行;在时钟 运行过程中,如果分别按下K13、K14、K15可设置时间,查询年、月、日。3.2定时中断效劳程序流程图定时中断效劳程序流程图如图8所示。图8 图8图8扩展功能程序流程如图9所示。年查询显示月查询显示日查询显示K12或k13
10、k12或k13K12或k15加或减参数加或减参数加或减参数时钟运行P图94电子时钟实用说明1、开机时,显示HELLO-。2、按下K16键,电子时钟开场运行,数码管显示时、分、秒。3、按下K13键,进入时间参数设置,此时可再次通过K13键进展年、月日、时分的切换,并通过K12、K14可分别对年、月、日、时、分加1、减1,由此完成时间的设定。4、当数码管显示时分秒,可通过K14、K15查询年、月、日。4心得体会在本次实验中重新复习了单片机实验的内容,更加深了对程序与工程的训练。虽然开场的时候感觉比拟,后来经过多天的努力与温习,终于可以把以前半懂不懂的知识比拟完整的拼凑在一起。这次实验程序的编写与调
11、试所花时间比拟多,写报告的用的时间比拟少。对于这次实验的缺乏之处还是需要更深刻的检讨,希望以后更加努力。5附录程序代码/功能描述:电子时钟 /硬件电路参看实验板#include#include#define uchar unsigned char#define uint unsigned int#define COM8255 XBYTE0xffff#define PA8255 XBYTE0Xfffc#define PB8255 XBYTE0Xfffd#define PC8255 XBYTE0Xfffe#define OSC_FREQ 12000000 /12Mhz#define C1ms (6
12、5536 - OSC_FREQ/(12000000/980) /1ms定时 sbit P1_4=P14;/位选控制sbit P1_5=P15;sbit P1_6=P16;sbit P1_7=P17;sbit P2_0=P20; /数码管段码控制 asbit P2_1=P21;sbit P2_2=P22;sbit P2_3=P23;sbit P2_4=P24;sbit P2_5=P25;sbit P2_6=P26;sbit P2_7=P27;/数码管段码控制 dpsbit P3_2=P32; /中断、返回计时sbit es=P24; /更新静态显示sbit P1_2=P12;/8255片选P1_
13、2=0sbit P1_1=P11;/8255片选P1_1=1sbit P1_0=P10;/8255片选P1_0=0uchar code hello=0x89,0x86,0xc7,0xc7,0xfc,0x02; /HELLO-uchar code number1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /动态显示0-9uchar code number2=0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6; /静态显示0-9uchar code number3=0x40,0x79,0x2
14、4,0x30,0x19,0x12,0x02,0x78,0x00,0x10; /动态显示0-9 dp点亮uint year=2021,month=9,day=3,hour=15,minute=35,second=25;uint x,y,m,n,i=0,j=0,k=0,r=0;void Timer_1ms(uint _1ms); /延时1msvoid Set_Init_Timer0(); /定时器0初始化函数void Set_Init_Xint0(); /外部中断0初始化函数void Set_Init_8255(); /8255初始化程序void dis_hello();/开机显示HELLO-vo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 电子 时钟 设计
限制150内