用PG12864LCD设计的指针式电子钟.docx

上传人:b****1 文档编号:1629345 上传时间:2022-10-23 格式:DOCX 页数:30 大小:224.19KB
下载 相关 举报
用PG12864LCD设计的指针式电子钟.docx_第1页
第1页 / 共30页
用PG12864LCD设计的指针式电子钟.docx_第2页
第2页 / 共30页
用PG12864LCD设计的指针式电子钟.docx_第3页
第3页 / 共30页
用PG12864LCD设计的指针式电子钟.docx_第4页
第4页 / 共30页
用PG12864LCD设计的指针式电子钟.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

用PG12864LCD设计的指针式电子钟.docx

《用PG12864LCD设计的指针式电子钟.docx》由会员分享,可在线阅读,更多相关《用PG12864LCD设计的指针式电子钟.docx(30页珍藏版)》请在冰豆网上搜索。

用PG12864LCD设计的指针式电子钟.docx

用PG12864LCD设计的指针式电子钟

 

毕业设计

 

题目用PG12864LCD设计的指针式电子钟

所在院(系)物理与电信工程学院

专业班级电子信息科学与技术

指导教师

完成地点

目录

引言1

1设计任务及方案论证1

1.1设计任务与要求1

1.2总体方案论证与设计1

2系统硬件设置1

2.1STC89C51单片机简介1

2.2显示模块设计3

2.2.1PG12864LCD的特性介绍4

2.2.2LCD12864引脚介绍4

2.2.312864内部功能器件及相关功能5

2.2.412864液晶与单片机接口电路6

2.3设置模块8

2.4振荡电路9

2.5复位电路9

3系统软件设计9

3.1总体软件设计9

3.2时钟函数模块10

3.3指针时钟设计11

3.3.1实现功能11

3.3.2实现算法11

3.3.3函数设计13

3.4显示函数模块15

3.4.1实现功能17

3.4.2函数设计17

3.5.1功能18

3.5.2函数18

3.6主函数模块19

4.设计结果20

5.使用方法20

6.设计进度20

7.教学单位可以提供的条件20

致谢21

参考文献21

 

用PG12864LCD设计的指针式电子钟

[摘要]本设计采用的是STC89C51单片机,通过单片机内部定时器定时实现时钟定时计数功能,并以模拟时钟的形式显示在LCD_12864上。

同时可通过三个按键可实现时间的调节。

[关键词]时钟AT89C51单片机LCD12864液晶

 

ByusingtheanalogelectronicclockdesignPG12864LCD

Abstract:

ThisdesignusesSTC89C51microcontroller,throughtheMCUinternaltimerfromtimetotimetoachievetheclocktimingandcountingfunctionandintheformofanalogclockdisplayontheLCD12864.Atthesametimecanbeadjustedbythethreekeystorealizethetime.

Keywords:

AT89C51microcontrollerLCD12864LCDclock

 

引言

如今二十一电子钟、机械式手表等钟表已经普遍存在于市场,并且钟表已经成为人们生活中不可缺少的一部分。

在生活中到处都能看到其身影。

当穿行于马路上时总会看到几乎每个人手腕上戴着一块手表。

当大人家里做客时总能看到大厅里面挂着个钟表。

当打开手机时屏幕上依旧是钟表的画面。

时间伴随着我们钟表也成为我们生活中必不可少的一大部分。

当今市场有好多电子钟,但大多数是纯数字式的,指针式的电子钟比较新颖,而且具有真实表盘式时钟的效果。

用PG12864LCD设计的模拟电子钟采用PG12864LCD液晶屏,用来模拟表盘与时分秒指针指示当前时钟,此模拟指针式电子钟实现的功能为:

在PG12864显示屏上显示圆形表盘与时分秒三个指针表示当前时刻;三个按键,K1键用来选择工作模式;K2键用来选择调整时分秒;K3键用来调节大小。

1设计任务及方案论证

1.1设计任务与要求

利用单片机等器件做一个简易的模拟指针式时钟,硬件设计以单片机为主,主要包括显示模块、复位模块、时钟模块。

采用PG12864液晶屏作为显示单元,液晶屏上显示圆形表盘、时、分、秒指针,并且设置按钮可以调节时间,软件设计主要是通过单片机编程软件KeilC51设计,模拟仿真是利用仿真软件Proteus对所设计的硬件电路和程序进行调试。

1.2总体方案论证与设计

在设计中要包含显示模块,控制器,设置模块;

方案一:

利用基于MFC的Windows应用程序在屏幕上显示一个指针式时钟,并可通过菜单选项对时间调节,设计的时钟画面清晰,显示准确,但缺点是时间必须与系统机器时间一样,不可以随意设置时间,另外此方案涉及微软基础类库,对于不熟悉的我们难度较大。

方案二:

因此我们采用另一套方案,显示模块用LCD12864模块,可以显示系统时间;整个代码实现主要由51单片机来实现;设置模块为按键处理可自行调节时间,整体流程以AT89C51单片机为控制核心,将得到的数据通过LCD12864模块显示出来,同时通过相应的按键调整相应的值,此方案具有设计简单,成本低廉,可执行度高等优点,因此采用本方案。

2系统硬件设置

2.1STC89C51单片机简介

在设计中可用STC89C5代替AT89C51,此芯片具有速度

更高,功能更全,寿命更长,价格更低等优点;我们采用双

列直插40引脚的STC89C51,它可以实现ISP在线编程功能,

然而AT89C51则不可以,将AT89C51的程序通过软件直接下载

到STC89C51中后,就可以代替AT单片机直接工作,基本上

都不需要做修改就可以正常工作了,STC公司推出的51系列

单片机芯片是兼容其它51单片机的,而51单片机作为单片机

界的应用最广泛芯片,几乎每一个高等院校、普通学校、网

站、业余单片机培训都是用51单片机作为基础而学习的,正

是因为如此可以利用的参考资料和例子也是最多的,而且由

于STC89C51自带有EEPROM,其在程序中更是可以直接修改,

断电之后也不会丢失数据。

STC89C51单片机管脚图如图2.1所示:

STC89C51单片机的引脚介绍:

-VCC:

供电电压

-GND:

接地   

-P0口:

P0口是一个8位双向I/O口,当每个引脚第一次被写1时,定义其为高阻态输入,此外P0能够用来作为外部程序数据存储器,为此它可以被定义为数据/地址的第八位,在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此外P0作为数据口时,需外接上拉电阻。

-P1口:

P1口缓冲器能接收输出4TTL门电流,当P1口管脚写入1后,由于P1口是一个内部提供上拉电阻的8位双向I/O口,所以被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,正是由于内部上拉的缘故,在FLASH编程和校验时,P1口可以作为第八位地址接收;

-P2口:

P2口也是一个内部具有上拉电阻的8位双向I/O口,P2口缓冲器同样可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入,并因此在作为输入时,P2口的管脚被外部拉低,将输出电流,正是由于内部上拉的缘故,P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位,在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容,P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

    

-P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流,当P3口写入“1”后,它们被内部上拉为高电平,并用作输入,作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

此外P3口除了作为一般的I/O口外,更重要的用途是它还有复用功能,如下所示:

P3.0RXD第二功能可作为串行输入口;

P3.1TXD第二功能可作为串行输出口;

P3.2/INT0(外部中断0);

P3.3/INT1(外部中断1);

P3.6/WR第二功能可作为外部数据寄存器写选通;

P3.7/RD第二功能可作为外部数据寄存器读选通;

P3口同时为闪烁编程和编程校验接受一些控制信号;

RST:

复位输入,当振荡器复位时,要保持RST脚两个机器周期的高电平,当STC89C51通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位;初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,指针堆栈写入07H,其它专用的寄存器被写“0”,RESET由高转低时,单片机内部即从0000H地址开始执行,但是,初始复位不改变RAM(包括工作寄存器R0-R7)的状态。

特殊功能寄存器

初始态

特殊功能寄存器

初始态

ACC

00H

B

00H

PSW

00H

SP

07H

DPH

00H

TH0

00H

DPL

00H

TL0

00H

IP

xxx00000B

TH1

00H

IE

0xx00000B

TL1

00H

TMOD

00H

TCON

00H

SCON

xxxxxxxxB

SBUF

00H

P0-P3

1111111B

PCON

0xxxxxxxB

AALE/PROG:

地址锁存允许的输出电平用于锁存地址的地位字节,当访问外部存储器时,在FLASH编程期间,此引脚用于输入编程脉冲;而在平常,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6,因此它可用作对外部输出的脉冲或用于定时目的,然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲,如想禁止ALE的输出可在SFR8EH地址上置0,此时ALE只有在执行MOVX,MOVC指令时ALE才起作用;另外,该引脚被略微拉高,如果微处理器在外部执行状态ALE禁止,置位无效[1];

-PSEN:

外部程序存储器的选通信号,在由外部程序存储器取指期间,每个机器周期两次/PSEN有效,但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现;

-EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器,注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器,在FLASH编程期间,此引脚也用于施加12V编程电源(VPP);    

-XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入;    

-XTAL2:

来自反向振荡器的输出;

振荡器特性:

XTAL1和XTAL2分别为反向放大器的输入和输出,该反向放大器可以配置为片内振荡器,石晶振荡和陶瓷振荡均可采用,如采用外部时钟源驱动器件,XTAL2应不接,有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度[1]。

2.2显示模块设计

本设计显示模块采用不带字库PGLCD12864。

2.2.1PG12864LCD的特性介绍

PG12864LCD是像素可寻址的图形液晶显示屏模块,PG12864LCD特性如下:

工作电压为+5V,可自带驱动LCD所需的负电压;

全屏幕点阵,点阵数为128列*64行,可显示8行*4行个(16*16点阵)汉字,也可完成图像,字符的显示[3];

与CPU接口采用5条位控制总线和8位并行数据总线输入输出;

内部有显示数据锁存器,自带EL驱动;

简单的操作指令;

数据口可以采用串行传输与并行传输

2.2.2LCD12864引脚介绍

表2.2LCD12864引脚

管脚号

管脚名称

管脚功能描述

1

VSS

接地

2

VDD

接电压

3

V0

液晶显示器驱动电压

4

RS

RS=“H”表示DB7-DB0为显示数据;RS=“L”表示DB7-DB0为显示指令数据

5

R/W

R/W=“H”,E=“H”数据

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 党团建设

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1