在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文詳解ATMEGA128熔絲位配置

電子工程師 ? 作者:工程師陳翠 ? 2018-06-17 09:12 ? 次閱讀

AVR系列單片機仿真調試之前,首先必須對AVR的熔絲位和鎖定位進行配置。如果配置不當,則可能造成單片機不能正常工作,嚴重時可能導致單片機死鎖。因此,對單片機熔絲位和鎖定位的正確配置顯得尤為重要。

熔絲位是對單片機具體功能和工作模式的限定,其正確配置與否直接影響到單片機能否正常工作;鎖定位是對單片機的程序和數據進行加密,以防止單片機中的程序和數據被讀出或寫入。在進行配置時,一般先配置熔絲位,再配置鎖定位。鎖定位又分為引導程序區鎖定位和程序及數據存儲器鎖定位兩類。對引導程序區鎖定位進行編程可以實現兩套保護模式,即應用區保護模式和Boot Loader區保護模式;不同的編程配置可以實現不同的加密級別。對程序及數據存儲器鎖定位進行編程可以禁止對并行和SPI/JTAG串行編程模式中 Flash和EEPROM進一步編程,從而對程序和存儲器中的數據進行保護。

由于引導程序鎖定位和程序及數據存儲器鎖定位的配置具有可逆性,因此可根據不同的需要多次編程,靈活改變。但是,在配置熔絲位時應特別注意,部分熔絲位(如OCDEN、JTAGEN和SPIEN等)的配置是不可逆的。在采用單一編程下載情況下(例如只采用JTAG下載或者只采用AVRISP并行下載),一旦配置后將不可改變。鑒于熔絲位配置的重要性,本文以AVR系列的ATmega128單片機為例,詳細介紹熔絲位的配置以及在配置過程中常出現的一些問題,并給出相應的解決辦法,成功地解決了因熔絲位配置不當而引起的單片機不能正常工作和死鎖等一系列問題。

1 熔絲位的配置

ATmega128的熔絲位共有3個字節: 熔絲位擴展字節、熔絲位高字節和熔絲位低字節。表1、表2和表3分別描述了所有熔絲位的功能、默認值以及它們是如何映射到熔絲位字節的。如果熔絲位被編程,則返回值為0。表中0代表編程,1代表未編程。

表1 熔絲位擴展字節

一文詳解ATMEGA128熔絲位配置

表2 熔絲位高字節

一文詳解ATMEGA128熔絲位配置

表3 熔絲位低字節

一文詳解ATMEGA128熔絲位配置

2 熔絲位配置常見問題

(1) ATmega128部分引腳功能不可用

這是一個典型的ATmega103兼容模式熔絲位沒有正確配置的問題。ATmega128與ATmega103的引腳百分百兼容,而且通過編程熔絲位M103C,使ATmega128和ATmega103從RAM、I/O引腳和中斷向量角度完全兼容,在使用上完全取代ATmega103。但在兼容模式下ATmega128的一些新特點無法使用:① 只剩下一個USART,而且只支持異步模式,波特率只有低8位可用;② 只有1個16位定時器和2個比較器,而不是2個16位定時器和3個比較器;③ 不支持兩線接口;④ 端口C只能輸出;⑤ 端口G可能用作第二功能,而不能作為通用I/O端口;⑥ 端口F只能作為輸入,而不能作為ADC模擬輸入引腳;⑦ 不支持引導程序功能;⑧ 不能調節片內RC振蕩器的頻率。這些新

特點無法使用,直接導致ATmega128部分引腳功能不可用。

(2) ATmega128啟動后停止在Boot Loader區

這是一個復位向量熔絲位和Boot區大小選擇熔絲位沒有正確配置的問題。ATmega128具有128 KB的系統內可編程Flash。它由兩個區構成,即應用區和Boot Loader區;兩個區的大小可通過BOOTSZ熔絲位配置。在默認配置下,應用區區間為0000H~EFFFH;Boot Loader區區間為F000H~FFFFH。

(3) USART不能或不能正確收發數據

這是一個較難解決的問題,可分兩步來排除錯誤。首先檢查USART的工作模式、數據幀和波特率等設置是否正確;然后根據表4中波特率的計算公式計算 BAUD值和UBRR值。如果計算出的BAUD值與設置的波特率值相差很遠,則說明晶振沒有正常工作或晶振頻率選擇得不對,這時應對晶振的熔絲位進行正確配置。在默認狀態下,ATmega128工作于內部提供的晶振1 MHz下。若要使ATmega128工作于外部晶振下,應對相應的熔絲位進行配置。

表4 波特率計算公式

一文詳解ATMEGA128熔絲位配置

(4) ATmega128的PF口不能正常工作

ATmega128的PF口是普通I/O口、數模轉換口和JTAG接口的分時復用口。PF口用作JTAG接口后,不能再用作普通I/O口;若想作普通I/O使用,則須對熔絲位進行編程禁止JTAGEN使能端。

(5) JTAG仿真器不能連接到目標板

出現這一問題主要是由于JTAGEN使能端熔絲位被編程為禁止。如果使用JTAG仿真器進行程序編程下載,則此時JTAGEN使能端的熔絲位不可恢復。

3 ATmega128死鎖的預防和解救措施

ATmega128的JTAG接口支持片內調試和程序下載,還能實現對Flash、EEPROM、熔絲位和鎖定位的編程,其接口電路如圖1所示。雖然JTAG接口使用非常方便,但是存在因熔絲位JTAGEN使能端配置不當而造成單片機死鎖的安全隱患。

一文詳解ATMEGA128熔絲位配置

圖1 ATmega128的JTAG接口電路

ATmega128死鎖的預防原理: ATmega128程序的下載方式有JTAG下載和AVRISP下載兩種,通過這兩種方式都可以進行熔絲位的配置。如果只使用JTAG接口,則當熔絲位 JTAGEN使能端配置為禁止時,不能再通過JTAG接口恢復。理論上,如果只使用AVRISP接口,則當熔絲位SPIEN使能端禁止后也不能再通過 AVRISP接口恢復。但這種情況一般不會出現,因為芯片在出廠時已默認為SPI編程使能,且不可再對其進行配置。因此當使用JTAG接口時應預設 AVRISP接口,以便當JTAGEN使能端被禁止時仍可通過AVRISP接口恢復,從而達到預防單片機死鎖的目的。

ATmega128死鎖后解救措施: 首先制作一條AVRISP并行下載線,電路如圖2所示。對于ATmega128和ATmega64,圖中MOSI和MISO分別用引腳 PE0(PDI/RXD)和PE1(PDO/TXD)替代。把并行口連接到計算機,10針接口與目標板上單片機預留的AVRISP接口相連;通過雙龍公司的SLAVRISP軟件進行相應的熔絲位配置,就能重新使能JTAGEN使能端,從而達到單片機死鎖后解救的目的。

ATmega128死鎖后解救措施: 首先制作一條AVRISP并行下載線,電路如圖2所示。對于ATmega128和ATmega64,圖中MOSI和MISO分別用引腳 PE0(PDI/RXD)和PE1(PDO/TXD)替代。把并行口連接到計算機,10針接口與目標板上單片機預留的AVRISP接口相連;通過雙龍公司的SLAVRISP軟件進行相應的熔絲位配置,就能重新使能JTAGEN使能端,從而達到單片機死鎖后解救的目的。

一文詳解ATMEGA128熔絲位配置

4 結論

熔絲位的正確配置是學習和使用AVR單片機的第一步。熔絲位配置不當,可能出現單片機不能正常工作和死鎖等一系列問題。本文列舉了熔絲位在配置過程中常出現的一些典型問題,并給出了相應的解決辦法,尤其詳細介紹了一種ATmega128死鎖的預防和解救辦法。這些典型問題和解決辦法有助于正確地理解與配置AVR單片機的熔絲位,對初學者起到參考作用。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • ATmega128
    +關注

    關注

    3

    文章

    76

    瀏覽量

    27002
  • 熔絲
    +關注

    關注

    0

    文章

    31

    瀏覽量

    11622
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    ATMEGA128ATMEGA128A 區別??

    什么的....升級主要表現在哪些地方???我開始用的是ATMEGA128開發板,后來自己畫了塊板子,用的是ATMEGA128A,在使用的時候應該注意點什么???請各位各抒己見,謝謝!
    發表于 12-25 22:04

    Atmega128串口詳解

    Atmega128串口詳解
    發表于 08-19 10:07

    ATMEGA640設定

    ATMEGA640設定CKSEL設定為0011時(內部rc 128KHZ)時,芯片被鎖,無法使用,這現象很奇怪,希望高手能解答
    發表于 07-10 09:34

    如何對AVR進行配置

    對AVR配置是比較細致的工作,用戶往往忽視其重要性,或感到不易掌握。下面給出對AVR
    發表于 07-13 07:24

    對AVR配置操作時有哪些注意要點和事項?

    對AVR配置操作時有哪些注意要點和事項?ATmega128
    發表于 09-26 06:54

    怎樣去設置AVR單片機

    AVR單片機設置可以控制avr單片機的
    發表于 11-23 09:01

    atmega128資料pdf

    ATmega128為基于AVR RISC結構的8低功耗CMOS微處理器。由于其先進的指令集以及單周期指令執行時間, ATmega128 的數據吞吐率高達1 MIPS/MHz,從而可以緩減系統在功耗和處理速度
    發表于 04-07 15:04 ?2021次下載

    atmega128 pdf

    ATmega128為基于AVR RISC結構的8低功耗CMOS微處理器。由于其先進的指令集以及單周期指令執行時間, ATmega128 的數據吞吐率高達1 MIPS/MHz,從而可以緩減系統在功耗和處理速度之
    發表于 04-08 10:47 ?9次下載

    ATMEGA8的說明

    ATMEGA8的說明,感興趣的小伙伴可以瞧瞧。
    發表于 11-03 15:15 ?0次下載

    ATmega128手冊

    ATmega128手冊是官方網站發布的,很詳細
    發表于 12-12 21:36 ?96次下載

    ATmega128單片機的資料匯總

    在 AVR的器件手冊中,使用已編程( Programmed )和未編程( Unprogrammed )定義的狀態。 “Unprogrammed”表示絲狀態為“ 1”(禁止);“
    發表于 06-30 08:00 ?9次下載
    <b class='flag-5'>ATmega128</b>單片機<b class='flag-5'>熔</b><b class='flag-5'>絲</b><b class='flag-5'>位</b>的資料匯總

    AVR單片機設置

    AVR單片機設置 可以控制avr單片機的
    發表于 11-14 20:21 ?12次下載
    AVR單片機<b class='flag-5'>熔</b><b class='flag-5'>絲</b><b class='flag-5'>位</b>設置

    ATmega128單片機](修改后無法燒錄程序情況)

    @ATmega128單片機,AVR,ATmega128單片機](修改后無法燒錄程序情況)本人是AVR單片機小白,前段時間開始學習AVR單片機,由于腦殘更改了AVR單片機的
    發表于 11-15 09:36 ?26次下載
    <b class='flag-5'>ATmega128</b>單片機](<b class='flag-5'>熔</b><b class='flag-5'>絲</b>修改后無法燒錄程序情況)

    Atmega128 AVR Studio(Fuse)設置

    Atmega128 AVR Studio(Fuse)設置
    發表于 11-15 16:21 ?40次下載
    <b class='flag-5'>Atmega128</b>  AVR Studio<b class='flag-5'>熔</b><b class='flag-5'>絲</b><b class='flag-5'>位</b>(Fuse)設置

    8微處理器atmega128數據手冊

    8微處理器atmega128數據手冊免費下載。
    發表于 04-28 17:36 ?13次下載
    主站蜘蛛池模板: 四虎国产欧美成人影院 | 久久免费观看国产精品 | 亚洲成人伊人网 | 青草视频在线观看国产 | 在线天堂网www资源种子 | 免费大片av手机看片 | 51xx嘿嘿午夜| 天天看人体| 国产一级特黄在线播放 | 午夜爱爱小视频 | 性生活黄色毛片 | 欧美黄色xxx | 精品黄色录像 | 乱人伦的小说 | 四虎影院精品 | 午夜激情网站 | 午夜性福利| 藏经阁在线 | 五月婷婷综合基地 | 色多多福利网站 | 69er小视频 | 婷婷在线观看网站 | 一本到卡二卡三卡福利 | 欧美一级欧美三级在线 | 黑色丝袜美美女被躁视频 | 手机看片日本 | 色香色香欲天天天影视综合网 | 婷婷资源 | 午夜精品在线观看 | 五月综合久久 | 34看网片午夜理 | 久久亚洲免费视频 | 香蕉网影院在线观看免费 | 午夜日韩视频 | 高颜值露脸极品在线播放 | 国产精品毛片久久久久久久 | 69日本xxxxxxxxx13| 欧美色欧美亚洲高清在线观看 | 欧美h网 | 国产在线视欧美亚综合 | 亚洲电影在线播放 |