Hallo,
auf 5V liegt der ja standardmässig sowieso, also ist da nur zu erwarten das der ohne erkennbares Zeichen so weiter macht
Moin.
Um bei nem AVR den Reset auszulösen, muss man ja den Reset-Pin kurz auf Masse legen. Wie würde ein AVR theoretisch reagieren, wenn man stattdessen +5V anlegt?
Anscheinend hab ich das heut mal geschafft; mich würd jetzt interessieren, ob da dann Schäden zu erwarten sind bzw. ob dies etwas damit zu tun hat, dass der AVR nach dem einschalten ca. 1-2 Minuten fehlerfrei läuft und dann nur noch Mist macht.
MfG
S.C
Hallo,
auf 5V liegt der ja standardmässig sowieso, also ist da nur zu erwarten das der ohne erkennbares Zeichen so weiter macht
@Jaecko
Wenn du schreibst der Reset-Pin war mal kurzfristig mit 5V verbunden, hast du ihn offensichtlich nicht immer mit 5 Volt verbunden: Das dürfte schon eher die Ursache dafür sein, dass dein Controller Mist macht.ob dies etwas damit zu tun hat, dass der AVR nach dem einschalten ca. 1-2 Minuten fehlerfrei läuft und dann nur noch Mist macht.
Wenn der Reset-Pin nicht auf 5V liegt, liegt an dem PIN eine "zufällige" Spannung an und dein Controller macht vermutlich öfter mal nen Reset als dir lieb ist.
Ok... *g* hätt ich eigentlich auch wissen müssen. Dachte nur irgendwie, dass der Pin intern schon auf 5V gezogen wird. Aber kaum hab ichs von "aussen" noch gemacht, läuft der AVR.
Passiert mir aber irgendwie öfter, dass ich das beschalten einzelner Eingänge vergesse und mich dann wunder, dass hinten nur Grütze rauskommt.
das wird er auch, allerdings über eine Widerstand von etwa 80 Kiloohm. Das kann in Schaltungen mit großem Störpegel schon zu wenig sein. Am besten den Pin über nen Widerstand von eingen Kiloohm an 5V anschließen.Zitat von Jaecko
Also ich hab jetzt nen 4,7k zwischen 5V und Reset; der AVR läuft zwar jetzt jedes Mal sicher an, macht aber trotzdem nur so 1-3 min das, was er soll.
(LED im Sekundentakt ein/ausschalten sowie Laufzeit per USB ausgeben).
Nach 1-3 min hört die Ausgabe auf und die LED bleibt entweder wo sie ist oder blinkt/blitzt unkontrolliert.
An sich ist das Programm nur eine leere Do-Loop-Schleife und ein Unterprogramm, dass eben vom Timer aufgerufen wird. Softwarefehler isses also auch nicht.
Servus,
Das kann aber nur ein Programmierer über sein eigenes Programm behauptenZitat von Jaecko
Dürfen wir das mal anschauen, hört sich nach Interrupt usw. an ?
naja, habs mir lang angesehen und keinen Fehler gefunden...
Code:$prog , 255 , &B11011001 , $regfile = "m2560def.dat" $hwstack = 82 $framesize = 68 $swstack = 68 $crystal = 16000000 Config Pind.5 = Output Led Alias Portd.5 Config Com4 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0 Config Timer1 = Timer , Prescale = 1024 On Timer1 Isrtimer1 Enable Interrupts Enable Timer1 Timer1 = 49910 Open "com4:" For Binary As #4 Dim Thour As Integer Dim Tmin As Integer Dim Tsec As Integer Dim Tday As Integer Do Loop Isrtimer1: Timer1 = 49910 Toggle Led Tsec = Tsec + 1 If Tsec = 60 Then Tsec = 0 Tmin = Tmin + 1 End If If Tmin = 60 Then Tmin = 0 Thour = Thour + 1 End If If Thour = 24 Then Thour = 0 Tday = Tday + 1 End If 'Print "RT: " ; Thour ; ":" ; Tmin ; ":" ; Tsec Print #4 , "RT: " ; Thour ; ":" ; Tmin ; ":" ; Tsec Return End
Ja, scheint da ist doch noch ein Hardwareproblem, ich hab das jetzt zwar auf einem T2313 probiert, der bekanntlich deutlich weniger SRAM als der M2560 hat, aber es läuft schon 30Min.
Jetzt wären doch noch ein paar Details zur Hardware nötig, welche Stromversorgung, und was hängt da sonst noch dran,
welches Board, Layout, evtl. Schaltplan, usw. ?
Also vom Layout her ist es jetzt nur ein "Experimentalaufbau", d.h. die AVR-Platine (Fertigmodul ATMega2560 von Robotikhardware) steckt auf einem Stück Lochrasterplatine, die Anschlussklemmen liegen auf Platinenresten und sind per Kabel an die "Hauptplatine" angeschlossen.(erst mal rumtesten bevor ich da ne "richtige" Platine mach bzw. machen lass)
Bild hier
Als Stromversorgung dient ein AT-Netzteil; an den Anschlussklemmen der Stromversorgung (links) liegt zwischen 5V und Reset der 4,7K-Widerstand. Vom AVR-Board werden alle VCC-Pins mit 5V versorgt, ebenso alle GND mit Masse. AREF liegt auf 5V.
Die per Kabel rausgeführten Ports A und B (rechts im Bild) sind "leer", also nichts angeschlossen; aber die werden ja in der Software eh noch nicht angeschaut. (Die restlichen Ports kommen, wenn der Controller mal soweit mind. 24h durchläuft)
Lesezeichen