ATmega16 熔丝位设定

  • 格式:docx
  • 大小:45.94 KB
  • 文档页数:4

ATmega16 熔丝位设定特别注意,要使用外部晶体,必须设置熔丝,否则芯片会使用默认的内部晶体。

1、M16的出厂设置内部RC 振荡1MHz 6 CK + 65 ms CKSEL=0001 SUT=10 JTAGEN=1默认状况下JTAG已编程(即PC2-PC5 为高电平不可以被拉低) ,如果PC2->PC5要用作普通IO 口,需要取消JTAG编程,或者在程序开始时执行以下命令:MCUCSR |= 1 << JTD;MCUCSR |= 1 << JTD; //注意要连续操作两次。

恢复JTAG功能也要连续两次操作。

2、熔丝位配置说明2.1低位(时钟及启动时间设置)2.1.1、BOD(Brown-out Detection) 掉电检测电路BODLEVEL(BOD 电平选择): 1 (2.7V电平) 0(4.0V电平)BODEN(BOD 功能控制): 1 (BOD 功能禁止) 0(BOD功能允许)一旦VCC 下降到触发电平(2.7v 或4.0v)以下,MUC复位;当VCC电平大于触发电平后,经过tTOUT 延时周后重新开始工作。

2.1.2、复位启动时间选择SUT 1/0: 当选择不同晶振时,SUT有所不同。

如果没有特殊要求推荐SUT 1/0 设置复位启动时间稍长,使电源缓慢上升。

2.1.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 + 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- MHZ) 16K CK + 0 ms CKSEL=1111 SUT=01高频石英/陶瓷振荡器(3.0- MHZ) 16K CK + 4.1ms CKSEL=1111 SUT=10高频石英/陶瓷振荡器(3.0- MHZ) 16K CK + 65ms CKSEL=1111 SUT=11高于8M选8M 的。

2.2、高位(BOOT区设置)2.2.1、调试相关位JTAGEN(JTAG使能): 1:JTAG禁止 0:JTAG允许OCDEN(片上调试使能): 1:OCD功能禁止 0:OCD功能允许OCDEN:(使能OCD 片上调试系统;默认为1)必须对JTAGEN 熔丝位进行编程才能使能JTAG 测试访问端口。

此外还必须保持所有的锁定位处于非锁定状态,才能真正使片上调试系统工作。

作为片上调试系统的安全特性,在设置了LB1 或LB2 任一个锁定位时片上调试系统被禁止。

否则,片上调试系统就会给安全器件留下后门。

JTAGEN:(使能JTAG;默认为0)使用方法:在JTAG调试时,使能OCDEN JTAGEN 两位并保持所有的锁定位处于非锁定状态;在实际使用时为降低功耗,不使能OCDEN JTAGEN,大约减少2-3mA 的电流。

2.2.2、在线下载SPIEN(SPI 下载允许): 1:SPI下载禁止;0:SPI下载使能注:在双龙的软件里,SPIEN是不能编辑的,默认为0。

但是PROGISP中可以,默认为0。

2.2.3、选择放大器CKOPT(选择放大器模式):CKOPT=0 :高幅度振荡输出;CKOPT=1:低幅度振荡输出当CKOPT 被编程时振荡器在输出引脚产生满幅度的振荡。

这种模式适合于噪声环境,以及需要通过XTAL2 驱动第二个时钟缓冲器的情况,而且这种模式的频率范围比较宽。

当保持CKOPT 为未编程状态时,振荡器的输出信号幅度比较小。

其优点是大大降低了功耗,但是频率范围比较窄,而且不能驱动其他时钟缓冲器。

对于谐振器,当CKOPT 未编程时的最大频率为8 MHz,CKOPT编程时为16 MHz。

内部RC 振荡器工作时不对CKOPT 编程。

2.2.4、烧录时EEPROM已有数据如何处理EEAVE(烧录时EEPROM数据保留): 1:不保留;0:保留2.2.5、复位后程序的入口选择BOOTRST(复位入口选择): 1:程序从0x0000地址开始 0:复位后从BOOT 区执行(参考BOOTSZ0/1)2.2.6、引导区程序大小及入口地址设置BOOTSZ 引导区程序大小入口00: 1024Word 0xc0001: 512Word 0xe0010: 256Word 0xf0011: 128Word 0xf803、熔丝位设定示例使用外部16MHz晶体,禁止JTAG功能,其它默认。