AVR经过熔丝来操控芯片内部的一些功用,比方JTAG,时钟的运用,掉电检测电压,是否答应调试等。
AVR Studio 中 STK500 处理熔丝位有巨大的优势:它是以功用组合让用户装备。 这种办法与小马(PnoyProg2000,SL-ISP)比较,具有以下的优势(优势是如此显着,能够用“巨大优势”来描述):
- 有用防止因不熟悉熔丝位让芯片锁死 (这是初学者的恶梦), 笔者从前锁死过三片Atmega16。
- 不需求靠回忆与查文档,就能装备熔丝位(这也是初学者的恶梦)
- 着手之前:请你必定弄清楚了,你这样改会有什么结果,除非你有许多钱不在乎多锁死几个芯片。备份你的熔丝位状况,在点击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 through the Chip Erase cycle; | 芯片擦除时EEPROM的内容保存 |
Boot Flash section size=xxxx words | 引导(Boot)区巨细为xxx个词 |
Boot start address=$yyyy; | 引导(Boot)区开端地址为 $yyyy |
Boot Reset vectorEnabled | 引导(Boot)、复位 向量 使能 |
Brown-out detectionlevel at VCC=xxxx V; | 掉电检测的电平为 VCC=xxxx 伏 |
Brown-out detectionenabled; | 掉电检测使能 |
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/ResonatorMedium Freq | 外部晶体/陶瓷振动器 中频 |
Ext. Crystal/Resonator High Freq | 外部晶体/陶瓷振动器 高频 |
注:以上中文是对照 ATmega16的中、英文版别数据手册而翻译。尽量按照了官方的中文术语。
运用举例:
比方咱们想运用片内的RC振动(即不需求接晶振),能够挑选挑选下面三者之一:
- Int. RC Osc. 8 MHz; Start-up time: 6 CK + 0 ms;
- [CKSEL=0100 SUT=00] Int. RC Osc. 8 MHz; Start-up time: 6 CK + 4 ms;
- [CKSEL=0100 SUT=01] Int. RC Osc. 8 MHz; Start-up time: 6 CK + 64 ms; [CKSEL=0100 SUT=10]
如图:内部1M晶振,默许状况典型设置。(两个图分别为上下两部分,没有显现的部分均为不选中状况。)
下图显现的是挑选内部晶振,1 Mhz RC
比方咱们想运用外部7.3728M晶振,能够挑选挑选下面三者之一:
- Ext. Crystal/ResonatorHigh Freq.;
- Start-up time: 258 CK + 4 ms;
- [CKSEL=1110 SUT=00] 或后边与Ext. Crystal/ResonatorHigh Freq.;…. 有关的挑选。
如下两图:7.3728M晶振典型融丝位(及本站的开发板运用时分的典型设置)
假如你在运用过程中遇到什么问题,欢迎评论,http://bbs.avrvi.com。
跋文:说说Mega128的熔丝位
ATmega128是avr系列中一款高性能的芯片,规划的时分兼容M103形式,可是这个M103形式常常害人。基于此,说说ATmega128的熔丝位,趁便说说其他的功用。
默许状况下M103形式是选中的,应该将其去掉;晶振是内部1M晶振,假如你运用外部晶振,应该进行修正。M128能够敞开硬件的看门狗,选中此项,看门狗不需求程序初始化,只需求程序里边喂狗就能够了。
默许熔丝榜首部分
M103兼容形式,使能JTAG,使能SPI,Bootloader区巨细4096,未使能BOOT。
默许熔丝第二部分
DOD为2.7V,内部1M晶振。
下面是本站运用M128开发板的典型设置,M103形式撤销,运用M128形式,运用外部7.3728M晶振。
典型熔丝榜首部分(只说修正部分)
去掉了M103,然后运用M128形式。
典型熔丝第二部分
挑选最终一项,即运用外部高频晶振。
再次提示我们,往芯片里烧写程序前,必定要查看是否正确设置熔丝位(时钟源)。