AVR筆記8:mega16再次鎖死
【轉(zhuǎn)載】馬潮老師
AVR芯片鎖死的解救是有條件的:
1.首先芯片本身沒(méi)有壞(多余了)
2.如果RESET引腳被禁止作為I/O用了(如M48,M8等),那么通過(guò)通常的串行編程方式是不能解救的(這類芯片通常沒(méi)有JTAG口).
3.如果SPI和JTAG都被禁止了,那么通過(guò)通常的串行編程方式是不能解救的.
4.2、3情況只能通過(guò)高壓串行或高壓并行方式解救,當(dāng)然,通常就要把芯片從板上取下了。
我所講的“解救”,主要是由于時(shí)鐘熔絲配置錯(cuò)誤造成的鎖死,但SPI或JTAG是允許的。這種情況通常發(fā)生在系統(tǒng)設(shè)計(jì)使用內(nèi)部RC振蕩源的情況下,這時(shí)X1、X2為空腳,或作為I/O使用。但下載程序時(shí)出現(xiàn)問(wèn)題,或熔絲配置錯(cuò)誤,選擇了非內(nèi)部RC振蕩源。由于此時(shí)AVR無(wú)系統(tǒng)時(shí)鐘源,表現(xiàn)為鎖死。
錯(cuò)誤的出現(xiàn)可能為:
1。配置錯(cuò)誤,這是人為的。
2。下載程序過(guò)程中,突然斷電;下載接頭接觸不良;下載器本身不穩(wěn)定。
3。錯(cuò)誤的使用下載功能,如CVAVR中下載功能中的ALL(當(dāng)熔絲位沒(méi)有正確選擇)。有些下載軟件的功能不是非常完善,如使用CVAVR中下載功能的ALL項(xiàng),不先讀一次熔絲位就使用肯定出問(wèn)題(通常會(huì)將SPI也禁止了)因?yàn)槌跏蓟娜劢z配置都不打勾。另外還有使用SPI下載,但還能讓用戶配置SPIEN等,也是不完善的。
如果僅僅是系統(tǒng)熔絲配置錯(cuò)誤,那么可以通過(guò)嘗試在芯片的晶體引腳上臨時(shí)人為的疊加上不同類型的振蕩時(shí)鐘信號(hào)進(jìn)行解救。如將一個(gè)5v/1M的脈沖波加在X1上(地當(dāng)然要連通了),或用2個(gè)電容和一個(gè)晶體臨時(shí)搭個(gè)外部電路加在X1、X2上。如果板上AVR的X1、X2沒(méi)有使用還是比較方便的,如果X1、X2已經(jīng)作為I/O使用連接了其它外部器件的話,就可能也行不通。因?yàn)橥獠窟B接的器件可能會(huì)影響疊加上的時(shí)鐘信號(hào)的。
另外,疊加上的時(shí)鐘信號(hào)頻率不要太高,1M左右比較合適,因?yàn)橥ǔ/B加時(shí)引線比較長(zhǎng),頻率高的話,振蕩信號(hào)不穩(wěn)定了。還必須注意將ISP下載的頻率降低,因?yàn)锳VR規(guī)定,ISP下載頻率必須是系統(tǒng)時(shí)鐘的1/2以下。因此,疊加1M的話,ISP的頻率不能大于500K。
評(píng)論