Hi,
ich habe 2 Atmega 1284P 16Mhz verbaut, mit folgenden Problemen:

1. Atmega: stürzt hin und wieder ab
2. Atmega: stürzt nie ab. Misst unter anderem die Akkuzellen über Spannungsteiler, nur stimmt die Spannung nicht sobald eine Ladespannung anliegt. Atmega ist misst dagegen gleichzeitig und Fehlerfrei.

Stromversorgung:
12-16V Akku -> 470µF C -> 2.5A Schottky Diode -> 1000µF C -> 2A 5V Step Down -> 4.7µF C -> Mikrokontroller + andere Sensoren
Reset Pin mit 10kO Pullup
100nF Kerko an jedem VCC Pin
Werden damit Störungen durch die Motoren (beim Abschalten induzierte Spannung) ausreichend gefiltert?


Atmega 1:
Vermutung: es kommt etwas über die Motoransteuerung herein.
Motoren werden mit dieser Schaltung gesteuert: http://www.mikrocontroller.net/artic..._Mosfettreiber (ist eine eigene Platine, verbunden über 20cm Kabel)
Richtungsänderung über 12V Relais, natürlich mit antiparaller Schutzdiode. Motoren sind angeblich vorentstört, haben einen zusaätzlichen 100nF Kerko zwischen den Anschlüssen.

Die Enable Pins und Relais Pins sind über 1kO Serie und 10kO Pulldown geschalten, die PWM geht allerdings direkt auf den Mosfettreiber. Soll man hier auch Widerstände vorsehen?

Was kann man noch vorsehen um EMV zu verbessern?

Atmega 2:
Dieser ist gleich angeschlossen, auf der gleiche Lochrasterplatine, verbunden über I2C, nur mit anderen Aufgaben. Unter anderem soll der Akku überwacht werden.
ADC geht auf interne 5V Referenz, keine Beschaltung mit Spule für AVCC.
Wenn man jetzt den Akku auflädt, misst dieser höhere Spannungen als am Akku anliegen. Die 5V Spannung bleibt konstant, habe ich nachgemessen. Atmega 1 misst korrekt bei gleicher Beschaltung, aber nur Gesamtspannung, nicht die Einzelzellen.
Einziger Unterschied: Spannungsteiler für die einzelnen Akkuzellen ist sehr hochohmig, 100k. Beim Atmega 1 liegt der Spannungsteiler bei 10kO. Wollte verhindern dass der Spannungsteiler den Akku leer saugt.
Mit einer Genauigkeit von 0.1V könnte ich leben, aber da geht es um 0.5V/Zelle Unterschied zu Atmega 1.
Noch etwas: die Einzelspannungen werden über ein Relais geschalten, da ansonsten der Atmega über die ADC Pins versorgt wird.
Die Leerlaufspannungen kann ich mit etwas Kalibrierung gut einstellen, aber unter Last oder beim Aufladen kommen unrealistische Werte raus, wie etwa unter Last eine höhere Zellenspannung als Ladeentspannung. Oder Mindestspannung während einer Fahrt von 9V, während Atmega1 auf realistische 12V kommt. Ohne Last hat der Akku nach der Fahrt typischerweise 13V. Der Akku wäre mit 50A belastbar, aber nachdem die 10A Sicherung hält ist der Akku nie voll belastet und damit sind die 9V falsch.

Suche einfach Tipps was man alles verbessern könnte, mir ist klar das Lochraster nie perfekt sein kann, noch dazu wurde schon x-Mal was verändert. Aber vielleicht habe ich einfach etwas Grundlegendes übersehen.

LG!