ATtiny25/45/855.4I / O存储器该ATtiny25/45/85的I / O空间定义见182页上的“注册摘要”.所有ATtiny25/45/85的I / O及外设都被放置于I / O空间.所有的I / O位置可能通过LD / LDS / LDD和ST / STS / STD指示,32之间传输的数据访问通用工作寄存器和I / O空间.地址范围内的I / O寄存器为0x00 - 0x1F直接位访问使用SBI和CBI指令.在这些寄存器中,单个位的值可以通过使用SBIS与SBIC指令进行检查.请参阅说明更多的细节设置一节.当使用的I / O特定的命令IN和OUT时,I / O地址为0x00 - 0x3F必须使用.当寻址的I / O寄存器作为数据使用的空间LD和ST指令,0x20必须添加到这些地址.对于未来的产品兼容,保留位应写入零,如果访问.保留的I / O内存地址不应该被写入.一些状态标志可以通过写入逻辑1来清除.请注意,CBI和SBI指令只能在指定的操作位,因此可以用在含有这种状态标志寄存器. CBI和SBI指令的工作与寄存器0x00到0x1F只.在I / O和外设控制寄存器在后面的章节中说明.6,系统时钟及时钟选项6.1时钟系统及其分布图6-1主要时钟系统在AVR及其分布.所有的时钟不必是活跃在给定的时间.为了降低功耗,模块的时钟没有中所述使用可以停止使用不同的睡眠模式,换货和睡眠31页上的模式“.时钟系统的详细说明如下.图6-1.时钟分配“电源管理clk217598H–AVR–07/096.1.1CPU时钟 - CLK
CPU
CPU时钟被路由到相关的操作AVR内核的系统的组成部分.这些模块的例子是通用寄存器文件,状态寄存器和
数据存储器保存堆栈指针.停止CPU时钟禁止从执行一般操作和计算的核心.
6.1.2I / O时钟 - CLK
I/O
在I / O时钟用于主要的I / O模块,如定时器/计数器.在I / O时钟还用于外部中断模块,但要注意的是有些外部中断由异步逻辑检测,因此即使I / O时钟停止被检测到这些中断.
6.1.3Flash时钟 - CLK
FLASH
Flash时钟控制Flash接口的操作.此时钟通常是同时积极与CPU时钟.
6.1.4ADC时钟 - CLK
ADC
该ADC具有专门的时钟域.这使得停止CPU和I / O时钟以降低数字电路产生的噪声.这给了更精确的ADC转换结果.
6.1.5内部PLL快速外设时钟发生器 - CLK
PCK
内部PLL在ATtiny25/45/85产生时钟频率是8倍速从乘源输入. PLL输入时钟源是具有内部RC振荡器的输出
一个频率为8.0兆赫.因而PLL的输出,快速外设时钟为64MHz.快外设时钟,或时钟从预分频,可以选择作为时钟源T/C1的.请参阅图6-2第23页.
PLL被锁定在RC振荡器,并通过OSCCAL寄存器调整RC振荡器
调整快速外设时钟在同一时间.然而,即使RC振荡器取为频率高于8 MHz,则快速外设时钟频率达到饱和,在85兆赫(最坏情况),并保持在摆动的最大频率.但应注意的是,PLL在这种情况下没有被锁定不再与RC振荡器时钟.
因此,建议不要采取OSCCAL的调整频率高于8
兆赫为了确保PLL在正确的操作范围.内部PLL使能只有在PLLCSR的PLLE位被置位或PLLCK熔丝编程('0').从PLLCSR位普沃茨克时设置PLL被锁定.内部RC振荡器和PLL掉电关机和待机睡眠模式.
22
ATtiny25/45/85
7598H–AVR–07/09
ATtiny25/45/85
图6-2.
PCK时钟系统
OSCCAL PLLE
PLLCK & CKSEL FUSES
CLKPS3..0
Lock探测器
PLOCK
RC OSCILLATOR8.0 MHz / 6.4 MHz
PLL8x / 4x
PCK
64 / 25.6 MHz
DIVIDEBY 4
XTAL1XTAL2
OSCILLATORS
系统Clock预分频器
SYSTEMCLOCK
6.2时钟源
该设备具有以下时钟源的选择,可选择通过Flash熔丝位,如下所示.从选定的源时钟输入到AVR时钟发生器,再分配到相应的模块.
(1)
表6-1.
器件时钟选项外部时钟PLL时钟
时钟源选择
CKSEL3..0000000010010010001101000-11110101, 0111, 0011
校准的内部RC振荡器8.0 MHz的看门狗振荡器128千赫外部低频晶体外部晶体/陶瓷谐振器保留的Note:
1.对于所有的熔丝位,“1”表示未编程,“0”表示编程.
每个定时选项的不同的选择给出了以下几个部分.当CPU从掉电或唤醒省电,所选择的时钟源用于时间
启动,以确保指令执行开始前稳定振荡器运行.当CPU
从复位开始,有一个额外的延迟允许功率到达前一个稳定的水平开始正常工作.看门狗振荡器用于计时的这种实时的一部分启动时间.用于每个超时WDT振荡器周期数示于6-2.
Table
23
7598H–AVR–07/09
表6-2.看门狗振荡器周期数
典型的溢出时间
4毫秒64毫秒
周期数
5128K (8,192)
6.3默认时钟源
该设备出厂时CKSEL =“0010”,SUT =“10”,且CKDIV8编程.因此,默认时钟源设置为8 MHz的
最长启动时间为8,初始系统时钟分频运行的内部RC振荡器.这种设置保证所有用户都可以使用在系统或高电压编程使他们所需的时钟源.
6.4晶体振荡器
XTAL1和XTAL2是一个反相放大器,可以con-输入和输出,分别想通用作片内振荡器,如图图6-3.陶瓷谐振器可被使用.
要么是石英晶体或
C1和C2应该总是相等的两个晶体和谐振器.最优值
电容器的选择取决于使用的晶体或谐振器,杂散电容的量,以及对环境的电磁噪声.为选择电容的一些指南与晶体使用载表6-3.对于陶瓷谐振器,电容值由下式给出制造商应该被使用.图6-3.
晶体振荡器连接
C2C1
XTAL2XTAL1GND
振荡器可以工作于三种不同的模式,每一个特定的频率运行优化范围.经营模式通过熔丝位CKSEL3 .. 1所示表6-3.
CKSEL3..1100
(1)
表6-3.
晶体振荡器工作模式
频率范围(MHz)
0.4 - 0.90.9 - 3.03.0 - 8.08.0 -推荐范围为电容器C1和
C2使用晶体(PF)
–12 - 2212 - 2212 - 22
101110111
注意事项:1.不应与晶体使用此选项,只能用于陶瓷谐振器.
该CKSEL0保险丝连同SUT1 .. 0用于选择如图所示的启动时间6-4.
Table
24
ATtiny25/45/85
7598H–AVR–07/09
ATtiny25/45/85表6-4.对于晶体振荡器的启动时间启动时间从掉电和省电258 CK258 CK1K CK1K CK1K CK(1)CKSEL000001111SUT1..00001101100011011额外延迟时间从复位(VCC= 5.0V)14CK + 4毫秒14CK + 64毫秒14CK14CK + 4毫秒14CK + 64毫秒14CK14CK + 4毫秒14CK + 64毫秒推荐用法陶瓷谐振器,速度快上涨动力陶瓷谐振器,慢慢上涨动力陶瓷谐振器,BOD启用陶瓷谐振器,速度快上涨动力陶瓷谐振器,慢慢上涨动力晶体振荡器,生化需氧量启用晶体振荡器,快上涨动力晶体振荡器,慢慢上涨动力(1)(2)(2)(2)16K CK16K CK16K CK注意事项:1,这些选项只能不工作时接近该装置的最大频率被使用,并且仅当在启动时的频率稳定性对于应用而言不重要.这些选项不适用于晶体.2,这些选项是为陶瓷谐振器设计的,可以保证启动时的频率稳定性.它们也可以用于晶体不工作时接近该装置的最大频率,并且如果在启动时的频率稳定性对于应用而言不重要.6.5低频晶体振荡器为了使用32.768 kHz钟表晶体作为时钟源设备,低频晶振振荡器必须通过设置熔丝位CKSEL到'0110'被选中.该晶体应连接如图图6-3.指的是32 kHz晶振应用笔记的详细信息振荡器工作以及如何选择C1和C2适当的值.当选择了这个振荡器之后,启动时间如由熔丝位SUT确定表6-5.表6-5.对于低频晶体振荡器的启动时间启动时间从掉电和电源Save1K CK1K CK(1)SUT1..000011011从额外延迟时间上电复位(VCC= 5.0V)4毫秒64毫秒64毫秒保留的推荐用法电源快速上升,或是BOD启用慢慢崛起的大国在启动时频率已经稳定(1)32K CK注意事项:1,这些选项仅当在启动时的频率稳定性对于重要的使用应用程序.257598H–AVR–07/09