atmega8系统时钟配置

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MEGA8系统时钟配置

1、总述

通过对ATmega8的Flash熔丝位CKSEL编程设置,器件可选择如表所示的5种类开的系统时钟源。

可选系统时钟源熔丝位CKSEL3..0

1、外部晶振 1111~1010

2、外部低频晶振 1001

3、外部RC振荡 1000~0101

4、内部RC振荡 0100~0001

5、外部时钟 0000

注:“1”表示熔丝位未编程,“0”表示熔丝位被编程,以下同。

掉电和省电模式唤醒时间:当CPU从掉电(POWER-DOWN)或节电(POWER-SA VE)模式下被唤醒时,系统对选定的时钟源脉冲进行计数,经过若干个时钟脉冲后(Start-up Time,可设置选定),再正式启动CPU进入工作,这样保证了在CPU正式开始执行指令前,振荡器已达到稳定工作关态。

复位延时启动时间:当CPU从上电复位启动后到CPU开始正常操作指令前,也有额外的延时,以保证系统电源达到稳定的电平。看门狗振荡器Watchdog Oscillator)被用作该启动延时的定时器。这个WDT 振荡器启动延时的时间周期见下表,看门狗振荡器的频率由系统电源的电压决定。芯片出厂的设置为:CKSEL=0001,SUT=10(使用1MHz内部RC振荡器,慢速率上升电源)。

表:WDT典型延时启动时间和脉冲数

典型延时时间

Vcc=5V Vcc=3V

延时脉冲数

4.1ms 4.3ms

4K(4096)

65ms 69ms

64K(65536)

与系统时钟配置相关的熔丝位有7位:CLSEL3..0、CKOPT、SUT1..0,芯片出厂默认设置值为:CKSEL=0001,SUT=10,CKOPT=0,意思是使用1MHz内部RC振荡器,慢速率上升电源。

2、外部晶振

熔丝位

CKOPT CKSEL3..1 工作频率范围

(MHz)

石英晶体时的C1 C2值

1 101 0.4~0.9 12~22pF 1 110 0.9~3.0 12~22pF 1 111 3.0~8.0 12~22pF 0 101,110,111 <=1.0 12~22pF

常用设置为:CKOPT=1,CSEL3..1=111,C1=C2=20pF

M6有两个引脚XTAL1和XTAL2分别为片内振荡哭反相放大器输入、

输出端。可在外部连接一个石英晶体或陶瓷振荡器,如图:

通过对CKSEL0和SUT1..0熔丝w 位组合设置,可以选择系统唤醒的

延时计数脉冲数和系统复位延时时间,如下表: 熔丝位 CKSEL0 SUT1..0 掉电和省电模式

唤醒 复位延时启动时间(Vcc=5V ) 适合应用条件

0 00 258 CK 4.1ms 陶瓷振荡器快速上升电源 0 01 258 CK 65ms 陶瓷振荡器慢速上升电源 0 10 1K CK - 陶瓷振荡器BOD 方式 0 11 1K CK 4.1ms 陶瓷振荡器快速上升电源 1 00 1K CK 65ms 陶瓷振荡器慢速上升电源 1 01 16K CK - 石英振荡器BOD 方式 1 10 16K CK 4.1ms 石英振荡器快速上升电源 1 11 16K CK 65ms 石英振荡器慢速上升电源

3、外部低频率晶振

可以使用外接32.768KHz 手表用振荡器作为器件的时钟源,此时通过设置熔丝位CKSEL 为1001,来选择使用低频晶体振荡器的工作方式。接法同外部晶振,但如果通过编程CKOPT 熔丝位,可以选择使用片内36pF 电容,而外部两电容就可省去不用。

表:唤醒脉冲和延时时间选择设定

熔丝位

CKSEL SUT1..0 掉电和省电模式

唤醒 复位延时启动时间(Vcc=5V ) 适合应用条件 1001 00

1K CK 4.1ms 快速上升电源或BOD 方式 1001 01 1K CK 65ms 慢速上升电源 1001 10

32 CK 65ms 唤醒时频率已经稳定

1001 11

保留 4、外部RC 振荡器

对于定时要求不高的应用,可以在外部使用RC 振荡回路,如图所示,其工作频率可用f=1/(3RC)公式进行粗略估算。电容C 至少为22pF 。通过CKOPT 编

程,则可使用片内36pF 电容,而外部电容可省去不用。

表:外部RC 振荡器工几种工作模式

熔丝位CKSEL3..0 工作频频率范围(MHz )

0101 <=0.9 0110 0.9~3.0 0111 3.0~8.0

1000 8.0~12.0 表:唤醒脉冲和延时时间选择设定

熔丝位SUT1..0 掉电和省电模式唤醒 复位延时启动时

间(Vcc=5V ) 适合应用条件

00 18CK -

BOD 方式

01 18CK 4.1ms 快速上升电源

10 18CK 65ms 慢速上升电源

11 6CK 4.1ms 快速上升电源或BOD 方式(工作频率>8M 时不建试使用)

5、可校准的内部RC 振荡器

M8内部集成了可校准的内部RC 振荡器,它可以提供固定的1.0、2.0、4.0、8.0MHz 时钟信号作为系统时钟源。此时无需使用外部引脚XTAL1和XTAL2连接任何元器件。并且CKOPT 处于未编程状态。 熔丝位

CKOPT CKSEL3..0

工作频率(MHz ) 1 0001

1.0 1 0010

2.0 1 0011

4.0 1 0100

8.0 表:唤醒脉冲和延时时间选择设定 熔丝位SUT1..0 掉电和省电模式唤醒 复位延时启动时

间(Vcc=5V ) 适合应用条件

00 6CK -

BOD 方式 01 6CK 4.1ms 快速上升电源

10 6CK 65ms 慢速上升电源

11

保留 振荡器校准寄存器OSCCAL 定义如下:寄存器位7..0定义名称为CAL7..0,用于存放内部RC 振荡器的校准字。写入到寄存器OSCCAL 中的数值,将作为频率校准字用于对内部RC 振荡器的振荡频率进行调整。系统复位时,位于频率校准签列的高高字节(地址0x00)处1MHz 的校准值将自动由硬件读出并写入到OSSCAL 寄存器。如果内部RC 振荡器使用其他频率,则与频率对应的校准字需要手动装载。

6、外部时钟源

可以使用外部时钟源作为系统时钟。外部时钟信号应从XTAL1输入,XTAL2

不用,将CKSEL=0000,即选定外部时钟源。通过CKOPT 编程,使用片内36pF

电容。

表:唤醒脉冲和延时时间选择设定 熔丝位SUT1..0 掉电和省电模式唤醒 复位延时启动时

间(Vcc=5V ) 适合应用条件

00 6CK -

BOD 方式 01 6CK 4.1ms 快速上升电源

10 6CK 65ms 慢速上升电源

11

保留 7、总结:应用中常用时钟配置:

时钟类型

熔丝位 说明 外部晶振

CKOPT=1 CSEL3..0=1111 SUT=10 8MHz 石英晶振,C1=C2=20pF 外部低频晶振

CKOPT=0 CSEL3..0=1001 SUT=00 32.768KHz 钟表晶振,片内电容36pF 可校准的内部RC 振荡器

CKOPT=1 CSEL3..0=0100 SUT=01 为8MHz ,片内电容36pF

相关文档
最新文档