Re: RS232 fehler durch die Funktion Serial_Init Kategorie: Programmierung C (von Henner - 6.05.2006 9:06) | ||
Als Antwort auf Re: RS232 fehler durch die Funktion Serial_Init von FrankT - 5.05.2006 22:37 | ||
| ||
Hallo Frank, danke für den Tip; es fuxt. Aber es ist doch schade und scheint ein echter BUG im Interpreter zu sein. ich habe extra einen MAX3232 für die RS232 eingebaut, um die �bertragung zu züchten und dann darf man gar nicht ... Angeregt durch Deinen Tip habe ich mal die ganzen divider der seriellen Schnittstelle aus- probiert. Die stimmen alle nicht bis auf den für 38400 B. Der nächste ist 279 (könnte 4800B sein); 535 (könnte 2400B sein) dann kommt 791 (sind wir locker bei 1200B) und 1000 funktioniert auch; da sind wir im sub-Sekundenbereich. Wirklich schade, aber vielleicht gibts demnächst ein geiles Update. Die Geschichte mit der Rückkehr probiere ich jetzt aus und unterrichte über das Ergebnis. Aber noch ein Problemchen: Ich habe versucht mit dem Timer 1 eine Systemzeit zu implementieren (1ms). Mit der Verwendung der Interruptquittung funktioniert das auch, d.h. überfahrene Interrupts werden gezählt, so dass man später die Zeit richtig stellen kann. Nur, die Zeit stimmt eben nicht! Ich habe also durch den Timer 0 40KHz erzeugt (T=25µs) und Timer 1 zum Zähler vergewaltigt und, blubs, es geht. Mir scheint, da ackern noch eine ganze Menge Intr. im Hintergrund und kein Sch.. hat das dokumentiert. Da kannste suchen wie Schneewitchen, Hi! viele Grü�e Hendrik > > Hallo liebe Mega32-family, > > ich habe eine kleine Application mit der Mega32 aufgebaut und verwende die RS232 zum Upload und > > zum Schnorcheln der Messwerte, die das Gerät liefern soll. Das Upload des Programmes erfolgt reibungslos. > > Ohne die "Serial_Init" Funktion liefert das Gerät nach dem Programmstart durch die IDE auch einwandfreie > > Daten. Beim Neustart, allerdings, schweigt die Serielle Schnittstelle dann (auch Hardwaremä�ig- > > TxD zappelt nicht mehr). > > > > Verwende ich dann, wie es eigentlich richtig sein sollte, die Initialisierungsroutine, dann kommt nur Datenmüll > > an. Aber, nach dem Neustart zappelt die Schnittstelle von alleine wieder. > > Systemvoraussetzungen: 57600Boud, 8Bit, 1Stop, NoParity. > > Anbei der interessierende Programmteil, "Serial_Init" ist hier in der Kommentarzeile, damit ich überhaupt > > weiter machen kann. > Ich hatte mit der Mega128 ein ähnliches Problem, das war aber weg, als ich im Programm > die gleiche serielle Einstellung wie der Bootloader sie verwendet genutzt habe (38400 8N1). > > > > Noch eine Frage: Wie kann ich durch Abfrage von SW1 (bei mir wie auf dem Applicationboard aufgebaut) > > aus dem Programm heraus in den Bootmodus zurück ohne ein hartes Reset zu machen? > Einfach das Programm beenden lassen. Dann landet er wieder im Bootloader (zumindest bei der Mega128). > | ||
Antwort schreiben Antworten: Re: RS232 fehler durch die Funktion Serial_Init (von FrankT - 6.05.2006 11:01) Re: RS232 fehler durch die Funktion Serial_Init (von PeterS - 6.05.2006 12:01) Re: RS232 fehler durch die Funktion Serial_Init (von FrankT - 6.05.2006 11:09) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum