www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probs Mega16 und Reset


Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Led raus, immernoch das gleiche. Ob ISP dran oder nicht, immer das
gleiche. Stromversorgung ist extern.

Mfg Sascha

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was bezeichnest Du denn als "reseten"? Den Reset-Pin per Taster auf
GND schalten oder die Stromversorgung unterbrechen?

Gruß, Frank

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

den Reset-Pin auf GND schalten.

Mfg Sascha

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter

Aber eine Standardbeschaltung des Restpinns kann ja nicht
so ganz verkehrt sein.

Gruß,
Arno

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm,

dann bleibt wohl nur noch das LED-blink-Programmchen
zum testen ob es damit geht.

Gruß,
Arno

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nene, hab den Port geändert (statt PortB PortC). JTAG ist abgeschaltet.
Im Source und auch im makefile ausschließlich Mega16.

Mfg Sascha

Autor: Conlost (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann muß ich passen. :-(

Gruß,
Arno

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich wohl auch :-(

Trotzdem Danke

Mfg Sascha

Autor: Peter Z. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.
....????

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Sascha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Timing noch ein bischen geändert und nun gehts.

Mfg Sascha

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.