-         

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

Thema: RS-232-Schnittstelle funktioniert nicht ganz richtig! Warum?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149

    RS-232-Schnittstelle funktioniert nicht ganz richtig! Warum?

    Anzeige

    Hallo zusammen

    Ich versuche schon seit langem Daten über RS-232-Schnittstelle zu übertragen, aber es geht einfach nicht.

    - In den Optionen habe ich alles richtig eingestellt (wie es in Wiki gezeigt wird).
    - Aus dem M32 kommen Daten heraus, aus dem Max232N ebenfalls.

    Was mir an dem Pegel aufgefallen ist, ist Folgendes:
    Am T1in-Pin des Max232 geht die Spannung von 5V auf 0V herunter, was auch normal ist.
    Aber am T1out-Pin steigt sie von -11 auf nur +2V, was anormal ist. Sie sollte eigentlich 3 bis 12V sein.

    Weiß jemand was da nicht stimmt?

    Hier mein Programm:
    '========================Dimmende_LED============= ======================

    $regfile = "m32def.dat"
    $crystal = 16000000
    $baud = 9600

    Config Pinc.0 = Output 'Hier ist die Anode der LED angeschlossen
    Config Pinc.3 = Input 'Dieser Pin wird mit einem Taster auf Masse gezogen
    Portc.3 = 1 'Interner Pullup-Widerstand an

    Dim I As Byte , E As Byte , N As Word

    Do
    For I = 0 To 20
    N = 0
    Print "I=" ; I
    Start:
    Portc.0 = 1 'LED an
    Waitms I
    Portc.0 = 0 'LED aus
    E = 20 - I
    Waitms E
    N = N + 1 'Schleife
    If Pinc.3 = 0 And N >= 10 Then
    Next I
    Else
    Goto Start
    End If
    Loop
    'D: Dimmzeit ist die Zeit in der die LED vollständig hoch gedimmt wird.
    'tn: Bestimmter Zeitraum.
    'N = 10, Nmax = 2^16, Imax = 20
    'D = N * Imax^2 [ms]; mit der Voraussetzung, dass der Taster innerhalb von
    't2 = Nmax * Imax =21,8453 min, aber nicht die ersten t1 = N * Imax = 0,2 s gedrückt wird.
    'Ansonsten gilt diese Formel Dmax = D + t1.

    Für eure Hilfe bin ich sehr Dankbar.

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    09.02.2005
    Ort
    München
    Alter
    32
    Beiträge
    389
    Zeigt er dir den im Terminal Programm an ?
    Wenn er nur mist anzeigt.
    Baudrate Terminal = Baudrate AVR
    Ist die Quarzfrequenz wirklich die Eingestellte (Fuse richtig)?
    Richtiger Com Port ?

    MfG Matthias

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    - Es wird nichts im Terminal angezeigt.
    - Baudrate habe ich mehrmals kontrolliert.
    - Unter Baudrate steht 16000000 Hz, wenn ich dich richtig verstehe. FusebitA987: 1111 Ceramic resonator, BOD enable.
    - Das mit dem Com Port verstehe ich nicht, ich habe es einfach auf Com1 eingestellt und am PC in die 9-Polige Buchse reingesteckt.
    Die Belegung habe ich auch aus Wiki übernommen.

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.03.2004
    Beiträge
    127
    Hatte auch gerade Probleme mit der RS232. Bei mir lags an den Einstellungen im Gerätemanager (Baud falsch und Flusssteuerung war ein).

    mfg blizzard

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    29.12.2005
    Ort
    Nähe Mainz
    Alter
    26
    Beiträge
    3.467
    Zitat Zitat von Walich
    - Unter Baudrate steht 16000000 Hz, wenn ich dich richtig verstehe.
    Das kann nicht stimmen. Das ist die Quarzfrequenz.

    Zitat Zitat von Walich
    FusebitA987: 1111 Ceramic resonator, BOD enable.
    Ist OK.

    Zitat Zitat von Walich
    - Das mit dem Com Port verstehe ich nicht, ich habe es einfach auf Com1 eingestellt und am PC in die 9-Polige Buchse reingesteckt.
    Die Belegung habe ich auch aus Wiki übernommen.
    Die COM Ports werden durchgezählt. Wenn du nur einen hast, der nicht über einen USB to RS232 Adapter angeschlossen ist, hast du wahrscheinlich COM1.

    jon
    Nice to be back after two years
    www.roboterfreak.de

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    Danke erstmal für all die Hilfe.

    Ich weiß ehrlich gesagt nicht, was an der Frequenz nicht stimmen soll?
    Die habe ich überall gleich eingestellt (Am Bauteil steht 16.000, was 16 MHz bedeutet) :
    - Unter Option\Compiler\Communication steht: Baudrate 0 = 9600
    Frequency = 16000000 Hz
    Error = 0,16 %


    Ich habe ja geschrieben, dass die Spannung nur bis zu 2V hochkommt. Habt ihr bei euch schon diese Spannung gemessen, wenn ja, wie groß ist sie denn? Alles Andere scheint ja richtig zu sein!

    Und noch eine kleine Frage: Was ist Flussteuerung, Bascom ist leider in Englisch.

    Danke nochmal für die Unterstützung!

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    Ich habe ja geschrieben, dass die Spannung nur bis zu 2V hochkommt. Habt ihr bei euch schon diese Spannung gemessen, wenn ja, wie groß ist sie denn? Alles Andere scheint ja richtig zu sein!
    Die spannung sollte mindestens +5V sein, normalerweise +10V. Ich denke das ist einen hardware problem, wie sind denn die 4 kondensatore an der MAX232 angeschlossen?

    Martin.

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    Also die vier Elkos (4,7µF;50V) habe ich wie in Wiki-Schaltplänen mit dem Max232 verbunden (mehrmals kontrolliert). Was in den Bestückungslisten auffällig ist, dass dort "Max232CPE" steht, ich habe mir einen Max232N bestellt! Die letzten Buchstaben deuten auf das Gehäuse hin, die beiden ICs sehen wie DIP-Gehäuse aus!? Oder steckt da vielleicht noch mehr dahinter?

    Außerdem überlege ich mir, ob man die 2V durch 2 Mignon-Akkus auf 4,4V erhöhen kann? Nur um festzustellen, dass es an der Spannung liegt!

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    23.03.2007
    Beiträge
    38
    Die MAX232N (Texas Instruments? ) und MAX232CPE (Maxim) sind gleich, soviel ich weiss beide DIP-Gehäuse. Mess bitte mal die spannung an pin 2 der Max, die soll +10V sein. Wenn nicht: mess auch mal ohne verbindung zur PC.

    Martin.

  10. #10
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.08.2006
    Ort
    Datteln
    Alter
    30
    Beiträge
    149
    Pin1 (C1+) = Rechtecksignal => beide Teilzeiten gleich lang (jewals 10 µs); High = 9,5 V, Low = 4,5 V
    Pin2 (Vs+) = 9 V
    Pin3 (C1-) = wie bei Pin1, nur High = 5 V, Low = 0 V
    Pin4 (C2+) = wie bei Pin1, nur High = 9,5 V, Low = 0 V
    Pin5 (C2-) = weiß nicht was jetzt High- und Low-Pegel ist, aber das Rechtecksignal von Pin4 sinkt um ca. 10 V.
    Pin6 (Vs-) = -10,5 V

    Mfg

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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