AVR微控制器熔絲和解鎖
AVR微控制器的熔絲位配置是AVR微控制器初學者很容易出錯的地方,其實只要注意一些事項,還是能夠儘量避免微控制器被鎖死,即使微控制器被鎖死,也可以使用一些方法解鎖,本文講述我在剛開始接觸AVR微控制器時熔絲位配置出現的一些問題。
1、AVR微控制器的熔絲位是比較獨到的特徵,可以控制系統的時鐘,JTAG除錯、看門狗、晶片加密等等。圖1是progisp軟體,對於初學者來說,對熔絲位不熟悉,可以先將2處的程式設計熔絲對勾去掉,這樣在程式設計的時候,就不會對熔絲位進行程式設計,微控制器出廠的預設設定就可以使用。點選1處進入熔絲位配置介面。
圖1
圖2為位配置方式,這裡的每一位都不能隨意點選,尤其是熔絲低位控制時鐘的地方,一般來說,直接對位進行配置並不安全,一定要確定是自己想要的熔絲配置才可以,如果不小心動了其中的熔絲位,可以通過讀出或者預設,恢復熔絲配置,這樣下載程式之後,比較安全。
圖2 位配置方式
圖3是嚮導方式,這裡面有文字說明,打對勾就是選擇,比如使能JTAG介面,使能ISP程式設計等,建議不要動這兩個,如果同時關閉了ISP程式設計和JTAG介面,將不能下載程式。最值得主要的地方是時鐘的配置,圖4,剛買來的開發板,一般佩帶了晶振,這個時候不要隨便動時鐘的選擇,如果板子上有外部晶振,而你卻選擇了內部RC振盪器,這樣會直接鎖死微控制器,同理,如果選擇了外部晶振,但外部卻沒有安裝晶振,也會鎖死微控制器。因此,配置時鐘時一定確定好,時鐘方式。
圖3 嚮導方式
圖4 時鐘
在確定好熔絲位配置之後,就可以下載程式了,在除錯程式的時候可能會多次下載程式,第一次熔絲配置正確後,就可以將熔絲程式設計去掉,以防萬一。
2、微控制器鎖死之後解鎖方法
微控制器鎖死之後,一般可以有幾種方法來解鎖,
第一種,高壓程式設計器,這裡你需要購買高壓並行程式設計器,一般初學者不會有這個東西。
第二種,如果之前玩過51微控制器或者周圍有朋友有51微控制器的話,可以使用51微控制器來解鎖,給51微控制器供電,使其工作,將51微控制器的ALE引腳引出,插在AVR微控制器晶振的 XTAL1腳,在progisp軟體下點選自動,這時就會解鎖AVR微控制器,之後再配置正確的熔絲位就可以了(這個方法試驗成功)。
第三種,使用有源晶振,如果手邊有有源晶振的話,這是最方便的解鎖方法了,圖5,小圓點在下,按照圖示接線,將OUT連線到XTAL1,在progisp下程式設計,可以直接解鎖。(試驗成功)
圖5 有源晶振
此外,還可以通過示波器產生1M以上方波,通過其他微控制器產生方波,這些方法還沒有嘗試。
圖6
補充:選擇晶片時一定要正確,否則會出現ID識別錯誤,如果出現這樣的情況,千萬不要選是,要選否,然後檢查晶片的訊號和線路連線。