AVR開發前準備—熔絲位(Fuse)快速入門
AVR通過熔絲來控制芯片內部的一些功能,比如JTAG,時鐘的使用,掉電檢測電壓,是否允許調試等。
本文引用地址:http://www.104case.com/article/201610/311845.htmAVR Studio 中 STK500 處理熔絲位有巨大的優勢:它是以功能組合讓用戶配置。 這種方式與小馬(PnoyProg2000,SL-ISP)相比,具有以下的優勢(優勢是如此明顯,可以用“巨大優勢”來形容):
有效避免因不熟悉熔絲位讓芯片鎖死 (這是初學者的惡夢), 筆者曾經鎖死過三片Atmega16。
不需要靠記憶與查文檔,就能配置熔絲位(這也是初學者的惡夢)
動手之前:請你一定弄清楚了,你這樣改會有什么后果,除非你有很多錢不在乎多鎖死幾個芯片。備份你的熔絲位狀態,在點擊Program之前再次檢查熔絲位設置正確與否,不要誤點了某項而沒有注意到。
通過下圖的方法打開連接:

使用操作界面如下: (注意:下圖中,打勾的表示選中,代表0。沒有打勾的表示1)。

上圖的資料有很多相關項,你需要認識以下的代碼,以理解意思。英文翻譯說明如下:
英文中文
On-Chip Debug Enabled片內 調試 使能
JTAG Interface EnabledJTAG 接口 使能
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 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的中、英文版本數據手冊而翻譯。盡量按照了官方的中文術語。
應用舉例:
比如我們想使用片內的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/Resonator High Freq.;
Start-up time: 258 CK + 4 ms;
[CKSEL=1110 SUT=00] 或后面與Ext. Crystal/Resonator High 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模式。

典型熔絲第二部分
選擇最后一項,即使用外部高頻晶振。

評論