標(biāo)題: AVR單片機(jī)的熔絲位 [打印本頁(yè)]

作者: 51黑科技    時(shí)間: 2016-2-4 04:02
標(biāo)題: AVR單片機(jī)的熔絲位
AVR單片機(jī)ATmega16L出廠時(shí)熔絲位的設(shè)置有兩點(diǎn)是需要使用者注意的,一是它的時(shí)鐘設(shè)置為CKSEL3=0、CKSEL2=0、CKSEL1=0,即使用內(nèi)部1MHz的RC振蕩器,因此當(dāng)你要用外部晶振時(shí),比如你要用串口,這時(shí)就需要重新配置熔絲位,才能正常使用串口。二是JTAGEN 熔絲位。缺省為編程狀態(tài)。因此你如果要用PC2~PC5做一般I/O引腳用的話,也不能使用,必須在熔絲位配置窗口中把JTAGEN前面的那個(gè)√去掉,這樣程序才能正常運(yùn)行。我在使用該芯片時(shí)就遇到過(guò)這些問(wèn)題,寫出來(lái)提醒同行參考。
當(dāng)然你在配置熔斯位時(shí)要小心從事,防止芯片鎖死。有不少網(wǎng)友屢屢遭此不幸。其實(shí)你在熔絲位配置時(shí),只要方法正確,一般是不會(huì)出錯(cuò)的。以我們常用的小馬PonyProg2000下載軟件為例,在Command菜單中選Security and Configuration Bits,(或者點(diǎn)Security and Configuration Bits按鈕)在接著出現(xiàn)的熔絲位配置窗口的下面,有幾個(gè)按鈕,千萬(wàn)不要亂按。正確的方法是先按“Read”按鈕,讀出原來(lái)芯片中熔絲位的配置,然后再以此為基礎(chǔ),按你的需要進(jìn)行局部修改,確定無(wú)誤后再按“Write”按鈕,就OK了。一般不會(huì)出現(xiàn)鎖死的問(wèn)題。如果萬(wàn)一由于操作不當(dāng),出現(xiàn)鎖死也不必驚慌。除了用并行編程器恢復(fù)的方法以外,對(duì)于沒有并行編程器的朋友,還可以用外接有源振蕩器的方法解鎖,方法是用一個(gè)1MHz的振蕩信號(hào)接到ATmega16L的 13腳XTAL1,接通單片機(jī)的電源,正常的話你會(huì)看到原來(lái)單片機(jī)中的程序已經(jīng)可以正常運(yùn)行了。說(shuō)明外接振蕩器已經(jīng)使單片機(jī)恢復(fù)工作了。這下來(lái)就好辦了,仍然用PonyProg2000,點(diǎn)Security and Configuration Bits按鈕,進(jìn)入熔絲位配置窗口,這時(shí)你會(huì)看到所有的熔絲位都沒打√,連灰色的SPIEN前面那個(gè)模糊不清的√也沒了,不過(guò)沒關(guān)系Don’t worry,你只要按照下圖中ATmega16L出廠時(shí)熔絲位的設(shè)置打√,然后按“Write”按鈕,如果屏幕輕輕的閃一下,OK,恭喜你已經(jīng)好了,再按“Read”按鈕,你會(huì)看到除了你打√的地方以外,SPIEN前面那個(gè)模糊不清的√也出來(lái)了。鎖死的芯片已經(jīng)解鎖了。
要注意的是外接的信號(hào)幅度不可太大,以免損毀芯片,我開始用一個(gè)51單片機(jī)的震蕩信號(hào)接過(guò)來(lái),結(jié)果不行,可能是驅(qū)動(dòng)能力不夠。后來(lái)?yè)Q了一個(gè)信號(hào)發(fā)生器輸出的1MHz的信號(hào),就成功了。也可以用NE555芯片搭個(gè)振蕩器做信號(hào)源。







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1