atmega8系统时钟配置
- 格式:pdf
- 大小:35.68 KB
- 文档页数:3
第五讲定时/计数器的学习提要:主要学习ATmega8的T/C0、T/C1和T/C2三个定时/计数器的应用。
前面我们学习了ATmega8的通用I/O口的应用和外部中断的应用,相信你一定会觉得自己进步很快吧。
好了接下来我们就进行定时/计数器的学习:5.1 ATmega8定时/计数器的特点:ATmega8共有3个定时/计数器:Timer/Counter0—8bit、Timer/Counter1—16bit 和Timer/Counter2—8bit。
这三个定时/计数器除了能够实现通常的定时和计数功能外,还具有捕捉、比较、脉宽调制(PWM)输出、实时时钟计数等功能。
5.2 8位定时/计数器0—T/C0介绍T/C0主要有一下特点:1. 8bit字长,最大可计数0xFF;2. 单通道计数器;3. 外部事件计数;4. 频率发生器;5. 带10位预定比例分频器。
学习应用T/C0之前我们首先要了解几个相关的寄存器:TCCR0、TCNT0、TIMSK和TIFR。
一.T/C0控制寄存器TCCR0的[2:0]位CS0[2:0]:时钟源选择。
CS02 CS01CS00 说明0 0 0 无时钟源,停止T/C00 0 1 系统时钟0 1 0 CLKio/8来自预分频器0 1 1 CLKio/64来自预分频器1 0 0 CLKio/256来自预分频器1 0 1 CLKio/1024来自预分频器1 1 0 外部T0脚,下降沿驱动1 1 1 外部T0脚,上升沿驱动对该寄存器的理解可以与INT0的MCUCR作类比,那里是选择外部中断的触发方式,这里是选择T/C0的时钟源。
另外这里作几点说明:A 当时钟源选择系统时钟时,系统内部时钟直接作为T/C0的时钟源,这是最高频率的时钟源。
B 选择预分频器作时钟源,预定分频器对系统时钟CLKio按四个不同的分频比例分频,输出4个不同周期的时钟信号CLKio/8、CLKio/64、CLKio/256、CLKio/1024。
一.设计要求(1)用Proteus 完成电路图的绘制(2)4位数码管点亮显示功能实现(3)从0分00秒0毫秒正常计时**分**秒**毫秒功能实现(4)固定时间正常计时功能实现(5)固定时间倒计时功能实现(6)自由设定时间后正常计时功能实现(7)自由设定时间后倒计时功能实现二. 硬件设计单片机:atmega8 .PB输出口,控制数码管显示的数字;PC输出口,控制数码管显示位置;PD输入口,控制4个按钮,分别为时间分+1,时间秒+1,开始计时,停止计时。
数码管:4位8段共阴数码管,公共极为阴极,对应脚输入+5V电压后点亮。
电阻:100Ω电阻4个。
按钮:点动按钮4个。
不按下按钮时,单片机PD4个输入口为低电频,按下按钮时PD4个输入口为高电频。
三.软件设计基本设计思路:首先利用单片机PB,PC口控制4位8段数码管动态显示时间。
PD口控制2个按钮,分别用来控制时间秒和时间分+1;再设计1个定时器,正数计时,当计时0.1秒后,显示+1。
逢10,秒位进1后归0;秒位逢60,分进1后归0;分位逢10后全部清零,重新开始计时。
倒数计时只需要当0.1秒后,显示-1。
逢0,秒位-1后归0;秒位逢0,分-1后归0;所有位都为0后停止计时。
程序设计:#include <mega8.h>unsigned char dispCode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //定义8位数字显示unsigned char dispBit[]={0xf7,0xfb,0xfd,0xfe};//显示位置控制unsigned char dispBuf[4]={0,0,0,0};unsigned char second=50;unsigned char t,x,y,z;unsigned char minute=9;unsigned char dispbitcnt=0;unsigned int tcnt;xianshi(void){for(c=0;c<100;c++){dispBuf[0]=t;dispBuf[1]=second%10;dispBuf[2]=second/10;dispBuf[3]=minute%10;PORTC=0xff;if(dispbitcnt==4){dispbitcnt=0;}if(dispbitcnt==1 || dispbitcnt==3){PORTB=dispCode[dispBuf[dispbitcnt]]|0x80;}else{PORTB=dispCode[dispBuf[dispbitcnt]];}PORTC=dispBit[dispbitcnt];dispbitcnt++;for(a=0;a<200;a++); }}interrupt [TIM0_OVF] void timer0_ovf_isr(void) //正数计时函数{ tcnt++;if(tcnt==50) //计数50次后为0.1秒{ tcnt=0;t++; //显示增加0.1秒if(t==10) //逢10进1{t=0;second++;}if(second==60) //逢60进1{ second=0;minute++;}if(minute==60)minute=0;}TCNT0=0x05;}void main(void) //主函数{int c,a; //输入口、输出口、定时设置。
atmega8原理及应用手册摘要:I.简介- ATmega8的概述- ATmega8的特点II.原理- ATmega8的内部结构- ATmega8的工作原理- ATmega8的存储器III.应用- ATmega8在嵌入式系统中的应用- ATmega8在电子设备中的应用- ATmega8的开发与使用IV.结论- ATmega8的优缺点- ATmega8的前景与展望正文:I.简介ATmega8是Atmel公司推出的一款高性能、低功耗的AVR单片机。
它具有丰富的内置功能,如8位CPU、2KB至64KB的闪存、1KB至4KB的RAM、12位ADC、2个USART、SPI接口、定时器/计数器等。
ATmega8适用于各种嵌入式系统和电子设备,如工业控制、通信、消费电子、医疗设备等。
II.原理ATmega8的内部结构主要由CPU、存储器、外设接口等部分组成。
CPU 是核心部分,负责程序的执行和数据处理。
存储器包括闪存和RAM,用于存储程序和数据。
外设接口负责与外部设备进行通信和控制。
ATmega8的工作原理是通过CPU从存储器中读取程序指令,执行相应的操作,然后将结果存回存储器。
ATmega8的存储器具有低功耗、高速度、宽电压等特点,能满足不同应用场景的需求。
ATmega8的存储器包括闪存和RAM。
闪存用于存储程序代码,具有非易失性,即断电后数据不会丢失。
RAM用于存储运行时的数据,具有易失性,断电后数据会丢失。
III.应用ATmega8在嵌入式系统中的应用广泛,如智能家居、工业自动化、物联网等。
在电子设备中,ATmega8可用于微控制器、通信模块、传感器等。
ATmega8的开发与使用需要掌握一定的编程技巧,如C语言编程、汇编语言编程等。
此外,还需要了解ATmega8的硬件结构和外设接口,以便更好地利用其功能。
IV.结论ATmega8作为一款高性能、低功耗的AVR单片机,具有广泛的应用前景。
其丰富的内置功能和易用的开发环境使得ATmega8成为嵌入式系统和电子设备开发的理想选择。
2009年3月第3期电子测试ELECT RONIC TESTM ar.2009No.3基于ATMEGA8的温湿度系统的设计钟波,丁永刚(丽水学院浙江丽水323000)摘要:本系统的设计是将智能传感器监测和单片机控制相结合,整个系统采用ATMEGA8单片机为核心配置,以温湿度传感器、数码管显示、按键、蜂鸣器报警驱动、计算机监控系统等部件。
通过单片机与智能传感器相连,采集并存储智能传感器的测量数据。
另一方面通过RS485总线与监控计算机通信,将采集到的数据传输给监控计算机。
监控计算机将单片机传输的数据进行记录、存储、处理,供工作人员浏览、记录和进行相关处理。
经过实验测试各项指标均达到了设计要求。
关键词:ATMEGA8;温湿度传感器;计算机监控中图分类号:T P212.11;TP212.9文献标识码:ADevelopment system of digital temperature and humidity transmitterbased on ATMEGA8microcomputerZhong Bo,Ding Yonggang(Lishui University,Lishui Zhejiang323000,China)Abstr act:This design scheme is combined intelligent sensors test with mcu control,the A TMEGA8 single chip microcomputer is used as the kernel component of this system and the other parts are digital T emperature and Humidity Transmitter,alphanumeric dispiay,touch keys,buzzer alarm and comPuter monitoring system.It Colleets and stores intelligent sensor measure mentdata by conneeting mcu with intelligent sensors.MCU transmits the gathered data to monitoring computer by the means of the com2 munication between485bus and monitoring computer the monitoring computer will reeord,store,and Proeess the data,so that the oPerators can browse and reeord it,then take relative measures.It is shown that all targets are achived meet with the design requirements.Keywor ds:AT MEGA8;emperatur e and H umidity;comPuter monitoring0引言随着社会经济的发展和科学技术的不断进步,在温湿度变送器OEM生产、H VA C、暖通空调、电信基站、计算机房、智能建筑、药厂、农业大棚、博物馆、车站、机场等场所,都需要对环境的温湿度进行限定,因此,必须在这些特定环境安装温湿度监控仪以进行监控。
ATmega8时钟选择熔丝设置以下内容根据mega8的英文手册翻译,希望对大家有所帮助。
如发现错误,恳请大家指正。
mega8熔丝位:1:未编程(不选中)0:编程(选中)********************************熔丝位说明缺省设置********************************RSTDISBL: 复位或I/O功能选择 1 1:复位功能;0:I/O功能(PC6)WDTON: 看门狗开关 1 1:看门狗打开(通过WDTCR允许);0:看门狗禁止SPIEN: SPI下载允许 0 1:ISP下载禁止;0:ISP下载允许(注:当使用SPI编程时,该项不可用)EEAVE: 烧录时EEPROM数据保留 1 1:不保留;0:保留BODEN: BOD功能控制 1 1:BOD功能禁止;0:BOD功能允许BODLEVEL: BOD电平选择 1 1:2.7V电平;0:4.0V电平BOOTRST: 复位入口选择 1 1:程序从0x0000地址开始执行;0:程序从引导区确定的入口地址开始执行********************************BOOTSZ1/0: 引导区程序大小及入口 0000:1024Word/0xc00;01:512Word/0xe00;10:256Word/0xf00;11:128Word/0xf80********************************BLB02/01: 程序区指令位选择 1111:SPM和LPM指令都允许执行10:SPM指令禁止写程序区01:引导区LPM指令禁止读取程序区内容;如果中断向量定义在引导区,则禁止该中断在程序区执行。
00:SPM指令禁止写程序区;引导区LPM指令禁止读取程序区内容;如果中断向量定义在引导区,则禁止该中断在程序区执行。
********************************BLB12/11: 引导区指令位选择 1111:SPM和LPM指令都允许执行10:SPM指令禁止写引导区01:程序区LPM指令禁止读取引导区内容;如果中断向量定义在程序区,则禁止该中断在引导区执行。
Atmega8型号细分区别ATMEGA8L- 8PU、ATMEGA8L-8PI、ATMEGA8L-8PC、ATMEGA8-16PU、ATMEGA8-16PI、ATMEGA8-16PC、ATMEGA8L-8AU、ATMEGA8L-8AI、ATMEGA8L-8AC、ATMEGA8-16AU、ATMEGA8-16AI、 ATMEGA8-16AC、ATMEGA8L-8MU、ATMEGA8L-8MI、ATMEGA8L-8MC、ATMEGA8-16MU、 ATMEGA8-16MI、ATMEGA8-16MC的区别如下:1.型号紧跟的字母,表示电压工作范围。
带“L”:2.7-5.5V;若缺省,不带“L”:4.5-5.5V。
例:ATmega8-16PU,不带“L”表示工作电压为4.5-5.5V。
2.后缀的数字部分,表示支持的最高系统时钟。
例:ATmega8-16PU,“16”表示可支持最高为16MHZ的系统时钟。
3.后缀第一(第二)个字母,表示封装。
“P”:DIP封装,“A”:TQFP封装,“M”:MLF封装。
例:ATmega8-16PU,“P”表示DIP封装。
;4.后缀最后一个字母,表示应用级别。
4.“C”:商业级,“I”:工业级(有铅)、“U”工业级(无铅)。
例:ATmega8-16PU,“U”表示无铅工业级。
ATmega8-16PI,“I”表示有铅工业级。
ATmega8A 单片微处理器中文资料【用途】单片微处理器【性能参数】主要特性如下:◆高性能、低功耗的8 位AVR?微处理器◆先进的RISC 结构●131条指令–大多数指令执行时间为单个时钟周期●32个8 位通用工作寄存器●全静态工作●工作在16MHz 时吞吐量高达16MIPS●片内2 周期乘法器◆高耐久度非易失性存储器●8K字节的在系统内可自编程Flash 程序存储器*擦写寿命:10,000 次●512字节的EEPROM*擦写寿命:100,000 次●1K字节的片内SRAM●数据保存:20 年@85℃/100 年@25℃●带有独立锁定位的引导程序区*通过片内引导程序在系统编程*真正的边写边读操作●可以对锁定位进行编程以及实现EEPROM 数据的加密◆外设特点●2个具有独立预分频器和比较器功能的8 位定时器/计数器●1个具有预分频器、比较功能和捕捉功能的16 位定时器/计数器●带有独立晶振的实时计时器●3路PWM 通道●8路ADC(TQFP,QFN/MLF32)*8 路10 位精度●6路ADC(PDIP)*8 路10 位精度●基于字节的2-wire 串行接口●可编程串行USART●主/从SPI 串行接口●具有独立片内振荡器的可编程看门狗定时器●片内模拟比较器◆特殊的微控制器特点●上电复位和可编程掉电检测●经过标定的片内RC 振荡器●片内/外中断源●12个引脚中断源5 种睡眠模式:空闲模式、ADC 噪声抑制模式、省电模式、掉电模式、和待机模式◆I/O 和封装●23个可编程的I/O 口线●PDIP28,TQFP32,QFN/MLF32◆工作电压:2.7 – 5.5V for ATmega8A◆工作速度等级:0-16 MHz for ATmega8A◆低功耗@4 Mhz,3V,25℃●正常模式:3.6 mA●空闲模式:1.0 mA●掉电模式:0.5μA 【互换兼容】。
ATMega8
定时器
8位定时器0
溢出中断
PWM
普通:单斜坡、可中断但不可输出波形
预分频:8、64、256、102416位定时器1
自动加载溢出中断比较匹配中断A 比较匹配中断B
16位PWM
普通:单斜坡、可中断但不可输出波形
CTC:比较匹配时清零,同时可以输出波形
快速PWM :单斜坡、比较匹配输出改变,TOP 可变相位修正PWM :双斜坡、比较匹配输出改变,TOP 可变
相位与频率修正PWM 模式:双斜坡、比较匹配输出改变,TOP 可变
输入捕捉
预分频:8、64、256、1024
8位定时器2
自动加载溢出中断比较匹配中断
PWM
普通:单斜坡、可中断但不可输出波形
CTC:比较匹配时清零,同时可以输出波形
快速PWM :单斜坡、比较匹配输出改变相位修正PWM :双斜坡、比较匹配输出改变
预分频:8、32、64、128、256、1024支持外部32KHz 独立时钟源
AD
AD 参数8路10位AD ,最高15K 采样速率
支持差分和增益,但分辨率会变低采用基准电压为5V
AD0AD1AD2AD3AD4AD5AD6AD7
串口
USART 参数
USART1
外部中断
INT0INT1INT2
普通I/O 口
LCD1602液晶
6个I/O 口
其他
时钟:16MHz ,1T=62.5uS
可同时读写FLASH :8K
EEPROM :512
SRAM :1K
通用工作寄存器:32个
【4】ATMega8硬件管理.mmap - 2012-09-12 -。
ATmega8中文资料ATmega8 是ATMEL公司在2002年第一季度推出的一款新型AVR高档单片机。
在AVR家族中,ATmega8是一种非常特殊的单片机,它的芯片内部集成了较大容量的存储器和丰富强大的硬件接口电路,具备AVR高档单片机MEGE 系列的全部性能和特点。
但由于采用了小引脚封装(为DIP 28和TQFP/MLF3 2),所以其价格仅与低档单片机相当,再加上AVR单片机的系统内可编程特性,使得无需购买昂贵的仿真器和编程器也可进行单片机嵌入式系统的设计和开发,同时也为单片机的初学者提供了非常方便和简捷的学习开发环境。
ATmega8的这些特点,使其成为一款具有极高性能价格比的单片机,深受广大单片机用户的喜爱,在产品应用市场上极具竞争力,被很多家用电器厂商和仪器仪表行业看中,从而使ATmega8迅速进入大批量的应用领域.ATmega系列单片机属于AVR中的高档产品,它承袭了AT90所具有的特点,并在AT90(如AT9058515、AT9058535)的基础上,增加了更多的接口功能,而且在省电性能。
稳定性、抗干扰性以及灵活性方面考虑得更加周全和完善。
ATmega8 是一款采用低功耗CMOS工艺生产的基于AVR RISC结构的8位单片机。
AVR单片机的核心是将32个工作寄存器和丰富的指令集联结在一起,所有的工作寄存器都与ALU(算术逻辑单元)直接相连,实现了在一个时钟周期内执行的一条指令同时访问(读写)两个独立寄存器的操作。
这种结构提高了代码效率,使得大部分指令的执行时间仅为一个时钟周期.因此, ATmega8可以达到接近1MIPS/MHz的性能,运行速度比普通CISC单片机高出10倍。
ATmega8的主要性能如下:*高性能、低功耗的8位AVR微控制器,先进的RISC精简指令集结构130条功能强大的指令,大多数为单时钟周期指令32个8位通用工作寄存器工作在16MHz时,具有16MIPS的性能片内集成硬件乘法器(执行速度为2个时钟周期)*片内集成了较大容量的非易失性程序和数据存储器以及工作存储器8K字节的Flash程序存储器,擦写次数:>10000次支持可在线编程(ISP)、可在应用自编程(IAP)带有独立加密位的可选BOOT区,可通过BOOT区内的引导程序区(用户自己写入)来实现IAP编程.512个字节的E2PROM,擦写次数:100000次1K字节内部SRAM可编程的程序加密位*丰富强大的外部接口(Peripheral)性能2个具有比较模式的带预分频器(Separate Prescale)的8位定时/计数器1个带预分频器(SeParat Prescale),具有比较和捕获模式的16位定时/计数器1个具有独立振荡器的异步实时时钟(RTC)3个PWM通道,可实现任意<16位、相位和频率可调的PWM脉宽调制输出8通道A/D转换( TQFP、MLF封装),6路10位A/D+2路8位A/D6通道A/D转换( PDIP封装),4路10位A/D+2路8位A/D1个I2C的串行接口,支持主/从、收/发四种工作方式,支持自动总线仲裁1个可编程的串行USART接口,支持同步、异步以及多机通信自动地址识别1个支持主/从(Master/Slave)、收/发的SPI同步串行接口带片内RC振荡器的可编程看门狗定时器片内模拟比较器*特殊的微控制器性能可控制的上电复位延时电路和可编程的欠电压检测电路内部集成了可选择频率(l/2/4/8MHZ)、可校准的RC振荡器外部和内部的中断源18个五种睡眠模式:空闲模式(Idle)、ADC噪声抑制模式(ADC Noise Reduction)。
内部特点:-高性能、低功耗的 8 位AVR 微处理器-先进的RISC 结构-130 条指令–大多数指令执行时间为单个时钟周期-32个8 位通用工作寄存器-全静态工作-工作于16 MHz 时性能高达16 MIPS-只需两个时钟周期的硬件乘法器-非易失性程序和数据存储器-8K 字节的系统内可编程Flash-擦写寿命:10,000 次-具有独立锁定位的可选Boot 代码区-通过片上Boot 程序实现系统内编程-真正的同时读写操作-512 字节的EEPROM-1K字节的片内SRAM-可以对锁定位进行编程以实现用户程序的加密外设特点:–两个具有独立预分频器8 位定时器/ 计数器, 其中之一有比较功能–一个具有预分频器、比较功能和捕捉功能的16 位定时器/ 计数器–具有独立振荡器的实时计数器RTC–三通道PWM– TQFP与MLF 封装的8 路ADC-8 路10 位ADC– PDIP封装的6 路ADC –面向字节的两线接口–两个可编程的串行USART–可工作于主机/ 从机模式的SPI 串行接口–具有独立片内振荡器的可编程看门狗定时器–片内模拟比较器· 特殊的处理器特点–上电复位以及可编程的掉电检测–片内经过标定的RC 振荡器–片内/ 片外中断源– 5种睡眠模式: 空闲模式、ADC 噪声抑制模式、省电模式、掉电模式及Standby 模式· I/O 和封装– 23个可编程的I/O 口状态; ADC 噪声抑制模式时终止CPU 和除了异步定时器与ADC 以外所有I/O 模块的工作,以降低ADC 转换时的开关噪声; Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力。
本芯片是以Atmel 高密度非易失性存储器技术生产的。
片内ISP Flash 允许程序存储器通过ISP 串行接口,或者通用编程器进行编程,也可以通过运行于AVR 内核之中的引导程序进行编程。
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。