-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: EasyRadio Transceiver Funkmodul Probleme

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2005
    Beiträge
    17

    EasyRadio Transceiver Funkmodul Probleme

    Anzeige

    Hallo!
    Habe mir die Easy Radio Transceiver Funkmodule besorgt,
    das problem ist wenn ich von Atmega128 zu PC ein zeichen über Funk schicke, empfange ich nicht dasselbe zeichen am Hyperterminal des PCs.
    Obwohl es über Serielles Kabel von Atmega128 zu terminal von PC einwandfrei funktioniert.
    Hat jemand Erfahrung mit den Funkmodulen, woran könnte es liegen.
    Brauche dringend Ratschläge,denn ich weis nicht mehr weiter.

    Danke!

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.10.2004
    Beiträge
    107
    hast du vieleicht einen logikdreher aus 1 wird 0 und umgekehrt?
    gruß
    stageliner

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2005
    Beiträge
    17
    so weit ich weis nicht.
    laut Datenblatt des Funkmoduls (unter www.wirelessworldag.com.) steht auf Seite 8 folgendes:
    Die Daten sind invertiert, d.h. das Start Bit ist ‘logic low’. Die Eingänge sind für den direkten Anschluss an ein Mikrocontroller-UART oder -RS232 Eingang vorgesehen und die Ausgänge via RS232 Pegelwandler wie z.B. Maxim MAX232, welcher die Logik des RS232 Signals invertiert.

    Habe auch probiert das Zeichen invertiert zu schicken, aber ohne erfolg.
    z.b.: wenn ich ein Ascii zeichen 'g' über den AVR schicke , bekomme ich am PC ein Ascii Zeichen 'L'.
    Ich finde da keine zusammenhang zu den beiden zeichen(das eventuell ein bit dazu addiert oder LSB und MSB vertauscht, habe keine Ahnung)

    gruß
    malius

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.11.2003
    Ort
    Freiburg im Breisgau
    Alter
    29
    Beiträge
    2.624
    Hallo malius!
    Könnte es sein, dass Du die Sendefrequenz oder Baudrate zu hochgestellt hast!?
    Oder hast Du zu schnell die Daten in das Funkmodul gestopft ohne, dass es vernünftig senden konnte!?

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    07.07.2004
    Beiträge
    95
    Also Du hast wirklich nur einen max232 in Deiner Schaltung? (Microcontroller->EasyRadio Sender->EasyRadio Empfänger->Max232->PC)
    So wäre es denke ich richtig.
    'g' entspricht: "01100111"
    wenn ein invertierungsfehler vorliegt folgt also
    "10011000"
    Jetzt mutmaße ich einfach mal ohne mir genauere Gedanken gemacht zu haben, dass durch den Invertierungsfehler auch das Startbit falsch interbretiert wird und sich dadurch eine Null davorschummelt:
    "010011000" die hintere Null fällt runter und wir sind bei 'L'

    Man bräuchte noch ein zwei Beispiele oder die Schaltung ums im einzelnen nachzuvollziehen.

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2005
    Beiträge
    17
    Hallo Forian!
    Sendefrequenz kann ich nur eine verwenden die andere ist für den amerikanischen Raum. Und die Baudrate habe ich auf 4800 gestellt (aufgrund meiner späteren Anwendung).
    Die Daten werden ja sofort von PC übers terminal abgeholt, glaube ich nicht das es zu einen Pufferüberlauf kommt.

    MFG
    malius

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2005
    Beiträge
    17
    Hallo LoD,
    Ich habe die Schaltung genauso aufgebaut wie du es beschrieben hast.
    das mit denm invertierungsfehler werde ich mal mit ein paar weiter zeichen durchchecken.

    Aber mir ist nochwas in den sinn gekommen:
    Der ATmega128 arbeitet ja mit einer "glatten" Frequenz von 16 Mhz.da es ja üblicherweise eine kleine oder auch größere Abweichung gibt, abhängig von Taktfrequenz, Baudrate und Registereinstellungen,beträgt die Baudrate nie genau den gewünschten Wert.
    Um die Baudrate genau zu bekommen, benötigt man einen "krummen" Quarz, z.B. 14,745 MHz.
    Durch die Abweichungen können die ausgegebenen Werte des AVR vom
    ER800TRS falsch interpretiert werden.

    ist das möglich, und wie checke ich die Quarzfrequenz ab.

    MfG
    malius

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    Hi!

    Mir sieht das doch sehr nach dem beschriebenen Invertierungsfehler aus.
    hast du irgendeinen komischen Verstärker oder so in der Txd oder RxD-Leitung?
    Mormalerweise liefert der AVR ein picobello RS232-Signal!
    Hast du deine Invertierungsroutinen wieder herausgenommen?

    Die RS232-Signale sind TRUE = LOW also negativlogik. Der Easyradio akzeptiert dies ohne weiteres.

    Am 16MHz-Quarz kanns nciht liegen, der erzeugt meines Wissens nicht mal 1% Fehler!
    Die Reelle Baudrate bei 16MHz und 9600Baud beträgt 9615Baud, das ist nichtmal 1%.
    Bei 4800 Baud Ist das 4808 Baud bei 16Mhz, was wiederum unter der 1%Marke liegt.

    Das Tool von Roland walter zeigt 0% an!!

    Liebe Grüße,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    08.02.2005
    Beiträge
    17
    Hallo Tobi!
    Ich habe mal noch ein paar andere Zeichen durchgecheckt und siehe da tatsächlich das zeichen wird invertiert.
    Also kann es nur mehr an den max232 liegen oder das Modul hat selber einen tasch.

    werde mal mit einen anderen max232 probieren.

    schöne Grüße,
    malius

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    Hi!

    Normalerweise invertiert der MAX232 die Signale nicht!!

    Kannst du das auf einem Oszilloskop anschauen?

    Liebe Grüße,
    Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •