时钟课程设计

  • 格式:docx
  • 大小:677.37 KB
  • 文档页数:13

本科生实验报告实验课程单片机时钟课程设计
学院名称信息科学与技术学院
专业名称物联网工程
学生姓名曹林鑫
学生学号201413060301
指导教师谢兴红
实验地点6B607
实验成绩
二〇一六年十一月二〇一六年十二月
液晶课程设计
1: 液晶介绍
如今,科技进步给我们的生活带来了很大的变化。

液晶显示设备越来越多,
各种各样的液晶显示产品走进我们生活中。

液晶显示器由于具有低压、微功耗、显示信息量大、体积小等特点,在移动通信终端、便携计算机、GPS卫星定位系统等领域有广泛用途,成为使用量最大的显示器件。

液晶显示控制器作为液晶驱动电路的核心部件通常由集成电路组成,通过为液晶显示系统提供时序信号和显
示数据来实现液晶显示。

本设计主要是以AT89C51单片机为控制设备,lcd1602液晶显示器为显示设备,实现的一个可以显示静态汉字、动态字符、图片的液晶显示设计。

引入密码锁功能,通过键盘和密码锁的配合,实现控制显示内容与显示效果。

通过设置字模提取软件的相关参数值,再根据lcd1602的指令表及程序设计等提取所要用的汉字、字符、图片程序送往液晶显示器显示,并可做一些灵活的动态显示变换,提升显示效果。

并能通过设置密码和键盘控制显示内容和提示语。

其中,时钟电路和复位电路是单片机中最为基础的两个电路。

当键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。

在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。

这样,一个端口就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显。

本设计在Keil软件下,采用的是C语言进行软件设计,C语言使用助记符、符号、和数字等来表示指令的程序语言,具有容易理解和记忆且通用性强,设计方便等优点。

2:系统方案
设计的目标和功能
本设计采用AT89C51学习板,要求设计lcd1602液晶显示与单片机的显示接口电路,显示简单的数字时钟功能.
框图
烧入程序
硬件部分原理图:
单片机简介
AT89C51是一个低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C51单片机在电子行业中有着广泛的应用。

单片机功能
其主要功能特性有以下几点:
(1)与MCS-51产品指令系统完全兼容
(2)4k字节可反复擦写(大于1000次)Flash ROM;
(3)32个可编程I/O口线;
(4)128x8bit内部RAM;
(5)2个16位可编程定时/计数器中断;
(6)时钟频率0-24MHz;
(7)可编程UART串行通道;
(8)6个中断源;
(9)三级加密程序存储器;
(10)低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
(11)有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。

单片机引脚排列图
AT89C51为8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc51相同,其主要用于会聚调整时的功能控制。

功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。

其引脚图如图2.5.3所示。

图2.5.3 AT89C51引脚图
单片机在本次实验中所用到的引脚说明
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:反向振荡器的输出。

EA:在FLASH编程期间,加编程电源(VPP)。

RST:复位输入。

当振荡器复位器件时,保持RST脚两个机器周期的高电平时间。

P0口:数据口可以被定义为数据/地址的低八位,能够用于外部程序/数据存储器。

作通用I/O 口使用时,加上拉电阻。

P1口:控制按键,标准输入输出I/O 口,P1口管脚写入1后,被内部上拉为高,可用作输入。

P2口:控制液晶,既可用于标准输入输出I/O,也可用于外部或数据存储器程序存储器访问时的高八位地址。

P3.2 /INT0:控制中断,外部中断0输入。

2.6 时钟电路部分
单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTAL1和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得到的时钟信号比较稳定,实际使用中常采用这种方式。

图2.6振荡电路图
利用晶体本身的特性,可以利用晶振与电容搭建振荡电路与AT89C51引脚XTAL1及XTAL2相连,向单片机提供一个频率定度较高的时钟脉冲。

电路中电容典型值通常选择30pF。

电容的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。

晶体振荡频率的范围通常是在1.2-12MHz。

晶体频率越高,系统的时钟频率越高,单片机的运行速度也就越快。

复位电路部分
单片机在启动运行时,都需要先复位,它的作用是使CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。

MCS-51系列单片机本身,一般不能自动进行复位,必须配合相应的外部电路才能实现。

复位电路的作用就是使单片机在上电时能够复位或运行出错时进行复位状态。

2.7复位电路图
AT89C51的复位引脚RST外接开关复位电路,当电路工作后,闭合开关,只要在RST引脚上出现2个机器周期以上的高电平,单片机即可复位。

若RST始终保持高电平,则可对AT89C51循环复位。

通过外部复位电路给电容C充电加至RST引脚一个短的高低电平信号,此信号随着Vcc对电容C的充电过程而逐渐回落,即RST引脚上的高电平持续时间取决于电容C的充电时间,因此为保证系统能可靠地复位,RST引脚上的高电平必须维持足够长的时间。

液晶:Lcd1602:
工业字符型液晶,能够同时显示16x02即32个字符。

(16列2行)
注:为了表示的方便,后文皆以1表示高电平,0表示低电平。

1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。

它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。

1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。

市面上字符液晶大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。

管脚功能:
1602采用标准的16脚接口,其中:
第1脚:GND为电源地
第2脚:VCC接5V电源正极
第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。

第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。

第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。

第6脚:E(或EN)端为使能(enable)端,高电平(1)时读取信息,负跳
变时执行指令。

第7~14脚:D0~D7为8位双向数据端。

第15~16脚:空脚或背灯电
源。

15脚背光正极,16脚背光负极。

特性
3.3V或5V工作电压,对比度可调
内含复位电路
提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能
有80字节显示数据存储器DDRAM
内建有192个5X7点阵的字型的字符发生器CGROM
8个可由用户自定义的5X7的字符发生器CGRAM
特征应用
微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。

操作控制
注:关于E=H脉冲——开始时初始化E为0,然后置E为1。

字符集
1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。

在单片机编程中还可以用字符型常量或变量赋值,如'A‟。

因为CGROM储存的字符代码与我们PC中的字符代码是基本一致的,因此我们在向DDRAM写C51字符代码程序时甚至可以直接用P1=…A‟这样的方法。

PC在编译时就把'A'先转换为41H代码了。

字符代码0x00~0x0F为用户自定义的字符图形RAM(对于5X8点阵的字符,可以存放8组,5X10点阵的字符,存放4组),就是CGRAM了。

0x20~0x7F为标准的ASCII码,0xA0~0xFF为日文字符和希腊文字符,其余字符码(0x10~0x1F及0x80~0x9F)没有定义。

引脚功能:
指令集
时钟程序设计
要求:
小时分钟和秒数,并且可以进位
结果显示。