Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2321434
  • 博文数量: 318
  • 博客积分: 8752
  • 博客等级: 中将
  • 技术积分: 4944
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-23 07:56
文章分类

全部博文(318)

文章存档

2019年(1)

2017年(2)

2016年(12)

2015年(2)

2014年(1)

2013年(17)

2012年(22)

2011年(9)

2010年(37)

2009年(33)

2008年(44)

2007年(43)

2006年(95)

分类:

2006-08-27 15:55:48

初学者对熔丝经常不解,AVR芯片使用熔丝来设定时钟、启动时间、一些功能的使能、BOOT区设定、当然还有最让初学者头疼的保密位,设不好锁了芯片很麻烦。要想使MCU功耗最小也要了解一些位的设定
在此写下自己对熔丝的理解,参照了一些MEGA16的PDF文档,双龙的文档,以及大家的帖子。力求易懂、全面。
首先记住:
  1:未编程(检查框不打钩)
  0:编程 (检查框打钩)
建议在配置熔丝之前先“读取配置”读出原来的设定,再自己编辑。
看看 M16的出厂设置。
默认设置为:内部RC振荡8MHZ 6 CK + 65 ms CKSEL=0100 SUT=10
高位:时钟及启动时间设置:
BODLEVEL: BOD电平选择     1:2.7V电平;   0:4.0V电平
BODEN:    BOD功能控制     1:BOD功能禁止;0:BOD功能允许
使用方法:  BOD(Brown-out Detection) 掉电检测电路 , 如果BODEN使能(编程) 启动掉电检测, 检测电平由BODLEVEL决定 一旦VCC下降到触发电平(2.7v或4.0v)以下,MUC复位,当VCC电平大于触发电平后,经过tTOUT 延时周后重新开始工作。
注:1:
因为M16L可以工作在2.7v-5.5v所以触发电平可选2.7v或4.0v。M16工作在4.5 - 5.5V,所以 BODLEVEL=0。BODLEVEL=1 不适用于ATmega16,
SUT1/0:        复位启动时间选择 当选择不同晶振时,SUT有所不同。
            如果没有特殊要求推荐SUT1/0设置电源缓慢上升。
CKSEL3/0:   时钟源选择  
低位:BOOT区设置
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的电流。
SPIEN:     SPI下载允许    1:SPI下载禁止;0:SPI下载使能
在双龙的软件里,SPIEN是不能编辑的,默认为0。
CKOPT:选择这两种放大器模式  CKOPT=0:高幅度振荡输出;CKOPT=1:低幅度振荡输出
当CKOPT 被编程时振荡器在输出引脚产生满幅度的振荡。这种模式适合于噪声环境,以及需要通过XTAL2 驱动第二个时钟缓冲器的情况。而且这种模式的频率范围比较宽。当保持CKOPT 为未编程状态时,振荡器的输出信号幅度比较小。其优点是大大降低了功耗,但是频率范围比较窄,而且不能驱动其他时钟缓冲器。(据我测量功耗差别在1mA左右)。
对于谐振器,CKOPT未编程时的最大频率为8 MHz,CKOPT编程时为16 MHz。内部RC振荡器工作时不对CKOPT编程。
EEAVE:     烧录时EEPROM数据保留     1:不保留;0:保留
在一次使用EEProm时没注意EEAVE位的编程,调试程序每次烧flash时,EEProm都没了,后来才知道,EEAVE打了勾。
BOOTRST:   复位入口选择     1:程序从0x0000地址开始 0:复位后从BOOT区执行(参考BOOTSZ0/1)
BOOTSZ1/0:   引导区程序大小及入口       
00:        1024Word/0xc00;
01:        512Word/0xe00;
10:        256Word/0xf00;
11:        128Word/0xf80
时钟总表

时钟源               启动延时         熔丝
外部时钟             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 + 0 ms   CKSEL=0001 SUT=00
内部RC振荡1MHZ                     6 CK + 4.1 ms CKSEL=0001 SUT=01
内部RC振荡1MHZ1                    6 CK + 65 ms  CKSEL=0001 SUT=10
内部RC振荡2MHZ                     6 CK + 0 ms   CKSEL=0010 SUT=00
内部RC振荡2MHZ                     6 CK + 4.1 ms CKSEL=0010 SUT=01
内部RC振荡2MHZ                     6 CK + 65 ms  CKSEL=0010 SUT=10
内部RC振荡4MHZ                     6 CK + 0 ms   CKSEL=0011 SUT=00
内部RC振荡4MHZ                     6 CK + 4.1 ms CKSEL=0011 SUT=01
内部RC振荡4MHZ                     6 CK + 65 ms  CKSEL=0011 SUT=10
内部RC振荡8MHZ                     6 CK + 0 ms   CKSEL=0100 SUT=00
内部RC振荡8MHZ                     6 CK + 4.1 ms CKSEL=0100 SUT=01
内部RC振荡8MHZ                     6 CK + 65 ms      CKSEL=0100 SUT=10
外部RC振荡≤0.9MHZ                 18 CK + 0 ms      CKSEL=0101 SUT=00
外部RC振荡≤0.9MHZ                 18 CK + 4.1 ms    CKSEL=0101 SUT=01
外部RC振荡≤0.9MHZ                 18 CK + 65 ms     CKSEL=0101 SUT=10
外部RC振荡≤0.9MHZ                 6 CK + 4.1 ms     CKSEL=0101 SUT=11
外部RC振荡0.9-3.0MHZ               18 CK + 0 ms      CKSEL=0110 SUT=00
外部RC振荡0.9-3.0MHZ               18 CK + 4.1 ms    CKSEL=0110 SUT=01
外部RC振荡0.9-3.0MHZ               18 CK + 65 ms     CKSEL=0110 SUT=10
外部RC振荡0.9-3.0MHZ               6 CK + 4.1 ms     CKSEL=0110 SUT=11
外部RC振荡3.0-8.0MHZ               18 CK + 0 ms      CKSEL=0111 SUT=00
外部RC振荡3.0-8.0MHZ               18 CK + 4.1 ms    CKSEL=0111 SUT=01
外部RC振荡3.0-8.0MHZ               18 CK + 65 ms     CKSEL=0111 SUT=10
外部RC振荡3.0-8.0MHZ               6 CK + 4.1 ms     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 + 65 ms    CKSEL=1010 SUT=01
低频石英/陶瓷振荡器(0.4-0.9MHZ)    1K CK + 0 ms      CKSEL=1010 SUT=10
低频石英/陶瓷振荡器(0.4-0.9MHZ)    1K CK + 4.1 ms    CKSEL=1010 SUT=11
低频石英/陶瓷振荡器(0.4-0.9MHZ)    1K CK + 65 ms     CKSEL=1011 SUT=00
低频石英/陶瓷振荡器(0.4-0.9MHZ)    16K CK + 0 ms     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.1 ms   CKSEL=1100 SUT=00
中频石英/陶瓷振荡器(0.9-3.0MHZ)    258 CK + 65 ms    CKSEL=1100 SUT=01
中频石英/陶瓷振荡器(0.9-3.0MHZ)    1K CK + 0 ms      CKSEL=1100 SUT=10
中频石英/陶瓷振荡器(0.9-3.0MHZ)    1K CK + 4.1 ms    CKSEL=1100 SUT=11
中频石英/陶瓷振荡器(0.9-3.0MHZ)    1K CK + 65 ms     CKSEL=1101 SUT=00
中频石英/陶瓷振荡器(0.9-3.0MHZ)    16K CK + 0 ms     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.1 ms   CKSEL=1110 SUT=00
高频石英/陶瓷振荡器(3.0-8.0MHZ)    258 CK + 65 ms    CKSEL=1110 SUT=01
高频石英/陶瓷振荡器(3.0-8.0MHZ)    1K CK + 0 ms      CKSEL=1110 SUT=10
高频石英/陶瓷振荡器(3.0-8.0MHZ)    1K CK + 4.1 ms    CKSEL=1110 SUT=11
高频石英/陶瓷振荡器(3.0-8.0MHZ)    1K CK + 65 ms     CKSEL=1111 SUT=00
高频石英/陶瓷振荡器(3.0-8.0MHZ)    16K CK + 0 ms     CKSEL=1111 SUT=01
高频石英/陶瓷振荡器(3.0-8.0MHZ)    16K CK + 4.1ms    CKSEL=1111 SUT=10
高频石英/陶瓷振荡器(3.0-8.0MHZ)    16K CK + 65ms     CKSEL=1111 SUT=11

阅读(1899) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~