Hallo, bin gerade am verzweifeln.Habe einen ATMEGA8 und einen ATMEGA162 miteinander verbunden.MEGA8-TX an MEGA162-RX0 der Mega8 sendet alle 2 sekunden mit der selben Baudrate ( 19200 ) ein "h".Funktioniert, habe das "h" schon gesehn*g Der Mega162 soll es auf RX0 empfangen und an TX1 ausgeben.Wenn die Controller nicht verbunden sind, dann reagiert der MEGA162 auch noch(Taster,LED o.ä) sobald diese verbunden werden nicht mehr.(Haben beide das selben Massepotenzial). Er scheint also irgendwas zu bekommen, aber es wird nichts auf TX1 ausgeben. Weiß so langsam keinen Rat mehr. Interrupt Recive Routine verkehrt ? Da ich beim Compillieren folgende Warnung bekomme : main.c:49: warning: `SIG_UART0_RECV' appears to be a misspelled signal handler Danke im vorraus ! Prog ist im Anhang. Gruß Thorsten
Gast
#315412
Hast du mal einen Blick in die LIB-C geworfen, wie der Handler heissen soll/müsste/könnte?
Gast
#315413
kann es sein, dass der ATMEGA162 schon eine USART schnittstelle hat, und du aber im SIGNAL SIG_UART0_RECV eingeben hast? SIG_USART0_RECV ist das wahrscheinlich das richtige
Gast
#315414
So wie es scheint, hast du den Namen für die ISR falsch geschrieben => der Interrupt kann also nicht korrekt abgearbeitet und insbesondere nicht korrekt beendet werden => das Programm wird einfach an der Stelle im Flash weitergeführt, die nach dem Interruptvektor kommt. Keine Ahnung, wie sich dies auswirkt ;-) (Möglicherweise täusche ich mich, und es ist bereits in der C-Bibliothek ein sicherer Rücksprung für die ISRs implementiert.)
*AHHHHHHHH Es was das "s" !!! Habe in der Lib sogar nachgesehen aber vor lauter Buchstaben den unterschied UART und USART nicht gesehen ! Ach könnt in die Tischkante beißen, da ich seit heute mrgen daran gesucht habe! Naja egal jetzt weiß ich bescheid. Warnung im Compiler ist auch weg. Sollte vielleicht mal die Warnungen lesen und nicht nur die Errors*g Danke es funktioniert mit dem "USART" Gruß Thorsten P.S. Was ist der Unterschied zwischen UART und USART ?
Gast
#315416
"Was ist der Unterschied zwischen UART und USART ?" Ein 'S' ...für "synchronous" Der USART kann mehr...
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.