新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > AVR熔絲位配置詳解

        AVR熔絲位配置詳解

        作者: 時間:2016-11-13 來源:網(wǎng)絡 收藏
        AVR通過熔絲來控制芯片內部的一些功能,比如JTAG,時鐘的使用,掉電檢測電壓,是否允許調試等。

        AVR Studio 中 STK500 處理熔絲位有巨大的優(yōu)勢:它是以功能組合讓用戶配置。 這種方式與小馬(PnoyProg2000,SL-ISP)相比,具有以下的優(yōu)勢(優(yōu)勢是如此明顯,可以用“巨大優(yōu)勢”來形容):

        本文引用地址:http://www.104case.com/article/201611/316282.htm
        1. 有效避免因不熟悉熔絲位讓芯片鎖死 (這是初學者的惡夢), 筆者曾經鎖死過三片Atmega16。
        2. 不需要靠記憶與查文檔,就能配置熔絲位(這也是初學者的惡夢)
        3. 動手之前:請你一定弄清楚了,你這樣改會有什么后果,除非你有很多錢不在乎多鎖死幾個芯片。備份你的熔絲位狀態(tài),在點擊Program之前再次檢查熔絲位設置正確與否,不要誤點了某項而沒有注意到。

        由于ISP下載需要芯片本身提供時鐘信號。一定注意,如果沒有接外部晶振,一定不能編程熔絲位使用外部晶振。一旦那樣做,就不能再進入編程了,也就是芯片被鎖死。

        建議新手不要隨意設置芯片的熔絲位,等對熔絲位比較了解了再進行操作。

        當芯片鎖死已成事實,只要能夠為芯片提供相對應的時鐘源即可。如選擇了Ext. RC Osc而又沒有外部 RC(阻容) 振蕩器時,可參考手冊的接一個很簡單的RC振蕩電路!再將熔絲位配置改回正確的配置就可搞定!

        通過下圖的方法打開連接:

        使用操作界面如下: (注意:下圖中,打勾的表示選中,代表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)區(qū)大小為xxx個詞
        Boot start address=$yyyy;引導(Boot)區(qū)開始地址為 $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的中、英文版本數(shù)據(jù)手冊而翻譯。盡量按照了官方的中文術語。

        應用舉例:

        比如我們想使用片內的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晶振,默認情況典型設置。(兩個圖分別為上下兩部分,沒有顯示的部分均為不選中狀態(tài)。)

        下圖顯示的是選擇內部晶振,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晶振典型融絲位(及本站的開發(fā)板使用時候的典型設置)

        如果你在使用過程中遇到什么問題,歡迎討論,http://bbs.avrvi.com。


        后記:說說Mega128的熔絲位

        ATmega128是avr系列中一款高性能的芯片,設計的時候兼容M103模式,但是這個M103模式經常害人。基于此,說說ATmega128的熔絲位,順便說說其他的功能。

        默認情況下M103模式是選中的,應該將其去掉;晶振是內部1M晶振,如果你使用外部晶振,應該進行修改。M128可以開啟硬件的看門狗,選中此項,看門狗不需要程序初始化,只需要程序里面喂狗就可以了。


        默認熔絲第一部分

        M103兼容模式,使能JTAG,使能SPI,Bootloader區(qū)大小4096,未使能BOOT。

        默認熔絲第二部分

        DOD為2.7V,內部1M晶振。

        下面是本站使用M128開發(fā)板的典型設置,M103模式取消,使用M128模式,使用外部7.3728M晶振。

        典型熔絲第一部分(只說修改部分)

        去掉了M103,從而使用M128模式。

        典型熔絲第二部分

        選擇最后一項,即使用外部高頻晶振。

        再次提醒大家,往芯片里燒寫程序前,一定要檢查是否正確設置熔絲位(時鐘源)。



        關鍵詞: AVR熔絲位配置詳

        評論


        技術專區(qū)

        關閉
        主站蜘蛛池模板: 谢通门县| 青海省| 平山县| 武邑县| 涟水县| 灵台县| 合川市| 六盘水市| 龙岩市| 德保县| 大方县| 云南省| 陆良县| 全州县| 齐河县| 焦作市| 石狮市| 佛学| 尉犁县| 汶川县| 金坛市| 恭城| 梁山县| 铁力市| 娱乐| 祁阳县| 彰化县| 瑞丽市| 锡林浩特市| 泾阳县| 泰州市| 溆浦县| 山丹县| 陈巴尔虎旗| 苍溪县| 汉阴县| 呼图壁县| 富裕县| 都匀市| 德令哈市| 永嘉县|