-         

Ergebnis 1 bis 8 von 8

Thema: Software-UART mit ATmega16 bzw. 32

  1. #1

    Software-UART mit ATmega16 bzw. 32

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo,

    ich erstelle z.Zt. ein Programm für einen ATmega16/ATmega32 unter Verwendung eines STK500 und AVRStudio. Dabei habe ich folgendes Problem:

    Das Programm soll neben der vorhandenen Hardware-UART eine Software-UART verwenden, die nur Daten senden soll. Ich habe mehrere SW-UART-Libs ausprobiert, aber jede dieser Libs liefert am RS232-Port des STK500 nur Datenmüll auf der Tx-Leitung.

    Aktuelle Hardware-Konfiguration:
    - STK500 mit ATmega16 bzw. ATmega32
    - Controller verwendet Takt vom STK500 (3.6864 MHz)

    Ausprobierte Software-UARTs:
    - avr-libc (sowohl uartsw als auch uartsw2)
    - ATMEL Application Note für eine timergesteuerte SW-UART
    - ATMEL Application Note für eine SW-UART ohne Timer

    Die Hardware-UART (uart.c der avr-libc) funktioniert ganz normal, also schließe ich mal aus, dass der Controller einen falschen Takt verwendet.

    Kann mir bitte jemand weiterhelfen ? Ich bin wirklich langsam am Verzweifeln.

    Vielen Dank.

    Tschüss

    Rico

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Vielleicht hilft dir da was drinnen. Es ist SoftUart Inp / Outp
    und eine Muster, das funzt.
    http://www.roboternetz.de/phpBB2/dlo...le&file_id=240
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2004
    Ort
    Karlsruhe
    Beiträge
    223
    die AppNotes sollten eigentlich funktionieren -- musst du da evw. noch ein paar Konstanten anpassen damit du die richtige Frequenz hinkriegst? Oder kannst du mit nem Oszi mal gucken was auf den Leitungen passiert? Das klingt irgendwie alles sehr nach falscher Geschwindigkeit.

  4. #4

    Vielen Dank

    Vielen Dank an alle, die sich gemeldet haben.

    Ich hab's mit der uartsim.c (siehe erste Antwort) hingekriegt, indem ich die Timing-Konstanten für 3.69 MHz neu berechnet und etwas nach oben verschoben habe.

    Bei den anderen SW-UARTS waren es wirklich falsche Timing-Werte, nur bin ich davon ausgegangen, dass die Formeln, mit denen diese Libs die Timing-Werte berechnen, für jede Frequenz und Baudrate unverändert angewendet werden können.

    Tschüss

    Rico

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    Hi, mal ne Frage zu dem uartsim.c :
    Wie mach ich das wenn ich das Ding benutzen will? Muss ich es per include einbinden? Oder Komplett in mein .c-File kopieren? Und was für Einstellungen muss ich vornehmen? Funktioniert das auch auf meinem rnbfra 1.1 mit atmega32 ?

    mfg
    jagdfalke

  6. #6
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Das Uartsim ist auf einer RNBFRA 1.2 entwickelt worden und läuft dort als Tastatur-Echo (eigentlich ja überflüssig, da ja eine HW-Uart im Mega32 drin ost).
    Es ist nur darum gegangen, das mal durchzuziehen.
    Man müßte das Program zu mehreren Library-functions umbauen, eigentlich nix für Frischoperierte und Bettlägrige
    Du brauchst ja eh' nur das Senden ?
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    ja nur das Senden interessiert mich. Gibts denn dann irgendein fertiges Lib oder muss ich das selber machen ?

    BTW: Was bedeutet "Frischoperierte" und "Bettlägrige" ??? Ich bin weder operiert worden noch lieg ich im Bett Was willst du damit sagen ???

  8. #8
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.836
    Das ist halt so'n Ausdruck. Frischoperierte und Bettlägrige sind alles Leute, die geschont werden müssen und keine Aufregung oder Anstrengung vertragen.
    Und da ist so ein Gefummel mit Libraries bauen nicht optimal
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

Berechtigungen

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