Hallo,
habe folgendes Problem. Wenn ich den Mega16 resete, startet meine
Aplikation nicht richtig. Erst nach 2-3 mal reseten. Habe den Reset-Pin
wie folgt beschaltet: +5V - 680R - Led - 1µF - Reset-Pin Gnd.
Brownout ist eingschaltet. Ext. Clock 16MHz.
Mfg Sascha
tu mal die led raus und schau ob du genug spannung hast.. hatte son prob
mit dem mega128..nachdem ich das teil extern versorgt habe (und nicht
übern isp) gings...
73 de oe6jwf
Und beim Schalten kannst Du auch 0 Volt am Reset-Pin messen? Die Frage
klingt vielleicht doof, aber ein Taster mit korrodierten Kontakten kann
einen weit höheren Widerstand haben, als die 680 Ohm Pullup.
Gruß, Frank
Hi,
klingt nicht doof, Habe schon mal gemessen. Ohne Reset gedrückt=4.96V,
Reset gedrückt=0V. Oder habe ich blödsinn mit den Fusebits gemacht?
Habe unter AVR-Prog Startup:64ms +6CK eingestellt.
Mfg Sascha
Hallo Sascha,
tausche den 680R gegen einen 10K Widerstand und den
1µF gegen 100nF aus, dann müsste es auf jeden Fall gehen.
Wenn nicht, liegt es eventuell an den Fusebits.
Ich hffe du hast irgenswo auf der Platine einen 10µF parallel
zur 5V Versorgung und einen 100nF möglichst nahe an den
Controllerpins +5V/GND.
Gruß,
Arno
Also,
habe je einen 100nF an VCC/GND, AVCC/GND und AREF/GND. Dazu noch 47µF
parallel an VCC/GND. Sollte normalerweise reichen, oder? Beim 8051 habe
ich auch nie mehr gemacht.
Mfg Sascha
Ja das ist OK so.
Nunändere noch die Resetbeschaltung.
Vom Resetpin 10k nach +5V und 100nF nach Masse, ohne LED.
Resttaster Parallel zum 100nF Kondensator.
Gruß,
Arno
Nicht immer gleich die Hardware verdächtigen.
Kann ja auch ein Softwarefehler, z.B. nicht initialisierte Variablen
sein.
Nimm mal ein einfaches Programm (z.B. Blink-LED) als Test.
Peter
@Arno,
wenn Brown-Out und längste Resetzeit gewählt ist, dann muß es in jedem
Fall gehen, auch mit Reset direkt gegen VCC.
Ansonsten schnellstens eine dicken fetten oberkritischen Bugreport an
Atmel.
Peter
So,
Reset ist auch geändert. Immer noch das gleiche. Wollte ein Prg. für
ein Akkulader schreiben. Zur Display-Ansteuerung nutze ich die Libary
von Peter Fleury. Die Delay-Routine habe geändert, da diese von 4MHz
ausgeht. An einem Mega128 lief es wunderbar, bei 16MHz. Nur beim Mega16
nicht. Mehr habe ich in dem Prg. noch nicht reingeschrieben, da ich
erst das Display ausprobieren wollte.
Mfg Sascha
Meine vermutung liegt in lcd libary. Das Programm soll auf der ersten
und zweiten Zeile des Display`s einen Text anzeigen. Manchmal zeigt er
es richtig an. Ansonsten nur die erste Zeile, wobei ich dann noch
anmerken muß das dann der Kontrast etwas anders ist, als wenn er beide
Texte anzeigt. An einem AT89C51AC2 zeigt das Display nicht solche
Phenomäne. Auch an dem Ethernut-Board mit dem Mega128 geht es.
Irgendwie alles für den ar.... sowas
Mfg Sascha
Hast du das Programm für den Mega128 auf den mega16 umgeschrieben
und es steht als device noch Mega128 drin oder sowas in dieser
Richtung?
Wär auch noch eine Möglichkeit.
Gruß,
Arno
Habe das gleiche Problem. Verwende Mega16 bzw 32.
Schalte ich die versorgungsspannung ca. 3s ab initialisiert sich das
Display immer richtig. Wenn ich VCC nur kurz wegnehme habe ich auch das
gleiche Problem mit nur 2 Display Zeilen anstatt 4 mit
unterschiedlichen Kontrast. Gleiches Problem tritt auf wenn ich den
Resettaster länger drücke und dann loslasse. Wenn ich nur kurz den
Resettaster drücke funktionierts einwandfrei.
....????
Hab mal scherzhafterweise zweimal das display hintereinander
initialisiert, und sieh da, nach einem Reset geht es sofort. Ist aber
nicht die feine art und da werd mich wohl noch ein wenig mit den timing
rumärgern müssen.
Mfg Sascha