- LiFePO4 Speicher Test         
Ergebnis 1 bis 4 von 4

Thema: Raspberry UART-Abfrage

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    14.09.2011
    Beiträge
    32

    Raspberry UART-Abfrage

    Anzeige

    E-Bike
    Folgende Situation:
    ein ATMEGA empängt Signale einer IR-Fernbedienung und sendet
    diese an den RPI per UART weiter.
    RPI Programmierung in Python

    Bisher habe ich am RPI eine UART-Abfrage im Sekundentakt durchgeführt.
    - Funktioniert einwandfrei -

    Ich wollte dann die sekündlichen Sprünge zur UART-Abfrage einsparen. Jetzt sendet
    der Atmega ein Signal an den RPI (GPIO) wenn er per UART sendet.
    Der RPI fragt daraufhin den UART ab und sendet ok zurück --> Atmega schaltet Signal ab.
    Die Programmsprünge im RPI funktionieren, aber Daten werden nicht empfangen.
    Ich habe alle möglichen Varianten probiert (Signal vor dem Senden, nach dem Senden
    mit unterschiedlichen Pausen, UART Timout verändert ).
    Irgendwas scheint nicht zu passen.

    Hat jemand eine Idee?

    Hier das Programm (die Einrückungen werden hier nicht dargestellt):

    #!/usr/bin/python
    # -*- config: utf-8 -*-

    import serial
    import time
    import sys


    def uart_empfang():

    ser = serial.Serial()
    ser.port = "/dev/ttyAMA0"
    ser.baudrate = 9600
    ser.timeout = 3
    ser.open()
    time.sleep (0.1)
    if ser.isOpen():
    s = ser.read(6)
    #s=ser.read(ser.inWaiting())
    #s = ser.readline()
    ser.flushInput()
    ser.flushOutput()

    print "--" + s +"--"
    time.sleep(0.1)
    ser.write ("ok" + chr(13))
    ser.close()




    return s

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    53
    Beiträge
    765
    Unter C lüppt es bei mir eins a. (Python habe ich noch nie genutzt) Welches Protokoll nutzt Du? Bei mir ackert der Atmega dem Raspi mundgerecht pro Befehl ein Byte zu.

    Edit:
    Die Schnittstelle selbst ist frei? Standardmäßig ist da eine Konsole drauf.
    Geändert von peterfido (11.04.2015 um 08:54 Uhr)
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    14.09.2011
    Beiträge
    32
    Also sollte ich mal versuchen, die Daten Byte für Byte zusenden. Vor jedem Byte ein Impuls vom Atmega.
    Bisher habe ich einen kompletten String (bis zu 10 Zeichen) gesendet.

    Ich beschäftige mich erst seit ein par Wochen mit dem RPI. Das die empfangenen UART-Daten in einer Datei abgelegt werden, ist neu für mich.
    Ich dachte die liegen dort solange bis sie "abgeholt" werden.

    Danke

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    53
    Beiträge
    765
    Strings gehen auch. Wichtig ist halt, dass ein Programm an der Schnittstelle lauscht. Und halt, dass die standardmäßige Beelegung der Schnittstelle aufgehoben wird. Details dazu stehen in meinem Internetradio-Thema.
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

Ähnliche Themen

  1. [ERLEDIGT] Rückfrage: Uart ISR stört die If then abfrage
    Von chrisavr1981 im Forum C - Programmierung (GCC u.a.)
    Antworten: 1
    Letzter Beitrag: 14.01.2014, 07:20
  2. Raspberry pi UART <--> Atmega
    Von Testus2K im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 22.02.2013, 22:32
  3. Uart-Abfrage mit Atmega128 - Mit Lösung!
    Von Jimmy23 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 8
    Letzter Beitrag: 26.11.2010, 19:22
  4. Inkey(#5)-Abfrage bei SW-Uart funktioniert nur manchmal
    Von otto richter im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 14.06.2010, 15:20
  5. UART Sendepuffer-Abfrage mit Bascom
    Von Heideltrudel im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 03.08.2007, 22:12

Stichworte

Berechtigungen

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

12V Akku bauen