基于ATmega16单片机的电子时钟设计0504文档格式.docx
《基于ATmega16单片机的电子时钟设计0504文档格式.docx》由会员分享,可在线阅读,更多相关《基于ATmega16单片机的电子时钟设计0504文档格式.docx(38页珍藏版)》请在冰豆网上搜索。
![基于ATmega16单片机的电子时钟设计0504文档格式.docx](https://file1.bdocx.com/fileroot1/2022-10/9/46af7507-1677-4d82-adaa-5465dce9f7a9/46af7507-1677-4d82-adaa-5465dce9f7a91.gif)
2.1AVR单片机简介
AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC精简指令集高速8位单片机。
AVR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪表仪器、通讯设备、家用电器等各个领域。
1997年,由Atmel公司挪威设计中心的A先生和V先生,利用Atmel公司的Flash新技术,共同研发出RISC精简指令集高速8位单片机,简称AVR。
2.2Atmega16简介
ATmega16是基于增强的AVRRISC结构的低功耗8位CMOS微控制器。
由于其先进的指令集以及单时钟周期指令执行时间,ATmega16的数据吞吐率高达1MIPS/MHz,从而可以减缓系统在功耗和处理速度之间的矛盾。
ATmega16AVR内核具有丰富的指令集和32个通用工作寄存器。
所有的寄存器都直接与运算逻单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。
这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。
ATmega16有如下特点:
16K字节的系统内可编程Flash(具有同时读写的能力),512字节EEPROM,1K字节SRAM,32个通用I/O口线,32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益的ADC,具有片内振荡器的可编程看门狗定时器,一个SPI
串行端口,以及六个可以通过软件进行选择的省电模式。
2.3ATmega16产品特性
高性能、低功耗的8位AVR微处理器
先进的RISC结构
131条指令
大多数指令执行时间为单个时钟周期
32个8位通用工作寄存器
全静态工作
工作于16MHz时性能高达16MIPS
只需两个时钟周期的硬件乘法器
非易失性程序和数据存储器
16K字节的系统内可编程Flash,擦写寿命:
10,000次
具有独立锁定位的可选Boot代码区,通过片上Boot程序实现系统内编程,真正的同时读写操作
512字节的EEPROM,擦写寿命:
100,000次
1K字节的片内SRAM
可以对锁定位进行编程以实现用户程序的加密
JTAG接口(与IEEE1149.1标准兼容)
符合JTAG标准的边界扫描功能
支持扩展的片内调试功能
通过JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程外设特点
两个具有独立预分频器和比较器功能的8位定时器/计数器
一个具有预分频器、比较功能和捕捉功能的16位定时器/计数器
具有独立振荡器的实时计数器RTC
四通道PWM
8路10位ADC,8个单端通道,2个具有可编程增益(1x,10x,或200x)的差分通道
面向字节的两线接口
两个可编程的串行USART
可工作于主机/从机模式的SPI
串行接口
具有独立片内振荡器的可编程看门狗定时器
片内模拟比较器
特殊的处理器特点
上电复位以及可编程的掉电检测
片内经过标定的RC振荡器
片内/片外中断源
6种睡眠模式:
空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式uI/O和封装
32个可编程的I/O口
2.4工作电压:
ATmega16L:
2.7-5.5V
ATmega16:
4.5-5.5V
2.5ATmega16引脚功能
VCC电源正
GND
电源地
端口A(PA7..PA0)做为A/D
转换器的模拟输入端。
端口A为8位双向I/O口,具有可编程的内部上拉电阻。
其输出缓冲器具
ATmega引脚图
有对称的驱动特性,可以输出和吸收大电流。
作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。
在复位过程中,即使系统时钟还未起振,端口A处于高阻状态。
端口B(PB7..PB0)为8位双向I/O口,具有可编程的内部上拉电阻。
其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。
在复位过程中,即使系统时钟还未起振,端口B处于高阻状态。
端口B也可以用做其他不同的特殊功能.
端口C(PC7..PC0)为8位双向I/O口,具有可编程的内部上拉电阻。
在复位过程中,即使系统时钟还未起振,端口C处于高阻状态。
如果JTAG接口使能,即使复位出现引脚PC5(TDI)、PC3(TMS)与PC2(TCK)的上拉电阻被激活。
端口C也可以用做其他不同的特殊功能。
端口D(PD7..PD0)为8位双向I/O口,具有可编程的内部上拉电阻。
作为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。
在复位过程中,即使系统时钟还未起振,端口D处于高阻状态。
端口D也可以用做其他不同的特殊功能.
RESET复位输入引脚。
持续时间超过最小门限时间的低电平将引起系统复位。
持续时间小于门限间的脉冲不能保证可靠复位。
XTAL1反向振荡放大器与片内时钟操作电路的输入端。
XTAL2反向振荡放大器的输出端。
AVCCAVCC是端口A与A/D转换器的电源。
不使用ADC时,该引脚应直接与VCC连接。
使用ADC时应通过一个低通滤波器与VCC连接。
AREFA/D的模拟基准输入引脚。
2.6AVR单片机的应用区域
AVR单片机应用区域包括:
空调控制板、打印机控制板、智能电表、智能手电筒、LED控制屏和医疗设备等领域。
3162液晶显示屏介绍
162液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字等。
3.1162液晶屏显示屏的引脚定义
首先,我们来看162的引脚定义,162的引脚是很整齐的SIP单列直插封装。
表1是液晶屏的引脚定义。
表1接口信号说明表
编号
符号
引脚说明
1
VSS
9
D2
Data1/0
2
VDD
电源正极
10
D3
3
VEE
液晶显示偏压信号
11
D4
4
RS
数据命令/选择端(H/L)
12
D5
5
R/W
读/写信号(H/L)
13
D6
6
E
使能信号
14
D7
7
D0
15
LEDA
背光源正极
8
D1
16
LEDK
背光源
该液晶屏采用标准的16脚接口,我们只需要关注一下几个管脚:
1脚:
VSS为地电源。
2脚:
VDD接5V正电源。
3脚:
VEE,液晶屏显示偏压信号,用于调整液晶屏的显示对比度,一般会外界电位器用以调整偏压信号,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“阴影”,使用时可以通过一个10K的电位器调整对比度。
4脚:
RS,数据/命令选择端,即对寄存器进行选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
5脚:
R/W,读写选择端,高电平时进行读操作,低电平时进行写操作。
6脚:
E,使能信号,其实时162的逐句控制时钟信号,利用该信号的上升沿实现对液晶屏的数据传输。
7~14脚:
8位双向数据线。
15脚:
背光阳极。
16脚:
背光阴极。
3.2162液晶显示屏的指令说明
162液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。
(说明:
1为高电平、0为低电平)。
162液晶屏内部模块共有11条控制指令,如表2所示。
表2控制命令表
序号
指令
清屏
光标返回
*
输入方式
I/D
S
显示开关
D
C
B
移位
S/C
R/L
功能设置
DL
N
F
CGRAM地址设置
A5A4A3A2A1A0
DDRAM地址设置
A6A5A4A3A2A1A0
忙标志/读地址计数器
BF
AC6AC5AC4AC3AC2AC1AC0
CGRAM/DDRAM数据写
写数据
CGRAM/DDRAM数据读
读数据
指令1:
清显示,指令码01H,光标复位到地址00H位置
指令2:
光标复位,光标返回到地址00H
指令3:
光标和显示模式设置
I/D:
光标移动方向,高电平右移,低电平左移
S:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效
指