基于ATmega16单片机的电子时钟设计说明Word格式文档下载.docx
- 文档编号:22725460
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:44
- 大小:344.58KB
基于ATmega16单片机的电子时钟设计说明Word格式文档下载.docx
《基于ATmega16单片机的电子时钟设计说明Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于ATmega16单片机的电子时钟设计说明Word格式文档下载.docx(44页珍藏版)》请在冰豆网上搜索。
两个具有独立预分频器和比较器功能的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:
屏幕上所有文字是否左移或者右移。
高电平表示有效,低电平则无效
指令4:
显示开关控制。
D:
控制整体显示的开与关,高电平表示开显示,低电平表示关显示
C:
控制光标的开与关,高电平表示有光标,低电平表示无光标
B:
控制光标是否闪烁,高电平闪烁,低电平不闪烁
指令5:
光标或显示移位S/C:
高电平时移动显示的文字,低电平时移动光标
指令6:
功能设置命令
DL:
高电平时为4位总线,低电平时为8位总线
N:
低电平时为单行显示,高电平时双行显示
F:
低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符
指令7:
字符发生器RAM地址设置
指令8:
DDRAM地址设置
指令9:
读忙信号和光标地址BF:
忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。
指令10:
写数据
指令11:
读数据
3.3162液晶显示屏的时序
在操作液晶屏,我们应该对它的工作时序非常熟悉,这里介绍了162液晶显示屏的两个写时序:
写指令和写入数据。
写指令,即设置162液晶显示屏的工作方式:
需要把RS置为低电平,RW置为低电平,然后将数据送到数据口D0~D7,最后E引脚一个高脉冲将数据写入。
写数据,即在液晶屏上实现显示时:
需要把RS置为高电平,RW置为低电平,然后将数据送到D0~D7,最后E引脚一个高脉冲将数据写入。
图1162液晶显示屏时序图
注意:
162液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。
当然,162提供了读忙信号的方法:
当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号。
3.4162液晶屏的RAM地址映射与标准字库表
液晶模块部的字符发生存储器(CGROM)已经存储了128个不同的点阵字符图形,这些字符有:
阿拉伯数字、英文字母的大小写和常用的符号等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。
要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符。
液晶屏第一行的首地址是80H,第二行的首地址是C0H。
表3是液晶屏的GROM中的字符代码与图形对应关系。
表3字符代码与图形对应表
0000
0010
0011
0100
0101
0110
0111
GRAM
P
\
p
0001
!
A
Q
a
”
R
b
#
c
$
T
d
t
%
U
e
u
&
V
f
v
’
G
W
g
w
1000
(
H
X
h
x
1001
)
I
Y
i
y
1010
:
J
Z
j
1011
+
;
K
[
k
{
1100
<
L
¥
l
|
1101
-
=
M
]
m
}
1110
.
>
^
n
→
1111
/
?
O
_
o
←
4ds1302芯片介绍
DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。
实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。
工作电压宽达2.5~5.5V。
采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。
DS1302的外部引脚分配如图2所示与部结构如图3所示。
DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。
图2引脚图
图3部结构
各引脚的功能为:
Vcc1:
主电源;
Vcc2:
备份电源。
当Vcc2>
Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2<
Vcc1时,由Vcc1向DS1302供电。
SCLK:
串行时钟,输入,控制数据的输入与输出;
I/O:
三线接口时的双向数据线;
CE:
输入信号,在读、写数据期间,必须为高。
该引脚有两个功能:
第一,CE开始控制字访问移位寄存器的控制逻辑;
其次,CE提供结束单字节或多字节数据传输的方法。
DS1302有下列几组寄存器:
1DS1302有关日历、时间的寄存器共有12个,其中有7个寄存器(读时81h~8Dh,写时80h~8Ch),存放的数据格式为BCD码形式。
表4Ds1302有关日历、时间的寄存器
度寄存器
写寄存器
BIT7
BIT6
BIT5
BIT4
BIT3
BIT2
BIT1
BIT0
围
81h
80h
CH
10秒
秒
00—59
83h
82h
10分
分
85h
84h
12/~24
10A/P
时
1-12/0-23
87h
86h
10日
日
1—31
89h
88h
10月
月
1—12
8Bh
8Ah
周日
1—7
8Dh
8Ch
10年
年
00—99
8Fh
8Eh
WP
——
小时寄存器(85h、84h)的位7用于定义DS1302是运行于12小时模式还是24小时模式。
当为高时,选择12小时模式。
在12小时模式时,位5是,当为1时,表示PM。
在24小时模式时,位5是第二个10小时位。
秒寄存器(81h、80h)的位7定义为时钟暂停标志(CH)。
当该位置为1时,时钟振荡器停止,DS1302处于低功耗状态;
当该位置为0时,时钟开始运行。
控制寄存器(8Fh、8Eh)的位7是写保护位(WP),其它7位均置为0。
在任何的对时钟和RAM的写操作之前,WP位必须为0。
当WP位为1时,写保护位防止对任一寄存器的写操作。
②DS1302有关RAM的地址
DS1302中附加31字节静态RAM的地址见表所示。
表5静态RAM
读地址
写地址
数据围
C1h
C0h
00—FFh
C3h
C2h
C5h
C4h
、
FDh
FCh
③DS1302的工作模式寄存器
所谓突发模式是指一次传送多个字节的时钟信号和RAM数据。
表6工作模式
工作模式寄存器
读寄存器
时钟突发模式寄存器
CLOCKBURST
BFh
BEh
RAM突发模式寄存器
RAMBURST
FFh
FEh
④此外,DS1302还有充电寄存器等。
2读写时序说明
DS1302是SPI总线驱动方式。
它不仅要向寄存器写入控制字,还需要读取相应寄存器的数据。
要想与DS1302通信,首先要先了解DS1302的控制字。
RAM
A4
A3
A2
A1
A0
RD
~CK
~WR
控制字(即地址与命令字节)
控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。
位6:
如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;
位5至位1(A4~A0):
指示操作单元的地址;
位0(最低有效位):
如为0,表示要进行写操作,为1表示进行读操作。
控制字总是从最低位开始输出。
在控制字指令输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从最低位(0位)开始。
同样,在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读出的数据也是从最低位到最高位。
数据读写时序如图4。
图4数据读写时序
5仿真软件介绍
5.1PROTUES简介
Protues软件是英国Labcenterelectronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机与外围器件。
它是目前最好的仿真单片机与外围器件的工具。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等。
5.2PROTUES的特点
1.原理布图
2.PCB自动或人工布线
3.SPICE电路仿真
4.互动的电路仿真。
用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。
5.仿真处理器与其外围电路。
可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。
还可以直接在基于原理图的虚拟原型上编程,再配合显示与输出,能看到运行后输入输出的效果。
配合系统配置的虚拟逻辑分析仪、示波器等,Protues建立了完备的电子设计开发环境。
5.3PROTUES工作界面介绍
PROTUES的工作界面是一种标准的windows界面,如下图所示,包括标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。
图5PROTUES界面图
6硬件设计
6.1系统框图
本系统所包含模块:
主控芯片ATmega16、LCD1602液晶显示模块、独立键盘模块、指示灯电路、DS1302时钟模块、以与电源。
另外还有背光电压显示电路。
图6
6.2PROTUES仿真图与电路原理图
PROTUES仿真图
电路原理图
6.3独立键盘
该键盘是三路独立的按键回路,当D端口读取的电平为高电平时不动作,说明没有按键按下;
当任意一个电路的按键按下时,该段口读取的电平就为低电平执行相应的操作。
按钮主要功能:
K1:
按下此按钮可以执行对时间的更改且相应的时间指示灯点亮;
对应键值为:
00001011。
K2:
按下此按钮可以实现时间地址的切换并且相应的指示灯点亮;
00001101。
K3:
按下此按钮可以执行对时间的增1操作,对应键值为:
00001110。
图7
6.4背光电压显示
电位器的中间分为两路,一路接液晶的Vee端,另一路接单片机PA3端。
经过软件处理后将值显示在液晶屏上。
模数转换:
AD转换结果:
ADC=Vin*1024/Vref
ADC多工选择寄存器-ADMUX
图8
图9
Bit7:
6–REFS1:
0:
参考电压选择
如Table83所示,通过这几位可以选择参考电压。
如果在转换过程中改变了它们的设置,只有等到当前转换结束(ADCSRA寄存器的ADIF置位)之后改变才会起作用。
如果在AREF引脚上施加了外部参考电压,部参考电压就不能被选用了。
表7参考电压选择
REFS1
REFS0
参考电压选择
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ATmega16 单片机 电子 时钟 设计 说明