- LiFePO4 Speicher Test         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: Baudrate anzeigen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.11.2006
    Ort
    K-Town
    Alter
    46
    Beiträge
    178

    Baudrate anzeigen

    hi,

    kann mir jemand schnell verraten wie ich welchen Register auslesen/auswerten muß um die momentane Baudrate auszulesen und auf dem Display anzuzeigen?

    in meine Quelltext ändere ich diese und nun möchte ich eben wissen welche gerade aktiv ist, bzw. der Anwender eingestellt hat.

    ich verwende einen Mega32

    oder geht das nur wenn ich umständlich bei jeder Baudratenänderung einen Text (String) beschreibe und die dann anzeigen lasse???

    danke schonmal!

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Hi zapo.,
    mal ne blöde Frage: Wenn du die Baudrate einstellst, warum weisst du dann nicht, daß die Register UBRRL und UBRRH die aktuelle Baudrate enthalten?

    Gruß,
    SIGINT

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.11.2006
    Ort
    K-Town
    Alter
    46
    Beiträge
    178
    nun, ich habe mich auch etwas blöde ausgedrückt,

    die beiden Register sind mir wohl bekannt, nur da ich nicht so der VOLLProgrammierer bin und den Befehl in Bascom BAUD = xxx anwende weiß ich eben nicht wie ich an einer beliebigen Stelle des Programms nun das / die Register auslese um zu sehen was gerade eingestellt ist.

    @SIGINT
    ich bin der Meinung: es gibt keine blöden Fragen... nur blöde Antworten! ...(außer meine Frage ganz oben.. die ist etwas doof)

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Doch, meine Frage war blöd
    Ich hätte vorher mal nachschauen sollen, in welchem Unterforum ich Frage:
    Bascom hat ja extra die Baud Variable zum einstellen der Baudrate... da hat man mit den Registern nichts am Hut. Das ist auch ein Grund warum ich eigentlich kein Fan von BASIC bin.
    Also:
    Anscheinend musst du dir die Baudrate aus den Registern zusammenbasteln, da die Variable baud anscheinend nur schreibend genutzt werden kann.
    Ich würde erst UBRRH in einer LONG Variablen speichern, dann 8mal links schieben (oder mal 256 nehmen) und UBRRL dazu addieren. Dann enthält diese Variable den UBRR Wert... bei bekanntem Quarz kannst du die Übertragungsrate mit folgender Formel bestimmen:
    BAUD= fosc/16*(UBRR+1) (steht im Datenblatt)


    Gruß,
    SIGINT

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.11.2006
    Ort
    K-Town
    Alter
    46
    Beiträge
    178
    okay, danke erstmal! werds mal bei Gelgenheit probieren!

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    16.10.2006
    Ort
    Bayern
    Alter
    37
    Beiträge
    313
    Blog-Einträge
    1
    Darf ich mich hier mal gleich anschließen?

    Ich möchte die aktuelle TATSÄCHLICHE Baudrate anzeigen lassen (ähnlich der übertragungsgeschwindigkeit, die in den Browsern bei Downloads angezeigt wird) und zwar Live, also wärend der Übertragung. Kann ich das auch mit oben genannter Formel machen?

    Danke und MFG,
    Lemon

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.04.2005
    Ort
    Aarau
    Alter
    41
    Beiträge
    982
    die übertragungsgeschwindigkeit ist doch immer gleich? da die baudrate ja fix ist...
    entweder wird gesendet oder nicht... und während dem senden ist die übertragungsgeschwindigkeit immer gleich...

    gruss bluesmash

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    @Bluesmash: Genaus das...

    @Lemonsquash:
    Wie Bluesmash schon sagte ist die Übertragungsrate, einmal eingestellt, für die Übertragung konstant. Es macht keinen Sinn diese dynamisch anzupassen, es sei denn man möchte vor der Übertragung die Baudrate automatisch erkennen. Was du meinst ist der Datendurchsatz... das ist die effektive Übertragungsrate der Nutzdaten. Da kannst du aber nicht die Baudrate nehmen, da diese nur die maximal mögliche Übertragungsrate von Nutzdaten+Rahmendaten angibt... die effektive Übertragungsrate kannst du nur ermittel, indem du die Anzahl der gesendeten Daten über einen bestimmten Zeitraum ermittelst.

    Gruß,
    SIGINT

  9. #9
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    16.10.2006
    Ort
    Bayern
    Alter
    37
    Beiträge
    313
    Blog-Einträge
    1
    @SIGINT:

    Genau, ich meinte Übertragungsgeschwindigkeit... Demnach sollte ich mir also ein Protokoll überlegen, welches
    für jeden gesendeten/empfangenen Frame eine Antwort von der Gegenseite
    erforderlich macht. So kann ich dann also

    1. Herausfinden, ob alle Frames korrekt gesendet/empfangen wurden, und
    2. die exakte Übertragungsgeschwindigkeit messen

  10. #10
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    19.01.2006
    Ort
    Mönchengladbach
    Beiträge
    544
    Nummer 1 ist empfehlenswert aber eigentlich nicht notwendig, wenn eine sichere Verbindung garantiert werden kann, oder fehlerhafte Daten keinen Fehler verursachen.

    Für Nummer 2 musst du halt in einer bestimmten Zeit die Anzahl der gesendeten Zeichen in diesem Zeitabschnitt ermitteln. Dieser Zeitabschnitt gibt dann die Latenz zwischen der aktuellen und angezeigten Übertragungsrate ab. Soll heißen: Wenn du eine Sekunde lang die Zeichen zählst, dann bekommst du immer die Übertragungsrate von der letzten Sekunde... und nie die im aktuellen Moment.

    Gruß,
    SIGINT

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress