- SF800 Solar Speicher Tutorial         
Ergebnis 1 bis 10 von 13

Thema: Input , Wait , Print... Warum?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Zitat Zitat von demmy Beitrag anzeigen
    Also ich weiß das man auf die Register der UART zugreifen kann. Welches genau müsste ich denn da abfragen um zu erfahren
    wann die UART mit dem Empfangen bzw. Umschichten eines Zeichens fertig ist?

    Woher weiß ich wie lange ich das Wait machen muss?
    Du kannst das Bit welches das Ende einer Übertragung signalisiert abfragen.
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.07.2011
    Beiträge
    348
    Das Ende einer Übertragung? Das heißt es wird nach jedem Eingang eines Zeichens gesetzt? Welches Bit wäre das?

  3. #3
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Das Bit müsste "USART Receive Complete Interrupt Flag" heißen und es wird gesetzt sobald ungelesene Daten im Buffer stehen und wird gelöscht sobald der Buffer leer ist.
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  4. #4
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.07.2011
    Beiträge
    348
    Ahh ok! Vielen Dank!!!

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.07.2011
    Beiträge
    348
    Hi,
    also ich hab jetzt versucht das Bit abzurufen. Wenn UCSRA.RXC = 0 dann soll erst die Antwort gesendet werden. Das funktioniert aber leider auch nicht. Will ich die Zahl 2 senden bekomme ich wieder als Empfang 255. Jetzt versteh ichs gar net mehr? weil der Empfang muss jetzt ja definitiv beendet sein oder!?
    Hat das evtl. etwas damit zu tun das ich die Daten per rs485 übertrage?

  6. #6
    Moderator Robotik Einstein Avatar von Kampi
    Registriert seit
    21.11.2009
    Ort
    Monheim, Nordrhein-Westfalen, Germany
    Alter
    35
    Beiträge
    3.501
    Blog-Einträge
    9
    Hi,

    Wenn du einen Fehler im RS485 hast kann dies der Fehler sein. Oder hast du UART-RS485 Konverter und die sind nicht für deine Baudrate ausgelegt? Welche Baudrate, Controller und Takt verwendest du den? Und wie sieht der ganze Aufbau aus?
    Schaut ruhig mal auf meiner Homepage vorbei :
    http://kampis-elektroecke.de

    Oder folge mir auf Google+:
    Daniel Kampert

    Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.

    Gruß
    Daniel

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    29.07.2011
    Beiträge
    348
    Also , es ist ein Atmega162, 8MHZ Quarz, Baudrate: 38400, an einem MAX485. (der max485 kann bis zu 2,5Mb)
    Ich habe jetzt vor auf die 14,7456 MHZ umzustellen.
    Wie gesagt wenn ich ein Wait dazwischen setze funktioniert das Senden und Empfangen Problemlos. Ich verwende die Funktion der automatischen Sende-Empfangsumschaltung in Bascom. Aber ich denke nicht das es an der Hardware liegt. In anderen stellen im Programm wo ein paar Zeilen Code zwischen dem Empfangen und Senden liegen, funktioniert es sogar auch ohne ein Wait.
    Ist vielleicht diese automatische Sendeumschaltung zu langsam?

    Was auch noch interessant sein könnte an der Stelle lese ich die Daten in ein Array ein. also per Inputbin #1, Empfang() , 1 und sende dann aus einem Array printbin #1, Senden(), 1 ;
    Geändert von demmy (18.05.2012 um 10:59 Uhr)

Ähnliche Themen

  1. Warum funktioniert diese Print nicht?!
    Von TheTeichi im Forum Elektronik
    Antworten: 111
    Letzter Beitrag: 03.12.2011, 11:28
  2. Bascom Gegenteil von PRINT = INPUT?
    Von Neokortex im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 2
    Letzter Beitrag: 26.05.2009, 11:43
  3. wait x in simulation?
    Von dremler im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 4
    Letzter Beitrag: 01.01.2008, 16:21
  4. Wait in C
    Von servusssss im Forum C - Programmierung (GCC u.a.)
    Antworten: 8
    Letzter Beitrag: 06.03.2006, 21:02
  5. Input & Print
    Von MAxK im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 5
    Letzter Beitrag: 11.08.2005, 20:13

Berechtigungen

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

12V Akku bauen