F16_diskreset erzeugt ein systemreset?

Lschreyer
Schreiberling
Avatar
Geschlecht: keine Angabe
Beiträge: 527
Dabei seit: 02 / 2007
Betreff:

F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 20.06.2010 - 16:46 Uhr  ·  #1
Wenn ich F16_diskreset aufrufe startet das ganze System neu, woran könnte das liegen?
SD-Card ist ok, f16_diskinit liefert TRUE, F16_checkdisk auch.

Louis
Gunter
Administrator
Avatar
Geschlecht:
Herkunft: Frankfurt Main / Germany
Beiträge: 1697
Dabei seit: 02 / 2003
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 20.06.2010 - 18:11 Uhr  ·  #2
Hallo Louis,

meist ist der Grund für ein solches Verhalten ein Stack/Frame Überlauf.
Experimentiere mal in dieser Richtung!

Gruß
Gunter
Lschreyer
Schreiberling
Avatar
Geschlecht: keine Angabe
Beiträge: 527
Dabei seit: 02 / 2007
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 22.06.2010 - 19:19 Uhr  ·  #3
Tja, nichts zu machen. Sogar ein Frame von $0400 hilft nicht.
Sobald ich F16_diskreset aufrufe startet alles neu.
Karte ist ok, angeschlossen ist sie auch normal.
SPI-Mode ist 3.


EDIT:
Ich habs gerade gefunden...

Das hier erzeugt einen Reset:
writeln(serout, 'Diskreset='+booltostr(f16_diskreset));

Wenn ich nur f16_diskreset ausführe gibts keinen Reset und alles geht.
...Cool, wieder ein paar Stunden für die Katz'

Louis
Gunter
Administrator
Avatar
Geschlecht:
Herkunft: Frankfurt Main / Germany
Beiträge: 1697
Dabei seit: 02 / 2003
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 22.06.2010 - 19:32 Uhr  ·  #4
WDT eingeschaltet?
Lschreyer
Schreiberling
Avatar
Geschlecht: keine Angabe
Beiträge: 527
Dabei seit: 02 / 2007
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 23.06.2010 - 08:02 Uhr  ·  #5
Nein, der WDT ist aus. Nur wenn ich die Funktion innerhalb von Booltostr aufrufe gibts einen Reset.

Louis
Thomas.AC
Benutzer
Avatar
Geschlecht: keine Angabe
Alter: 44
Beiträge: 308
Dabei seit: 07 / 2013
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 21.01.2017 - 13:27 Uhr  ·  #6
Hallo,

ist das Problem mittlerweile erkannt und behoben?
rh
Administrator
Avatar
Geschlecht:
Herkunft: Germany
Alter: 26
Homepage: e-lab.de
Beiträge: 5558
Dabei seit: 03 / 2002
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 23.01.2017 - 15:13 Uhr  ·  #7
Hallo,

geht nicht, tut nicht...
Das hilft nicht weiter. Ein kleines Beispiel wo der Fehler auftritt, bitte.
Ohne geht nix.
Mehrere Tausend Programmer nutzen Diskreset und es tut...

rolf
miparo
Schreiberling
Avatar
Geschlecht:
Herkunft: Germany
Alter: 59
Beiträge: 989
Dabei seit: 09 / 2007
Betreff:

Re: F16_diskreset erzeugt ein systemreset?

 · 
Gepostet: 23.01.2017 - 18:34 Uhr  ·  #8
Hi Louis,
allein die Schreibweise ist schon unvorteilhaft.
Es liegt nicht am Diskreset sondern am Aufruf vom Writeln.
Der AVRco ist halt kein Delphi. Mit dem Writeln Aufruf und gleichzeitig Strings verketten + Proc call ist vorsicht geboten.
Code

  writeln(serout, 'Diskreset='+booltostr(f16_diskreset));  //  Stringverarbeitung im Write(ln) kostet ..

besser ist es so:

Code

ret :=  f16_diskreset;
Writeln(Serout, 'Diskreset='+booltostr(ret));

Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.
MySQL Queries: 15 · Cache Hits: 14   133   147 · Page-Gen-Time: 0.036101s · Speichernutzung: 2 MB · GZIP: ein · Viewport: SMXL-HiDPI