Die Brown-Out-Falle

AVR-Mikrocontroller


Manchmal entwickle ich AVR-Firmware für Mess- und Steuergeräte einer befreundeten Firma. Die Hardware sehe ich meist gar nicht, alles geht per Email und Telefon. Ich entwickle meist auf dem STK500, vor Ort wird es dann in der Zielhardware getestet. Natürlich funktioniert nicht immer alles sofort. Dann kommt regelmäßig die Frage auf: Liegt es an der Software, oder liegt es an der Hardware. Aber jetzt ist ein Fall aufgetreten, da lag das Problem genau dazwischen: In den Fuses!

 

 
Das Problem war, dass der Brownout-Detektor eines ATmega8 zwar auf 2,7 V eingestellt, aber nicht eingeschaltet worden war. BODEN braucht ein Häkchen. Das Problem ist durch ein Update der STK-500-Software entstanden. In der alten Version sah es nämlich noch anders aus. Da gab es ein Häkchen, wenn man den Brownout-Detektor ausschalten wollte.

 

Was kann im schlimmsten Fall passieren, wenn BODEN nicht eingeschaltet ist? Bei langsam ansteigender Betriebsspannung startet dann der Controller schon früh, aber es funktioniert noch nicht alles perfekt. Z.B. kann es Probleme mit dem Lesen des internen EEPROM geben, d.h. ein Byte kann falsch gelesen werden. Verschiedene aktuelle Brenner und alle AVR-Controller bekommt man übrigens bei www.de.farnell.com.


zurück