DIYLAB
27.05.2006, 08:55
Moin Ihr da draußen,
ich habe ein EEPROM Problem und weiß nicht warum..
Es geht um einfache Fahrtregler für den Modellbau.
Benutzt wird ein Tiny13, der über einen Jumper programmiert werden kann. Der Jumper geht einmal an einen beliebigen Pin des Controllers und verbindet den Pin mit Masse wenn der Jumper gesteckt ist.
Der Pin ist als EIngang geschaltet, mit aktiviertem Pull-up Widerstand.
Ist der Jumper offen und der Controller erkennt beim Programmstart ein HIGH, dann geht der Regler in den Programmiermodus.
In Diesem wird die Nullpunkt- und Vollgasstellung gelernt und im EEPROM des Controllers abgelegt.
Ist der Jumper beim Programmstart gesteckt und der Controller erkennt ein LOW, dann ist er im normalen Betriebsmodus und holt sich die beiden Werte aus dem EEPROM.
Soweit zur Funktion, die auch reproduzierbar zu Hause immer funktioniert. Leider haben mittlerweile bereits 4 User das Problem, dass der Controller die Werte im EEPROM verliert!
Ich kann mir das schlecht erklären, darum meine Bitte an Euch - welche Möglichkeiten gibt es, dass ein MC seinen EEPROM einfach so löscht?
Noch ein paar Infos..
- Der Reset-Pin des Tiny13 ist in diesem Fall komplett abgeschaltet nach dem Programmieren und hat keine weitere Außenbeschaltung.
- Brownout ist ON bei 4V
- Watchdog läuft
- Die beiden Werte werden NICHT in die ersten Speicherzellen des EEPROM geschrieben, sondern in die Mitte des EEPROM.
Kann mir Jemand ein paar Denkanstöße liefern, warum sich das EEPROM löscht?
Viele Grüße,
Bruno
ich habe ein EEPROM Problem und weiß nicht warum..
Es geht um einfache Fahrtregler für den Modellbau.
Benutzt wird ein Tiny13, der über einen Jumper programmiert werden kann. Der Jumper geht einmal an einen beliebigen Pin des Controllers und verbindet den Pin mit Masse wenn der Jumper gesteckt ist.
Der Pin ist als EIngang geschaltet, mit aktiviertem Pull-up Widerstand.
Ist der Jumper offen und der Controller erkennt beim Programmstart ein HIGH, dann geht der Regler in den Programmiermodus.
In Diesem wird die Nullpunkt- und Vollgasstellung gelernt und im EEPROM des Controllers abgelegt.
Ist der Jumper beim Programmstart gesteckt und der Controller erkennt ein LOW, dann ist er im normalen Betriebsmodus und holt sich die beiden Werte aus dem EEPROM.
Soweit zur Funktion, die auch reproduzierbar zu Hause immer funktioniert. Leider haben mittlerweile bereits 4 User das Problem, dass der Controller die Werte im EEPROM verliert!
Ich kann mir das schlecht erklären, darum meine Bitte an Euch - welche Möglichkeiten gibt es, dass ein MC seinen EEPROM einfach so löscht?
Noch ein paar Infos..
- Der Reset-Pin des Tiny13 ist in diesem Fall komplett abgeschaltet nach dem Programmieren und hat keine weitere Außenbeschaltung.
- Brownout ist ON bei 4V
- Watchdog läuft
- Die beiden Werte werden NICHT in die ersten Speicherzellen des EEPROM geschrieben, sondern in die Mitte des EEPROM.
Kann mir Jemand ein paar Denkanstöße liefern, warum sich das EEPROM löscht?
Viele Grüße,
Bruno