ATMEGA128熔丝位配置详解
ATmega128在开发应用中应注意的问题
ATmega128在开发应用中应注意的问题摘要: ATmega128是一种与51系列不同的单片机,本文应用ICCAVR和pony prog2000作为主要开发工具,通过分析其在开发过程中特殊的开发方法,从而达到更好地掌握和使用ATmega128的目的。
关键词: ATmega128 单片机ATmega128是AVR系列中功能最强的单片机,具有如下主要特点:(1)先进的RISC精简指令集结构:ATmega128具有133条功能强大的指令,大部分指令在单时钟周期内执行;有32b×8个通用工作寄存器;片内带有执行时间为2个时钟周期的硬件乘法器。
(2)非易失性程序和数据存储器:ATmega128具有128KB在线可重复编程Flash、4KB的E2PROM以及4KB内部SRAM。
在其BOOT区具有独立的加密位,可通过片内的引导程序实现在系统编程,写操作时真正可读。
(3)具有JTAG接口:通过JTAG接口对Flash、E2PROM熔丝位和加密位编程。
(4)增强的硬件功能:ATmega128具有2个带预分频器和一种比较模式的8位定时/计数器;2个扩充的带预分频器和比较模式、捕获模式的16位定时/计数器;独立振荡器的实时计数器;2通道8位PWM;6通道2~16位精度PWM;8通道10位A/D转换;输出比较调节器;8个单端通道;7个微分通道;2个增益为1x、10x或200x的微分通道;二线(I2C)串行接口;2路可编程串行UART接口;主/从SPI串行接口;带内部振荡器的可编程看门狗定时器等。
(5)独有的特点:上电复位和可编程的低电压检测;内部可校准的RC振荡器;5种睡眠模式,即空闲模式、ADC噪声抑制模式、省电模式、掉电模式、待命模式和扩展待命模式;可通过软件选择时钟频率;通过1个熔丝选定ATmega103兼容模式;全局上拉禁止。
笔者通过使用ATmega128单片机,总结出在使用ATmega128过程中应注意的问题,希望能给即将使用该单片机的读者提供有用的信息。
Atmega128熔丝位设置
Atmega128熔丝位设置ZHJ初学A VR单片机时最复杂最不容易懂的是熔丝位的设置,一旦设置错了很麻烦。
(如果已设置错了,处理见《A VR熔丝位恢复方式ZHJ》)有了本文,告别设置的不知所措吧!本文是Atmega128单片机的设置界面,下载用的是A VR Studio 4.13,下载器用的是深圳研学电子公司的ISP下载器(不是打广告,个人觉得好用)闲话少话,逐条解释吧!1.Atmega103 Compatibility Mode不勾选。
Atmega103兼容模式。
如果你用Atmega128代替Atmega103才勾选。
2.Watchdog Timer always不勾选。
看门狗始终开启。
此位勾选后软件不能关闭看门狗(除非你不想让软件可暂停看门狗工作)3.On-Chip Debug Enabled不勾选。
片上调试使能。
一般用不上4.JTAG Interface Enaled一般勾选此条小心设置!!JTAG接口使能。
如果你用的是ISP下载,且现在将来不会用JTAG下载,且想用PF4~PF7四个引脚作普通IO口使用,才不勾选。
5.Serial program downloading (SPI) enabled一般勾选此条小心设置!!SPI下载使能。
在ISP下载模式下不能更改。
在JTAG模式下可以更改为不勾选,不勾选后不能使用ISP下载。
6.Preserve EEPROM memory through the Chi Erase cycle勾选。
保护EEPROM中的数据,下载FLASH时不会被破坏。
7.Boot Flash section size=512 words Boot start address=$fe08.Boot Flash section size=1024 words Boot start address=$fe09.Boot Flash section size=2048 words Boot start address=$fe010.Boot Flash section size=4096 words Boot start address=$fe0四选一。
atmega128熔丝位配置
这几天一直在搞AVR ATmega128的程序,显示最基本的功能,但是因为用到了PORTG端口,而这个端口在ATmega128中是放在内部SRAM中的,是为了与ATmega103兼容,出厂时默认是不可以访问的。
因为这个问题,耽搁了几天。
现在看到如下文章,终于“柳暗花明”了。
转载于此,为记!对AVR熔丝位的配置是比较细致的工作,用户往往忽视其重要性,或感到不易掌握。
下面给出对AVR熔丝位的配置操作时的一些要点和需要注意的相关事项。
(1)在AVR的器件手册中,对熔丝位使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态,“Unprogrammed”表示熔丝状态为“1”(禁止);“Programmed”表示熔丝状态为“0”(允许)。
因此,配置熔丝位的过程实际上是“配置熔丝位成为未编程状态“1”或成为已编程状态“0”。
(2)在使用通过选择打钩“√”方式确定熔丝位状态值的编程工具软件时,请首先仔细阅读软件的使用说明,弄清楚“√”表示设置熔丝位状态为“0”还是为“1”。
(3)使用CVAVR中的编程下载程序时应特别注意,由于CVAVR 编程下载界面初始打开时,大部分熔丝位的初始状态定义为“1”,因此不要使用其编程菜单选项中的“all”选项。
此时的“all”选项会以熔丝位的初始状态定义来配置芯片的熔丝位,而实际上其往往并不是用户所需要的配置结果。
如果要使用“all”选项,应先使用“read->fuse bits”读取芯片中熔丝位实际状态后,再使用“all”选项。
(4)新的AVR芯片在使用前,应首先查看它熔丝位的配置情况,再根据实际需要,进行熔丝位的配置,并将各个熔丝位的状态记录备案。
(5)AVR芯片加密以后仅仅是不能读取芯片内部Flash和E2PROM 中的数据,熔丝位的状态仍然可以读取但不能修改配置。
芯片擦除命令是将Flash和E2PROM中的数据清除,并同时将两位锁定位状态配置成“11”,处于无锁定状态。
ATMEGA128熔丝位配置详解
ATMEGA128熔丝位配置详解熔丝位配置2009-07-29 11:51在配置熔丝位时应特别注意,部分熔丝位(如OCDEN、JTAGEN和SPIEN等)的配置是不可逆的2009年04月17日星期五 11:28引言AVR系列单片机在仿真调试之前,首先必须对AVR的熔丝位和锁定位进行配置。
如果配置不当,则可能造成单片机不能正常工作,严重时可能导致单片机死锁。
因此,对单片机熔丝位和锁定位的正确配置显得尤为重要。
熔丝位是对单片机具体功能和工作模式的限定,其正确配置与否直接影响到单片机能否正常工作;锁定位是对单片机的程序和数据进行加密,以防止单片机中的程序和数据被读出或写入。
在进行配置时,一般先配置熔丝位,再配置锁定位。
锁定位又分为引导程序区锁定位和程序及数据存储器锁定位两类。
对引导程序区锁定位进行编程可以实现两套保护模式,即应用区保护模式和Boot Loader区保护模式;不同的编程配置可以实现不同的加密级别。
对程序及数据存储器锁定位进行编程可以禁止对并行和SPI/JTAG串行编程模式中Flash和EEPROM进一步编程,从而对程序和存储器中的数据进行保护。
由于引导程序锁定位和程序及数据存储器锁定位的配置具有可逆性,因此可根据不同的需要多次编程,灵活改变。
但是,在配置熔丝位时应特别注意,部分熔丝位(如OCDEN、JTAGEN和SPIEN等)的配置是不可逆的。
在采用单一编程下载情况下(例如只采用JTAG下载或者只采用AVRISP并行下载),一旦配置后将不可改变。
鉴于熔丝位配置的重要性,本文以AVR系列的ATmega128单片机为例,详细介绍熔丝位的配置以及在配置过程中常出现的一些问题,并给出相应的解决办法,成功地解决了因熔丝位配置不当而引起的单片机不能正常工作和死锁等一系列问题。
1 熔丝位的配置ATmega128的熔丝位共有3个字节:熔丝位扩展字节、熔丝位高字节和熔丝位低字节。
表1、表2和表3分别描述了所有熔丝位的功能、默认值以及它们是如何映射到熔丝位字节的。
熔丝位学习
熔丝位学习1、CKOPT-------决定振荡器的工作模式①当其编程后,振荡器在输出引脚产生满幅度的振荡,适合于噪声环境及需要通过XTAL2驱动第二个时钟缓冲的情况;②当其未编程时,振荡器输出信号幅度比较小,其优点是大大降低了功耗,但是频率范围比较窄,且不能驱动其他时钟缓冲器。
2、SUT1.0----选择单片机的启动时间3、CKSEL3.2.1.0-----选择单片机的时钟源4、BOOTSZ1.0--------选择BOOT区字节大小5、BOOTRST----------复位后程序执行的起始点选择。
编程后,复位后从BOOT区执行;不编程,则复位后从0地址执行。
6、M8应用注意:①若RSTDISBL 熔丝位编程, PC6 作为I/O 引脚使用。
注意PC6 的电气特性与端口C 的其他引脚不同。
如果你将RSTDISBL熔丝位编程,PC6作为I/O了,不是RESET了,那么你就不能再次进入和使用ISP方式编程了。
除非你的程序全部调试完成,最后一次下载后,才能将RSTDISBL熔丝位编程。
否则你只能将芯片从板上取下,使用并行编程方式恢复了。
②若RSTDISBL 熔丝位未编程,PC6 作为复位输入引脚。
持续时间超过最小门限时间的低电平将引起系统复位。
门限时间见文档资料的P 35Table 15 。
持续时间小于门限时间的脉冲不能保证可靠复位。
对AVR熔丝位的配置是比较细致的工作,用户往往忽视其重要性,或感到不易掌握。
下面给出对AVR熔丝位的配置操作时的一些要点和需要注意的相关事项。
(1)在AVR的器件手册中,对熔丝位使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态,“Unprogrammed”表示熔丝状态为“1”(禁止);“Programmed”表示熔丝状态为“0”(允许)。
因此,配置熔丝位的过程实际上是“配置熔丝位成为未编程状态“1”或成为已编程状态“0””。
(2)在使用通过选择打钩“√”方式确定熔丝位状态值的编程工具软件时,请首先仔细阅读软件的使用说明,弄清楚“√”表示设置熔丝位状态为“0”还是为“1”。
ATMEGA128实验开发板用户手册
ATMEGA128实验开发板用户手册V1.32011年5月E-mail: sdfdlut@1. ATMEGA128单片机概述ATMEGA128单片机是ATMEL公司推出的一款基于AVR内核,采用RISC结构,低功耗CMOS的8位单片机。
由于在一个周期内执行一条指令,ATMEGA128可以达到接近1MIPS/MHz的性能。
其内核将32个工作寄存器和丰富的指令集联结在一起,所有的工作寄存器都与ALU(逻辑单元)直接连接,实现了在一个时钟周期内执行一条指令可以同时访问两个独立的寄存器。
这种结构提高了代码效率,是AVR的运行速度比普通的CISC单片机高出10倍。
ATMEGA128单片机具有以下特点:128KB的可在系统编程/应用编程(ISP/IAP)Flash 程序存储器,4KB E2PROM,4KB SRAM,32个通用工作寄存器,53个通用I/O口,实时时钟计数器(RTC),4个带有比较模式灵活的定时器/计数器,2个可编程的USART接口,一个8为面向字节的TWI(I2C)总线接口,8通道单端或差分输入的10位ADC(其中一个差分通道为增益可调),可编程带内部振荡器的看门狗定时器,一个SPI接口,一个兼容IEEE 1149.1标准的JTAG接口(用于在线仿真调试和程序下载),6种可通过软件选择的节电模式。
2. ATMEGA128实验开发套件本实验开发套件包括:●测试通过的MEGA128实验板1块;●配套资料光盘1张;●AVR ISP并口下载线1条;●5110液晶模块1个;●遥控器1个;●USB ASP下载线(选配);●AVR JTAGICE仿真器(选配)。
其中资料光盘的内容主要包括:●ATMEGA128实验开发板用户手册.pdf(本文档);●AVR教程:⏹WINAVR 使用入门.pdf⏹AVR Studio 使用入门.pdf⏹AVR基本硬件线路设计与分析.pdf⏹芯艺的AVR_GCC教程.pdf⏹AVR的IO结构分析与范例.mht⏹AVR高速嵌入式单片机原理与应用●芯片手册(包括24C02、74HC595以及中文的I2C协议文档等内容)●开发工具软件;⏹AVR Studio V4.12;⏹WINAVR(GCC) 编译器;⏹IAR for AVR V4.10A;⏹并口下载工具PONYPROG V2.06;⏹ICCAVR 双龙提供;图3 新建工程对话框点击Next,进入第三步。
Atmega128开发板使用说明书
Atmega128开发板使用说明书概要介绍Atmega128开发板上硬件资源丰富,接口齐全,基本上涵盖了Atmega128单片机所能涉及到的所有功能,可以满足单片机开发工程师和电子爱好者的开发实验的需求,或者高校电子、计算机专业学生的学习实验的需要。
按照正规产品的要求设计,不纯粹是实验样品,器件选型、原理图、PCB设计的时候都充分考虑了可靠稳定性。
Atmega128的IO口资源丰富,板上所以接口都是独立使用的,不需要任何跳线进行设置, IO口外围扩展使用了2片锁存器74HC574,既可以使实验变得更加简单方便,又能让实验者掌握更多的单片机设计知识。
提供配套软件源代码,学习板的每个实验都有与其相对应的软件代码,是版主从多年的工作经验中提取出来的,并经过优化,具有较高的参考价值。
编程简单,学习板编程不需要专用烧录器,利用计算机的并口即可进行编程,速度快、操作简单。
1.产品清单Atmega128开发板的配件清单如下,当您第一次拿到产品的时候,请参照下图认真核对包装内配件是否齐全,以及各配件是否完好无损。
请按照下图安装122*32 LCD,lCD的一脚对准122*32 LCD插座的一脚,切记不要插反2.硬件布局说明步进电机接口直流电机接口数字温度传感器SD卡插座光敏电阻ADC输入电位器NTC热敏电阻JTAG接口继电器接口9V电源输入接口DAC输出接口RS485接口RS232接口红外发射管ISP编程接口LCD对比度调节电位器122 * 32点阵LCD接口16 * 2字符LCD接口红外接收管433M射频模块接口3 *4 矩阵键盘3.接口说明接口管脚顺序的确认方法●对于有卡口的接口,应对着卡口的方向看,最左边为第一个管脚,如下图所示:●对于用螺丝压线的接口,应对着入线的方向看,最左边为第一个管脚,如下图所示:特别提示:ISP下载接口与JTAG接口封装相同,下载程序时使用ISP接口,不要插到JTAG 接口上4.硬件开发环境的建立本站出售的AVR单片机学习板就是一套完整的硬件环境,它由学习板、电源、并口ISP 下载线等组成。
熔丝位
AVR开发前准备—熔丝位(Fuse)快速入门使用操作界面如下:(注意:下图中,打勾的表示选中,代表0。
没有打勾的表示1)。
英文中文On-Chip Debug Enabled 片内调试使能JTAG Interface Enabled JTAG 接口使能Serial program downloading (SPI) enabled 串行编程下载(SPI) 使能(ISP下载时该位不能修改) Preserve EEPROM memory through the Chip Erase cycle; 芯片擦除时EEPROM的内容保留Boot Flash section size=xxxx words 引导(Boot)区大小为xxx个词Boot start address=$yyyy; 引导(Boot)区开始地址为$yyyyBoot Reset vector Enabled 引导(Boot)、复位向量使能Brown-out detection level at VCC=xxxx V; 掉电检测的电平为VCC=xxxx 伏Brown-out detection enabled; 掉电检测使能Start-up time: xxx CK + yy ms 启动时间xxx 个时钟周期+ yy 毫秒Ext. Clock; 外部时钟Int. RC Osc. 内部RC(阻容) 振荡器Ext. RC Osc. 外部RC(阻容) 振荡器Ext. Low-Freq. Crystal; 外部低频晶体Ext. Crystal/Resonator Low Freq 外部晶体/陶瓷振荡器低频Ext. Crystal/Resonator Medium Freq 外部晶体/陶瓷振荡器中频Ext. Crystal/Resonator High Freq 外部晶体/陶瓷振荡器高频注:以上中文是对照ATmega16的中、英文版本数据手册而翻译。
尽量按照了官方的中文术语。
AVR熔丝位配置详解
A VR熔丝位配置详解AVR开发前预备—熔丝位(Fuse)快速入门本页关键词:AVR 熔丝位(Fuse)快速入门熔丝位熔丝的作用AVR通过熔丝来操纵芯片内部的一些功能,比如JTAG,时钟的使用,掉电检测电压,是否承诺调试等。
AVR Studio 中STK500 处理熔丝位有庞大的优势:它是以功能组合让用户配置。
这种方式与小马(PnoyProg2000,SL-ISP)相比,具有以下的优势(优势是如此明显,能够用“庞大优势”来形容):1有效幸免因不熟悉熔丝位让芯片锁死(这是初学者的恶梦),笔者曾经锁死过三片Atmega16。
2不需要靠经历与查文档,就能配置熔丝位(这也是初学者的恶梦)3动手之前:请你一定弄清晰了,你如此改会有什么后果,除非你有专门多钱不在乎多锁死几个芯片。
备份你的熔丝位状态,在点击Program 之前再次检查熔丝位设置正确与否,不要误点了某项而没有注意到。
由于ISP下载需要芯片本身提供时钟信号。
一定注意,假如没有接外部晶振,一定不能编程熔丝位使用外部晶振。
一旦那样做,就不能再进入编程了,也确实是芯片被锁死。
建议新手不要随意设置芯片的熔丝位,等对熔丝位比较了解了再进行操作。
当芯片锁死已成事实,只要能够为芯片提供相对应的时钟源即可。
如选择了Ext. RC Osc而又没有外部RC(阻容) 振荡器时,可参考手册的接一个专门简单的RC振荡电路!再将熔丝位配置改回正确的配置就可搞定!通过下图的方法打开连接:使用操作界面如下:(注意:下图中,打勾的表示选中,代表0。
没有打勾的表示1)。
上图的资料有专门多相关项,你需要认识以下的代码,以明白中意思。
英文翻译说明如下:英文中文On-Chip Debug Enabled 片内调试使能JTAG Interface Enabled JTAG 接口使能Serial program downloading (SPI) enabled 串行编程下载(SPI) 使能(ISP下载时该位不能修改)Preserve EEPROM memory throughthe Chip Erase cycle;芯片擦除时EEPROM的内容保留Boot Flash section size=xxxx words 引导(Boot)区大小为xxx个词Boot start address=$yyyy; 引导(Boot)区开始地址为$yyyy Boot Reset vector Enabled 引导(Boot)、复位向量使能Brown-out detection level atVCC="xxxx" V;掉电检测的电平为VCC="xxxx" 伏Brown-out detection enabled; 掉电检测使能Start-up time: xxx CK + yy ms启动时刻xxx 个时钟周期+ yy 毫秒Ext. Clock; 外部时钟Int. RC Osc. 内部RC(阻容) 振荡器Ext. RC Osc. 外部RC(阻容) 振荡器Ext. Low-Freq. Crystal; 外部低频晶体Ext. Crystal/Resonator Low Freq 外部晶体/陶瓷振荡器低频Ext. Crystal/Resonator Medium Freq 外部晶体/陶瓷振荡器中频Ext. Crystal/Resonator High Freq 外部晶体/陶瓷振荡器高频注:以上中文是对比ATmega16的中、英文版本数据手册而翻译。
ATMEGA128熔丝位配置手册.wps
1、打钩的表明用到的功能
2、0表示允许,1表示禁止
3、BODLEVEL = 1 掉电检测2.7V 0 为4V
4、BODEN = 1 掉电检测失效,这和BODLEVEL配合使用
5、A VR芯片加密以后仅仅是不能读取Flash和E2PROM的内容,也不能重新下载进去,下载完了以后要给芯片加密,再想往里头灌程序就灌不进去了。
必须先擦除后再重新灌进去。
6、SPIEN = 0 表示允许使用SPI口下载
7、JTAGEN = 0 表示允许使用JTAG口下载
8、一般情况下不要把RESET定义成普通的I/O口,因为ISP 下载时要先拉低是芯片先进入复位状态。
9、M103C = 1 和ATMEGA103不兼容的方式运行,ATMEGA128的方式运行
10、SUT 1:0 = 1 0 以最长的延时方式启动
11、CLKSEL 3:1 = 1111以外部高频石英晶振3-8MHz或8MHz 以上,CLKSEL 3:0 = 0001 内部1MHz的RC振荡JTAGEN = 1 禁止JTAG口
12、WDTON = 1 禁止看门狗
13、EESAVE = 1 执行擦除命令时连同EEPROM的内容同FLASH的内容一同擦除
14、BOOTRST = 1 程序执行时从地址0x0000开始执行
BOOTRST = 0 程序执行时从地址BOOTLOAD起始地
址区开始执行
15、BOOTSZ1和BOOTSZ0决定了BOOTLOAD的大小和起
地址,默认为00 大小为4096字,起始地址为0xF000
16、LB 2:1 = 11 没有使能存储器使能保护功能
17、BLB02 : BLB01 = 11
18、BLB12 : BLB11 = 11。
ATmega128.64熔丝锁定位详解.docx
ATmegal28熔丝位汇总编程与状态说明:•在AVR的器件手册中,使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态。
"Unprogrammed"表示熔丝状态为"1"(禁止);u Programmed表示熔丝状态为“0”(允许)1:未编程(检查框不打钩)0:编程(检査框打钩)•AVR的熔丝位可多次编程的,不是OPT熔丝。
•熔丝位的配置(编程)可以通过并行方式、ISP串行方式、JTAG串行方式实现。
•AVR芯片加密锁定后(LB2/LB1 = 1/0, 0/0)不能通过任何方式读取芯片内部Flash 和E'PROM中的数据,但熔丝位的状态仍然可以读取,但不能修改配置。
•芯片擦除命令是将Flash和E'PROM屮的数据清除,并同时将两位锁定位状态配置成无锁定状态(LB2/LB1 = 1/1)。
但芯片擦除命令并不改变其它熔丝位的状态。
•I、•载编程的正确的操作程序是:在芯片无锁定状态卜,I、•载运行代码和数据,配置相关的熔丝位,最后配置芯片的加密锁定位。
•芯片彼加密锁定后,如果发现熔丝位配置不対,必须使用芯片擦除命令,清除芯片屮的数据,解除加密锁定。
然后重新卜谶运行代码和数据,修改配置和关的熔丝位, 最后再次配置芯片的加密锁定位。
3.有关Bootloader的熔丝上电启动地址的设定:对应用程序区的保护模式设置:对Bootloader区的保护模式设置:4・有关系统时钟源的选择和上电启动延时时间的设置熔丝系统时钟选择:使用外部振荡器时的工作模式配置:12、当C K O P T=O(编程)时,振荡器的输出振幅较大,适用丁•干扰大的场合;反之,振荡器的输出振幅较小,可以减少功耗,对外电磁幅射也较小。
3、CKOPT默认状态为“1”。
使用外部振荡器时的启动时间选择:使用外部低频晶振时的启动时间选择:12、使用32. 768K手表晶振作为MCU的时钟源.此时CKSEL应当编程为1001:3、CKOPT=0时,选择使用内部和XTAL1/XTAL2 +11连的电容,没有必要再外接电容:内部电容为 36pF 。
ATMEGA8寄存器和熔丝位介绍
ATMEGA8寄存器和熔丝位介绍ATMEGA8寄存器和熔丝位介绍及FLASH操作一、ATMEG8寄存器介绍1.状态寄存器(SREG)在I/O空间的地址为:3FH,在数据空间地址为:005FHI T H S V N Z CBit7——I:全局中断允许位。
Bit6——T:位复位存储。
Bit5——H:半进位标志位。
Bit4——S:符号标志位,S=N⊕V符号标志位S是负数标志位N和2的补码溢出标志位V两者的异或值。
Bit3——V:2的补码溢出标志位。
Bit2——N:负数标志位。
负数标志位表示在一个算数或逻辑操作后的结果是否为负数。
Bit1——Z:零值标志位。
Bit0——C:进位标志位。
2.X、Y、Z地址指针寄存器。
寄存器R26-R31除了可能作通用工作寄存器用外,还可两两合并,组成3个16位寄存器X、Y、Z,作为间接寻址操作中的地址指针寄存器使用,这样就可以在整个数据空间实现间接寻址操作。
3.堆栈指针寄存器(SP)堆栈指针寄存器用来保存临时数据、局部变量、中断或子程序的返回地址。
4.振荡器校准寄存器(OSCCAL)CAL7CAL6CAL5CAL4CAL3CAL2CAL1CAL0用法不详。
5.MCU控制寄存器(MCUCR)SE SM2SM1SM0ISC11ISC10ISC01ISC00 Bit7——SE:休眠使能位为了使MCU执行SLEEP指令后进入休眠模式,SE必须置位。
为了确保休眠模式是程序员的有意行为,建议只在SLEEP指令前一条指令置位SE。
MCU一旦唤醒立即清除SE。
Bit6-4——SM2:0休眠模式选择位000:空闲模式001:ADC噪声抑制模式010:掉电模式011:省电模式100:保留101:保留110:standby模式。
只在使用外部晶振或谐振器时有用。
Bit3:2——ISC11、ISC10:中断1触发方式控制位00:INT1低电平产生中断请求。
01:INT1引脚上任意的逻辑变换将引发中断10:INT1下降沿引发中断请求11:INT1上升沿触中断请求如果SREG寄存器的I标志位和相应的中断屏蔽位置位的话,外部中断1由INT1引脚触发Bit1:0——ISC01、ISC00中断0触发方式控制位00:INT0低电平产生中断请求。
ATMEGA8的熔丝位说明
ATMEGA8的熔丝位说明.txt婚姻是键盘,太多秩序和规则;爱情是鼠标,一点就通。
男人自比主机,内存最重要;女人好似显示器,一切都看得出来。
ATMEGA8的熔丝位说明1、功能熔丝熔丝说明默认1 0RSTDISBL PIN1用作复位引脚PIN1用作IO口,复位为内部复位 1WDTON 看门狗完全由软件控制看门狗始终工作,软件只可以调节溢出时间 1 SPIEN 禁止串行编程允许串行编程0EESAVE 擦除时不保留EEPROM数据擦除时保留EEPROM数据 1BODEN BOD功能禁止BOD功能允许1BODLEVEL BOD门槛电平2.7V BOD门槛电平4.0V 1BOOTRST 复位后从0地址执行复位后从BOOT区执行(参考BOOTSZ0/1) 12、BOOT区配置熔丝BOOTSZ1 BOOTSZ0 BOOT区大小BOOT区地址默认0 0 1024WORD 0x0C00 默认0 1 512WORD 0x0E001 0 256WORD 0x0F001 1 128WORD 0x0F803、时钟源选择系统时钟源CKSEL3..0外部石英/陶瓷振荡器 1111-1010外部低频晶振(32.768KHZ) 1001外部RC振荡 1000-0101可校准的内部RC振荡 0100-0001外部时钟00004、外部振荡器外部振荡器的不同工作模式熔丝位工作频率范围(MHz) C1、C2容量(pF)(仅适用石英晶振)CKOPT2 CKSEL3..11 101 0.4-0.9 仅适合陶瓷振荡器11 110 0.9-3.0 12-221 111 3.0-8.0 12-220 101,110,111 ≥1.0 12-22注:1、对陶瓷振荡器所配的电容,按陶振厂家说明。
2、当CKOPT=0(编程)时,振荡器的输出振幅较大,适用于干扰大的场合;反之,振荡器的输出振幅较小,可以减少功耗,对外电磁幅射也较小。
使用外部振荡器时的启动时间选择熔丝位从掉电模式开始的启动时间从复位开始的附加延时(Vcc=5.0V) 推荐使用场合CKSEL0 SUT 1..00 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 石英振荡器、慢速上升电源5、使用外部低频晶振时的启动时间选择可以使用32.768KHZ的手表晶振作为MCU的时钟源(同图一),此时CKSEL应当编程为1001;CKOPT=0(编程)时,选择使用内部和XTAL1/XTAL2相连的电容,没有必要再外接电容;内部电容是36pF,应用时可以参考32.768KHZ晶振的使用手册来选择C1、C2电容。
Almel ATmega128 ATmega128L 可编程 Flash 说明书
产品特点•高性能、低功耗的 AVR® 8位微处理器•先进的 RISC 结构–133条指令 – 大多数可以在一个时钟周期内完成–32 x 8 通用工作寄存器 + 外设控制寄存器–全静态工作–工作于16 MHz时性能高达16 MIPS–只需两个时钟周期的硬件乘法器•非易失性的程序和数据存储器–128K 字节的系统内可编程Flash寿命: 10,000次写/擦除周期–具有独立锁定位、可选择的启动代码区通过片内的启动程序实现系统内编程真正的读-修改-写操作–4K字节的EEPROM寿命: 100,000次写/擦除周期–4K 字节的内部SRAM–多达64K字节的优化的外部存储器空间–可以对锁定位进行编程以实现软件加密–可以通过SPI实现系统内编程•JTAG接口(与IEEE 1149.1标准兼容)–遵循JTAG标准的边界扫描功能–支持扩展的片内调试–通过JTAG接口实现对Flash, EEPROM, 熔丝位和锁定位的编程•外设特点–两个具有独立的预分频器和比较器功能的8位定时器/计数器–两个具有预分频器、比较功能和捕捉功能的16位定时器/计数器–具有独立预分频器的实时时钟计数器–两路8位PWM–6路分辨率可编程(2到16位)的PWM–输出比较调制器–8路10位ADC8个单端通道7个差分通道2个具有可编程增益(1x, 10x, 或200x)的差分通道–面向字节的两线接口–两个可编程的串行USART–可工作于主机/从机模式的SPI串行接口–具有独立片内振荡器的可编程看门狗定时器–片内模拟比较器•特殊的处理器特点–上电复位以及可编程的掉电检测–片内经过标定的RC振荡器–片内/片外中断源–6种睡眠模式: 空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式–可以通过软件进行选择的时钟频率–通过熔丝位可以选择ATmega103兼容模式–全局上拉禁止功能•I/O和封装–53个可编程I/O口线–64引脚TQFP与 64引脚 MLF封装•工作电压–2.7 - 5.5V ATmega128L–4.5 - 5.5V ATmega128•速度等级–0 - 8 MHz ATmega128L–0 - 16 MHz ATmega128微处理器,具有128K字节的系统BDTIC /ATMEL2ATmega1282467L–AVR–05/04引脚配置Figure 1. ATmega128的引脚综述ATmega128为基于AVR RISC 结构的8位低功耗CMOS 微处理器。
ATmega128 ATmega128L 介绍
ATmega128 ATmega128L 介绍
ATmega128/128L 带 128K 字节 FLASH 的在线可编程 8 位微控制 器 是 AVR 系列中功能最强的单片机,掌握了 ATmega128 的开发应用, 对其它 AVR 单片机的开发应用等于杀鸡用牛刀,快极了 1 特 点
ATmega128 具有一整套的编程和系统开发工具 C编译器 宏汇编器 调试/模拟器 JTAG ICE 在线仿真器和SL-MEGA128评估板 二 ATmega103 和 ATmega128 的兼容性
ATmega128 是一种很复杂的微控制器 它的 I/O 地址取代了保留在AVR指令集中的 64 个 I/O地 址 为确保向后兼容 ATmega103 ATmega103上所有I/O的位置与ATmega128上的相同 很多附加的 I/O 地址被加到一个从$60到$FF的扩展外部I/O空间中(例如 在ATmega103 的内部 RAM 空间中) 这些地址只能用 LD/LDS/LDD 和 ST/STS/STD 指令访问 而不能用 IN 和 OUT 指令 内部 RAM 空 间的重定位对于ATmega103用户来说可能仍是一个问题 同样 如果代码使用绝对地址那么增加的中 断向量也是一个问题 要解决这些问题 可以通过编程一个熔丝M103C来选择 ATmega103 兼容模式 在这一模式下 不能使用扩展I/O空间中的程序 所以内部 RAM象ATmega103一样定位 同时 扩展 中断向量被去除 ATmega128 百分之百与 ATmega103引脚兼容 在PCB上可以替代ATmega103 应用笔记 “用ATmega128 替换 ATmega103” 中说明了用户在用ATmega128 替换 ATmega103时应 注意的事项 三 ATmega103 兼容模式
AVR单片机ATmega128芯片BootLoader详细介绍
TIFR = TIFR|0x02;
}
}
//每秒向 PC 机发送一个控制字符"C",等待控制字〈soh〉
while(uart_getchar()!=XMODEM_SOH) //receive the start of Xmodem
{
if(TIFR & 0x02)
//timer0 over flow
{
Target: Mega128
Crystal: 16Mhz
Used: T/C0,USART0
*****************************************************/
#include #define SPM_PAGESIZE 256
//M128的一个 Flash 页为256字节(128字)
void quit(void)
{
uart_putchar('O');uart_putchar('K');
uart_putchar(0x0d);uart_putchar(0x0a);
while(!(UCSR0A & 0x20));
//等待结束提示信息回送完成
MCUCR = 0x01;
MCUCR = 0x00;
区本身。引导加载程序还可以对自身进行更新修改,甚至可以将自身删除,使系统的自编程能力消失。引导加载程序区的大小
可以由芯片的熔丝位设置,该段程序区还提供两组锁定位,以便用户选择对该段程序区的不同级别的保护。本节将给出一个实
际的的 Boot Loader 程序,它可以配合 Windows 中的超级终端程序,采用 Xmodem 传输协议,通过 RS232接口下载更新
atmega128熔丝位配置
这几天一直在搞AVR ATmega128的程序,显示最基本的功能,但是因为用到了PORTG端口,而这个端口在ATmega128中是放在内部SRAM中的,是为了与ATmega103兼容,出厂时默认是不可以访问的。
因为这个问题,耽搁了几天。
现在看到如下文章,终于“柳暗花明”了。
转载于此,为记!对AVR熔丝位的配置是比较细致的工作,用户往往忽视其重要性,或感到不易掌握。
下面给出对AVR熔丝位的配置操作时的一些要点和需要注意的相关事项。
(1)在AVR的器件手册中,对熔丝位使用已编程(Programmed)和未编程(Unprogrammed)定义熔丝位的状态,“Unprogrammed”表示熔丝状态为“1”(禁止);“Programmed”表示熔丝状态为“0”(允许)。
因此,配置熔丝位的过程实际上是“配置熔丝位成为未编程状态“1”或成为已编程状态“0”。
(2)在使用通过选择打钩“√”方式确定熔丝位状态值的编程工具软件时,请首先仔细阅读软件的使用说明,弄清楚“√”表示设置熔丝位状态为“0”还是为“1”。
(3)使用CVAVR中的编程下载程序时应特别注意,由于CVAVR 编程下载界面初始打开时,大部分熔丝位的初始状态定义为“1”,因此不要使用其编程菜单选项中的“all”选项。
此时的“all”选项会以熔丝位的初始状态定义来配置芯片的熔丝位,而实际上其往往并不是用户所需要的配置结果。
如果要使用“all”选项,应先使用“read->fuse bits”读取芯片中熔丝位实际状态后,再使用“all”选项。
(4)新的AVR芯片在使用前,应首先查看它熔丝位的配置情况,再根据实际需要,进行熔丝位的配置,并将各个熔丝位的状态记录备案。
(5)AVR芯片加密以后仅仅是不能读取芯片内部Flash和E2PROM 中的数据,熔丝位的状态仍然可以读取但不能修改配置。
芯片擦除命令是将Flash和E2PROM中的数据清除,并同时将两位锁定位状态配置成“11”,处于无锁定状态。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ATMEGA128熔丝位配置详解熔丝位配置2009-07-29 11:51在配置熔丝位时应特别注意,部分熔丝位(如OCDEN、JTAGEN和SPIEN等)的配置是不可逆的2009年04月17日星期五 11:28引言AVR系列单片机在仿真调试之前,首先必须对AVR的熔丝位和锁定位进行配置。
如果配置不当,则可能造成单片机不能正常工作,严重时可能导致单片机死锁。
因此,对单片机熔丝位和锁定位的正确配置显得尤为重要。
熔丝位是对单片机具体功能和工作模式的限定,其正确配置与否直接影响到单片机能否正常工作;锁定位是对单片机的程序和数据进行加密,以防止单片机中的程序和数据被读出或写入。
在进行配置时,一般先配置熔丝位,再配置锁定位。
锁定位又分为引导程序区锁定位和程序及数据存储器锁定位两类。
对引导程序区锁定位进行编程可以实现两套保护模式,即应用区保护模式和Boot Loader区保护模式;不同的编程配置可以实现不同的加密级别。
对程序及数据存储器锁定位进行编程可以禁止对并行和SPI/JTAG串行编程模式中Flash和EEPROM进一步编程,从而对程序和存储器中的数据进行保护。
由于引导程序锁定位和程序及数据存储器锁定位的配置具有可逆性,因此可根据不同的需要多次编程,灵活改变。
但是,在配置熔丝位时应特别注意,部分熔丝位(如OCDEN、JTAGEN和SPIEN等)的配置是不可逆的。
在采用单一编程下载情况下(例如只采用JTAG下载或者只采用AVRISP并行下载),一旦配置后将不可改变。
鉴于熔丝位配置的重要性,本文以AVR系列的ATmega128单片机为例,详细介绍熔丝位的配置以及在配置过程中常出现的一些问题,并给出相应的解决办法,成功地解决了因熔丝位配置不当而引起的单片机不能正常工作和死锁等一系列问题。
1 熔丝位的配置ATmega128的熔丝位共有3个字节:熔丝位扩展字节、熔丝位高字节和熔丝位低字节。
表1、表2和表3分别描述了所有熔丝位的功能、默认值以及它们是如何映射到熔丝位字节的。
如果熔丝位被编程,则返回值为0。
表中0代表编程,1代表未编程。
表1 熔丝位扩展字节表2 熔丝位高字节表3 熔丝位低字节2 熔丝位配置常见问题(1) ATmega128部分引脚功能不可用这是一个典型的ATmega103兼容模式熔丝位没有正确配置的问题。
ATmega128与ATmega103的引脚百分百兼容,而且通过编程熔丝位M103C,使ATmega128和ATmega103从RAM、I/O 引脚和中断向量角度完全兼容,在使用上完全取代ATmega103。
但在兼容模式下ATmega128的一些新特点无法使用:① 只剩下一个USART,而且只支持异步模式,波特率只有低8位可用;② 只有1个16位定时器和2个比较器,而不是2个16位定时器和3个比较器;③ 不支持两线接口;④ 端口C只能输出;⑤ 端口G可能用作第二功能,而不能作为通用I/O端口;⑥ 端口F只能作为输入,而不能作为ADC的模拟输入引脚;⑦ 不支持引导程序功能;⑧ 不能调节片内RC振荡器的频率。
这些新特点无法使用,直接导致ATmega128部分引脚功能不可用。
(2) ATmega128启动后停止在Boot Loader区这是一个复位向量熔丝位和Boot区大小选择熔丝位没有正确配置的问题。
ATmega128具有128 KB的系统内可编程Flash。
它由两个区构成,即应用区和Boot Loader区;两个区的大小可通过BOOTSZ熔丝位配置。
在默认配置下,应用区区间为0000H~EFFFH;Boot Loader区区间为F000H~FFFFH。
(3) USART不能或不能正确收发数据这是一个较难解决的问题,可分两步来排除错误。
首先检查USART的工作模式、数据帧和波特率等设置是否正确;然后根据表4中波特率的计算公式计算BAUD值和UBRR值。
如果计算出的BAUD值与设置的波特率值相差很远,则说明晶振没有正常工作或晶振频率选择得不对,这时应对晶振的熔丝位进行正确配置。
在默认状态下,ATmega128工作于内部提供的晶振1 MHz 下。
若要使ATmega128工作于外部晶振下,应对相应的熔丝位进行配置。
表4 波特率计算公式(4) ATmega128的PF口不能正常工作ATmega128的PF口是普通I/O口、数模转换口和JTAG接口的分时复用口。
PF口用作JTAG接口后,不能再用作普通I/O 口;若想作普通I/O使用,则须对熔丝位进行编程禁止JTAGEN 使能端。
(5) JTAG仿真器不能连接到目标板出现这一问题主要是由于JTAGEN使能端熔丝位被编程为禁止。
如果使用JTAG仿真器进行程序编程下载,则此时JTAGEN 使能端的熔丝位不可恢复。
3 ATmega128死锁的预防和解救措施ATmega128的JTAG接口支持片内调试和程序下载,还能实现对Flash、EEPROM、熔丝位和锁定位的编程,其接口电路如图1所示。
虽然JTAG接口使用非常方便,但是存在因熔丝位JTAGEN使能端配置不当而造成单片机死锁的安全隐患。
图1 ATmega128的JTAG接口电路ATmega128死锁的预防原理: ATmega128程序的下载方式有JTAG下载和AVRISP下载两种,通过这两种方式都可以进行熔丝位的配置。
如果只使用JTAG接口,则当熔丝位JTAGEN使能端配置为禁止时,不能再通过JTAG接口恢复。
理论上,如果只使用AVRISP接口,则当熔丝位SPIEN使能端禁止后也不能再通过AVRISP接口恢复。
但这种情况一般不会出现,因为芯片在出厂时已默认为SPI编程使能,且不可再对其进行配置。
因此当使用JTAG接口时应预设AVRISP接口,以便当JTAGEN使能端被禁止时仍可通过AVRISP接口恢复,从而达到预防单片机死锁的目的。
ATmega128死锁后解救措施:首先制作一条AVRISP并行下载线,电路如图2所示。
对于ATmega128和ATmega64,图中MOSI和MISO分别用引脚PE0(PDI/RXD)和PE1(PDO/TXD)替代。
把并行口连接到计算机,10针接口与目标板上单片机预留的AVRISP接口相连;通过双龙公司的SLAVRISP软件进行相应的熔丝位配置,就能重新使能JTAGEN使能端,从而达到单片机死锁后解救的目的。
图2 AVRISP并行下载线电路4 结论熔丝位的正确配置是学习和使用AVR单片机的第一步。
熔丝位配置不当,可能出现单片机不能正常工作和死锁等一系列问题。
本文列举了熔丝位在配置过程中常出现的一些典型问题,并给出了相应的解决办法,尤其详细介绍了一种ATmega128死锁的预防和解救办法。
这些典型问题和解决办法有助于正确地理解与配置AVR单片机的熔丝位,对初学者起到参考作用。
来自天详电子:初学者对熔丝经常不解,AVR芯片使用熔丝来设定时钟、启动时间、一些功能的使能、BOOT区设定、当然还有最让初学者头疼的保密位,设不好锁了芯片很麻烦。
要想使MCU功耗最小也要了解一些位的设定。
1:未编程0:编程1.BOD(Brown-out Detection) 掉电检测电路BODLEVEL(BOD电平选择): 1: 2.7V电平; 0:4.0V电平BODEN(BOD功能控制): 1:BOD功能禁止;0:BOD功能允许使用方法:如果BODEN使能(复选框选中)启动掉电检测,则检测电平由BODLEVEL决定。
一旦VCC下降到触发电平(2.7v或4.0v)以下,MCU复位;当VCC电平大于触发电平后,经过tTOUT 延时周后重新开始工作。
因为M16L可以工作在2.7v~5.5v,所以触发电平可选2.7v(BODLEVEL=1)或4.0v(BODLEVEL=0);而M16工作在4.5~5.5V,所以只能选BODLEVEL=0,BODLEVEL=1不适用于ATmega16。
2.复位启动时间选择SUT 1/0: 当选择不同晶振时,SUT有所不同。
如果没有特殊要求推荐SUT 1/0设置复位启动时间稍长,使电源缓慢上升。
3.CKSEL3/0: 时钟源选择(时钟总表)时钟总表时钟源启动延时熔丝外部时钟 6 CK + 0 ms CKSEL=0000 SUT="00"外部时钟 6 CK + 4.1 ms CKSEL=0000 SUT="01"外部时钟 6 CK + 65 ms CKSEL="0000" SUT="10"内部RC振荡1MHZ 6 CK + 0ms CKSEL="0001" SUT="00"内部RC振荡1MHZ 6 CK + 4.1ms CKSEL="0001" SUT="01"内部RC振荡1MHZ1 6 CK + 65ms CKSEL="0001" SUT="10"内部RC振荡2MHZ 6 CK + 0ms CKSEL="0010" SUT="00"内部RC振荡2MHZ 6 CK + 4.1 ms CKSEL="0010" SUT="01"内部RC振荡2MHZ 6 CK + 65ms CKSEL="0010" SUT="10"内部RC振荡4MHZ 6 CK + 0ms CKSEL="0011" SUT="00"内部RC振荡4MHZ 6 CK + 4.1ms CKSEL="0011" SUT="01"内部RC振荡4MHZ 6 CK + 65ms CKSEL="0011" SUT="10"内部RC振荡8MHZ 6 CK + 0ms CKSEL="0100" SUT="00"内部RC振荡8MHZ 6 CK + 4.1ms CKSEL="0100" SUT="01"内部RC振荡8MHZ 6 CK + 65ms CKSEL="0100" SUT="10"外部RC振荡≤0.9MHZ 18 CK + 0ms CKSEL="0101" SUT="00"外部RC振荡≤0.9MHZ 18 CK + 4.1ms CKSEL="0101" SUT="01"外部RC振荡≤0.9MHZ 18 CK + 65ms CKSEL="0101" SUT="10"外部RC振荡≤0.9MHZ 6 CK + 4.1ms CKSEL="0101" SUT="11"外部RC振荡0.9-3.0MHZ 18 CK + 0ms CKSEL="0110" SUT="00"外部RC振荡0.9-3.0MHZ 18 CK + 4.1ms CKSEL="0110" SUT="01"外部RC振荡0.9-3.0MHZ 18 CK + 65ms CKSEL="0110" SUT="10"外部RC振荡0.9-3.0MHZ 6 CK + 4.1ms CKSEL=0110 SUT="11"外部RC振荡3.0-8.0MHZ 18 CK + 0ms CKSEL=0111 SUT="00"外部RC振荡3.0-8.0MHZ 18 CK + 4.1ms CKSEL="0111" SUT="01"外部RC振荡3.0-8.0MHZ 18 CK + 65ms CKSEL=0111 SUT="10"外部RC振荡3.0-8.0MHZ 6 CK + 4.1ms CKSEL="0111" SUT="11"外部RC振荡8.0-12.0MHZ 18 CK + 0 ms CKSEL=1000 SUT="00"外部RC振荡8.0-12.0MHZ 18 CK + 4.1 ms CKSEL="1000" SUT="01"外部RC振荡8.0-12.0MHZ 18 CK + 65 ms CKSEL="1000" SUT="10"外部RC振荡8.0-12.0MHZ 6 CK + 4.1 ms CKSEL="1000" SUT="11"低频晶振(32.768KHZ) 1K CK + 4.1 ms CKSEL="1001" SUT="00"低频晶振(32.768KHZ) 1K CK + 65 ms CKSEL="1001" SUT="01"低频晶振(32.768KHZ) 32K CK + 65 ms CKSEL="1001" SUT="10"低频石英/陶瓷振荡器(0.4-0.9MHZ) 258 CK + 4.1 ms CKSEL="1010" SUT="00"低频石英/陶瓷振荡器(0.4-0.9MHZ) 258 CK + 65ms CKSEL="1010" SUT="01"低频石英/陶瓷振荡器(0.4-0.9MHZ) 1K CK + 0ms CKSEL=1010 SUT="10"低频石英/陶瓷振荡器(0.4-0.9MHZ) 1K CK + 4.1ms CKSEL="1010" SUT="11"低频石英/陶瓷振荡器(0.4-0.9MHZ) 1K CK + 65ms CKSEL="1011" SUT="00"低频石英/陶瓷振荡器(0.4-0.9MHZ) 16K CK + 0ms CKSEL=1011 SUT="01"低频石英/陶瓷振荡器(0.4-0.9MHZ) 16K CK +4.1ms CKSEL="1011" SUT="10"低频石英/陶瓷振荡器(0.4-0.9MHZ) 16K CK +65ms CKSEL="1011" SUT="11"中频石英/陶瓷振荡器(0.9-3.0MHZ) 258 CK + 4.1ms CKSEL="1100" SUT="00"中频石英/陶瓷振荡器(0.9-3.0MHZ) 258 CK + 65ms CKSEL="1100" SUT="01"中频石英/陶瓷振荡器(0.9-3.0MHZ) 1K CK + 0ms CKSEL=1100 SUT="10"中频石英/陶瓷振荡器(0.9-3.0MHZ) 1K CK + 4.1ms CKSEL="1100" SUT="11"中频石英/陶瓷振荡器(0.9-3.0MHZ) 1K CK + 65ms CKSEL="1101" SUT="00"中频石英/陶瓷振荡器(0.9-3.0MHZ) 16K CK + 0ms CKSEL="1101" SUT="01"中频石英/陶瓷振荡器(0.9-3.0MHZ) 16K CK +4.1ms CKSEL="1101" SUT="10"中频石英/陶瓷振荡器(0.9-3.0MHZ) 16K CK +65ms CKSEL="1101" SUT="11"高频石英/陶瓷振荡器(3.0-8.0MHZ) 258 CK + 4.1ms CKSEL="111"0 SUT="00"高频石英/陶瓷振荡器(3.0-8.0MHZ) 258 CK + 65ms CKSEL="111"0 SUT="01"高频石英/陶瓷振荡器(3.0-8.0MHZ) 1K CK + 0ms CKSEL="111"0 SUT="10"高频石英/陶瓷振荡器(3.0-8.0MHZ) 1K CK + 4.1ms CKSEL="111"0 SUT="11"高频石英/陶瓷振荡器(3.0-8.0MHZ) 1K CK + 65ms CKSEL="1111" SUT="00"高频石英/陶瓷振荡器(3.0-8.0MHZ) 16K CK + 0ms CKSEL="1111" SUT="01"高频石英/陶瓷振荡器(3.0-8.0MHZ) 16K CK +4.1ms CKSEL="111"1 SUT="10"高频石英/陶瓷振荡器(3.0-8.0MHZ) 16K CK +65ms CKSEL="1111" SUT="11"高位(BOOT区设置):1. JTAGEN(JTAG允许): 1:JTAG禁止; 0:JTAG允许OCDEN(OCD功能允许): 1:OCD功能禁止;0:OCD功能允许注:OCDEN(On-chip Debug):片上调试使能位JTAGEN(JTAG使能): JTAG测试访问端口使用方法:在JTAG调试时,使能OCDEN JTAGEN两位(复选框打勾),并保持所有的锁定位处于非锁定状态;在实际使用时为降低功耗,不使能OCDEN JTAGEN,大约减少2-3mA 的电流。