www.plcworld.cn
产品特性
•
高性½、½功耗的
8
½
AVR
®
微处理器
•
先进的
RISC
结构
– 131
条指令
–
大多数指令执行时间为单个时钟周期
– 32
个
8
½通用工½寄存器
–
全静态工½
–
工½于
16 MHz
时性½高达
16 MIPS
–
只需两个时钟周期的硬件乘法器
非易失性程序和数据存储器
– 16K
字节的系统内可编程
Flash
擦写寿½
: 10,000
次
–
具有独立锁定½的可选
Boot
代码区
通过片上
Boot
程序实现系统内编程
真正的同时读写操½
– 512
字节的
EEPROM
擦写寿½
: 100,000
次
– 1K
字节的片内
SRAM
–
可以对锁定½进行编程以实现用户程序的加密
JTAG
接口
(
与
IEEE 1149.1
标准兼容
)
–
符合
JTAG
标准的边界扫描功½
–
支持扩展的片内调试功½
–
通过
JTAG
接口实现对
Flash、 EEPROM、熔丝½和锁定½的编程
外设特点
–
两个具有独立预分频器和比较器功½的
8
½定时器 / 计数器
–
一个具有预分频器、比较功½和捕捉功½的
16
½定时器 / 计数器
–
具有独立振荡器的实时计数器
RTC
–
四通道
PWM
– 8
路
10
½
ADC
8
个单端通道
TQFP
封装的
7
个差分通道
2
个具有可编程增益 (1x,
10x,
或
200x)的差分通道
–
面向字节的两线接口
–
两个可编程的串行
USART
–
可工½于主机 / 从机模式的
SPI
串行接口
–
具有独立片内振荡器的可编程看门狗定时器
–
片内模拟比较器
特殊的处理器特点
–
上电复½以及可编程的掉电检测
–
片内经过标定的
RC
振荡器
–
片内 / 片外中断源
– 6
种睡眠模式
:
空闲模式、ADC 噪声抑制模式、省电模式、掉电模式、Standby 模式以及
扩展的
Standby
模式
I/O
和封装
– 32
个可编程的
I/O
口
– 40
引脚
PDIP
封装
, 44
引脚
TQFP
封装
,
与
44
引脚
MLF
封装
工½电压
:
– ATmega16L:2.7 - 5.5V
– ATmega16:4.5 - 5.5V
速度等级
– 0 - 8 MHz ATmega16L
– 0 - 16 MHz ATmega16
ATmega16L
在
1 MHz, 3V, 25°C
时的功耗
–
正常模式
: 1.1 mA
–
空闲模式
: 0.35 mA
–
掉电模式
: < 1 µA
•
•
具有
16KB
系统
内可编程
Flash
的
8
½
微控制器
ATmega16
ATmega16L
•
•
•
•
•
•
本文是英文数据手册的中文
翻译,其目的是方便中½用
户的阅读。它无法自动跟随
原稿的更新,同时也可½存
在翻译上的错误。读者应该
以英文原稿为参考以获得更
准确的信息。
2466G–AVR–10/03
www.plcworld.cn
引脚配½
Figure 1.
ATmega16
的引脚
PDIP
(XCK/T0) PB0
(T1) PB1
(INT2/AIN0) PB2
(OC0/AIN1) PB3
(SS) PB4
(MOSI) PB5
(MISO) PB6
(SCK) PB7
RESET
VCC
GND
XTAL2
XTAL1
(RXD) PD0
(TXD) PD1
(INT0) PD2
(INT1) PD3
(OC1B) PD4
(OC1A) PD5
(ICP1) PD6
PA0 (ADC0)
PA1 (ADC1)
PA2 (ADC2)
PA3 (ADC3)
PA4 (ADC4)
PA5 (ADC5)
PA6 (ADC6)
PA7 (ADC7)
AREF
GND
AVCC
PC7 (TOSC2)
PC6 (TOSC1)
PC5 (TDI)
PC4 (TDO)
PC3 (TMS)
PC2 (TCK)
PC1 (SDA)
PC0 (SCL)
PD7 (OC2)
TQFP/MLF
PB4 (SS)
PB3 (AIN1/OC0)
PB2 (AIN0/INT2)
PB1 (T1)
PB0 (XCK/T0)
GND
VCC
PA0 (ADC0)
PA1 (ADC1)
PA2 (ADC2)
PA3 (ADC3)
(MOSI) PB5
(MISO) PB6
(SCK) PB7
RESET
VCC
GND
XTAL2
XTAL1
(RXD) PD0
(TXD) PD1
(INT0) PD2
PA4 (ADC4)
PA5 (ADC5)
PA6 (ADC6)
PA7 (ADC7)
AREF
GND
AVCC
PC7 (TOSC2)
PC6 (TOSC1)
PC5 (TDI)
PC4 (TDO)
声明
本数据手册的典型值来源于对器件的仿真,以及其他基于相同产生工艺的
AVR
微控制器
的标定特性。本器件经过特性化之后将给出实际的最大值和最小值。
2
ATmega16(L)
2466G–AVR–10/03
(INT1)
(OC1B)
(OC1A)
(ICP1)
(OC2)
PD3
PD4
PD5
PD6
PD7
VCC
GND
(SCL) PC0
(SDA) PC1
(TCK) PC2
(TMS) PC3
www.plcworld.cn
ATmega16(L)
综述
方框图
ATmega16
是基于增强的
AVR RISC
结构的½功耗
8
½
CMOS
微控制器。
由于其先进的指
令集以及单时钟周期指令执行时间,ATmega16 的数据吞吐率高达
1 MIPS/MHz,从而可
以缓减系统在功耗和处理速度之间的矛盾。
Figure 2.
结构框图
PA0 - PA7
VCC
PC0 - PC7
PORTA DRIVERS/BUFFERS
PORTC DRIVERS/BUFFERS
GND
PORTA DIGITAL INTERFACE
PORTC DIGITAL INTERFACE
AVCC
MUX &
ADC
AREF
PROGRAM
COUNTER
ADC
INTERFACE
TWI
STACK
POINTER
TIMERS/
COUNTERS
OSCILLATOR
PROGRAM
FLASH
SRAM
INTERNAL
OSCILLATOR
XTAL1
INSTRUCTION
REGISTER
GENERAL
PURPOSE
REGISTERS
X
WATCHDOG
TIMER
OSCILLATOR
XTAL2
MCU CTRL.
& TIMING
RESET
INSTRUCTION
DECODER
Y
Z
CONTROL
LINES
ALU
INTERRUPT
UNIT
INTERNAL
CALIBRATED
OSCILLATOR
AVR CPU
STATUS
REGISTER
EEPROM
PROGRAMMING
LOGIC
SPI
USART
+
-
COMP.
INTERFACE
PORTB DIGITAL INTERFACE
PORTD DIGITAL INTERFACE
PORTB DRIVERS/BUFFERS
PORTD DRIVERS/BUFFERS
PB0 - PB7
PD0 - PD7
3
2466G–AVR–10/03
www.plcworld.cn
AVR
内核具有丰富的指令集和
32
个通用工½寄存器。所有的寄存器½直接与算逻单元
(ALU)
相连接,½得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结
构大大提高了代码效率,并且具有比普通的
CISC
微控制器最高至
10
倍的数据吞吐率。
ATmega16
有如下特点:16K字节的系统内可编程Flash(具有同时读写的½力,
即RWW),
512
字节
EEPROM,
字节
SRAM,
个通用
I/O
口线, 个通用工½寄存器,
1K
32
32
用于边
界扫描的
JTAG
接口,支持片内调试与编程,三个具有比较模式的灵活的定时器 / 计数器
(T/C),片内/外中断,
可编程串行USART,
有起始条件检测器的通用串行接口,
8路10½具
有可选差分输入级可编程增益
(TQFP
封装
)
的
ADC
,
具有片内振荡器的可编程看门狗定
时器,
一个
SPI
串行端口,
以及六个可以通过½件进行选择的省电模式。 工½于空闲模式
时
CPU
停止工½,而
USART、两线接口、 A/D
½换器、
SRAM、 T/C、 SPI
端口以及
中断系统继续工½;掉电模式时晶½振荡器停止振荡,所有功½除了中断和硬件复½之
外½停止工½;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其
½功½模块处于休眠状态;
ADC
噪声抑制模式时终止
CPU
和除了异步定时器与
ADC
以
外所有
I/O
模块的工½,以降½
ADC
½换时的开关噪声;
Standby
模式下只有晶½或谐
振振荡器运行,其½功½模块处于休眠状态,½得器件只消耗极少的电流,同时具有快速
启动½力;扩展
Standby
模式下则允许振荡器和异步定时器继续工½。
本芯片是以
Atmel
高密度非易失性存储器技术生产的。片内
ISP Flash
允许程序存储器通
过
ISP
串行接口,或者通用编程器进行编程,也可以通过运行于
AVR
内核之中的引导程
序进行编程。
引导程序可以½用任意接口将应用程序下½½到应用Flash存储区(Application
Flash Memory)。
在更新应用Flash存储区时引导Flash区(Boot
Flash Memory)的程序继续
运行,实现了
RWW
操½。 通过将
8
½
RISC CPU
与系统内可编程的
Flash
集成在一个
芯片内,
ATmega16
成为一个功½强大的单片机,为许多嵌入式控制应用提供了灵活而
½成本的解决方案。
ATmega16
具有一整套的编程与系统开发工具,包括:C 语言 编译器、宏汇编、 程序调试
器 / ½件仿真器、仿真器及评估板。
引脚说明
VCC
GND
端口
A(PA7..PA0)
数字电路的电源
地
端口
A
做为
A/D
½换器的模拟输入端。
端口
A
为
8
½双向
I/O
口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特
性,可以输出和吸收大电流。½为输入½用时,若内部上拉电阻½½,端口被外部电路拉
½时将输出电流。在复½过程中,即½系统时钟还未起振,端口
A
处于高阻状态。
端口
B(PB7..PB0)
端口
B
为
8
½双向
I/O
口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特
性,可以输出和吸收大电流。½为输入½用时,若内部上拉电阻½½,端口被外部电路拉
½时将输出电流。在复½过程中,即½系统时钟还未起振,端口
B
处于高阻状态。
端口
B
也可以用做其他不同的特殊功½,请参见
P56。
端口
C(PC7..PC0)
端口
C
为
8
½双向
I/O
口,
具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特
性,可以输出和吸收大电流。½为输入½用时,若内部上拉电阻½½,端口被外部电路拉
½时将输出电流。在复½过程中,即½系统时钟还未起振,端口
C
处于高阻状态。如果
JTAG
接口½½,
即½复½出现引脚
PC5(TDI)、PC3(TMS)
与
PC2(TCK)
的上拉电阻被激
活。
端口
C
也可以用做其他不同的特殊功½,请参见
P59。
4
ATmega16(L)
2466G–AVR–10/03
www.plcworld.cn
ATmega16(L)
端口
D(PD7..PD0)
端口
D
为
8
½双向
I/O
口,
具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特
性,可以输出和吸收大电流。½为输入½用时,若内部上拉电阻½½,则端口被外部电路
拉½时将输出电流。在复½过程中,即½系统时钟还未起振,端口
D
处于高阻状态。
端口
D
也可以用做其他不同的特殊功½,请参见
P61。
RESET
XTAL1
XTAL2
AVCC
AREF
复½输入引脚。持续时间超过最小门限时间的½电平将引起系统复½。门限时间见
P36Table 15。持续时间小于门限间的脉冲不½保证可靠复½。
反向振荡放大器与片内时钟操½电路的输入端。
反向振荡放大器的输出端。
AVCC是端口A与A/D½换器的电源。
不½用ADC时,
该引脚应直接与V
CC
连接。
½用ADC
时应通过一个½通滤波器与
V
CC
连接。
A/D
的模拟基准输入引脚。
本数据手册包含了一些简单的代码例子以说明如½½用芯片各个不同的功½模块。这些
例子½假定在编译之前已经包含了正确的头文件。有些
C
编译器在头文件里并没有包含
½定义,而且各个
C
编译器对中断处理有自己不同的处理方式。请注意查阅相关文档以
获取具½的信息。
代码例子
5
2466G–AVR–10/03
评论