- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 5 von 5

Thema: Datenübertragung zwischen C-Control M-Unit und Atmega 8

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    30.03.2005
    Beiträge
    21

    Datenübertragung zwischen C-Control M-Unit und Atmega 8

    Hallo !
    Ich habe da mal eine Frage zur Datenübertragung über die UART Schnittstelle zwischen einer C-Control M-Unit und einem Atmega 8.
    Auf der M-Unit läuft ein kleines Testprogramm das einfach eine Variable von 10 bis 50 hochzählt. Diese Zahl möchte ich über den TXD Pin auf einen Atmega 8 übertragen. Auf dem Atmega 8 läuft ein kleines Programm um die empfangene Zahl auf einem Display anzeigen zu können. Irgenwie kommen da aber nur falsche Zahlen an.
    Ich habe schon alles versucht, auch das Timing habe ich schon auf beiden Prozessoren hin und her geschaltet aber nichts hat geklappt.
    Wäre schön wenn mir jemand weiter helfen könnte.
    Ich hänge mal beide Programme mit an.
    Wie gesagt die Hardware ist sehr einfach aufgebaut. Der TXD Pin von der M-Unit hängt direkt an Pin PD0(RXD) am Atmega. Und wie gesagt es wird ja auch irgendwas übertragen. Am Display sehe ich zuerst die Zahl 146 und dann irgendwelche 3 stelligen Zahlen.
    Gruss tvfreak
    Angehängte Dateien Angehängte Dateien

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    28.08.2006
    Beiträge
    48
    Hello TV FREAK,
    Your problem could be because of a bug in the C-Control I v2.0 system.
    The very first byte will not be sent over the UART because of this bug.
    Try a PUT 0 in the top of your software like I listed below, maybe this will work.
    Greetings,
    Drifter2006




    Code:
    '--------------------------------------------------------------------------------
    '-------------------------ZUWEISUNG DER EIN- UND AUSGAENGE ----------------------
    '--------------------------------------------------------------------------------
    
    define led     port[1]
    
    
    
    '--------------------------------------------------------------------------------
    '-------------------------ZAHLEN KONVERTIERUNG FUER ANZEIGE ---------------------
    '--------------------------------------------------------------------------------
    
    define zahl                   word
    
    
    
    '---------------------------------------------------------------------------------
    '----------------------------HAUPTROUTINE -------------------------------------
    '---------------------------------------------------------------------------------
    
    put 0 '<-NEEDED BECAUSE OF BUG IN C-CONTROL I V2.0'
    #hauptroutine
     for zahl = 10 to 50 step 1
     led = 1
     put zahl
     pause 50
     led = 0
     pause 50
     next zahl
    goto hauptroutine

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    30.03.2005
    Beiträge
    21
    Hallo Drifter2006 !

    Ich habe die Änderung im Programm so durchgeführt wie du es gepostet hast. Es hat sich leider nicht verbessert

    Gruss, tvfreak

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    28.08.2006
    Beiträge
    48
    Hello TV FREAK,
    I made one more change.
    Greetings,
    Drifter2006

    Code:
    '-------------------------------------------------------------------------------- 
    '-------------------------ZUWEISUNG DER EIN- UND AUSGAENGE ---------------------- 
    '-------------------------------------------------------------------------------- 
    
    define led     port[1] 
    
    
    
    '-------------------------------------------------------------------------------- 
    '-------------------------ZAHLEN KONVERTIERUNG FUER ANZEIGE --------------------- 
    '-------------------------------------------------------------------------------- 
    
    define zahl                   word 
    
    
    
    '--------------------------------------------------------------------------------- 
    '----------------------------HAUPTROUTINE ------------------------------------- 
    '--------------------------------------------------------------------------------- 
    
    put 0 '<-NEEDED BECAUSE OF BUG IN C-CONTROL I V2.0' 
    #hauptroutine 
     for zahl = 10 to 50 step 1 
     led = 1 
     print zahl '<-DELETED PUT' 
     pause 50 
     led = 0 
     pause 50 
     next zahl 
    goto hauptroutine

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    30.03.2005
    Beiträge
    21
    Hallo Drifter2006 !
    Das habe ich auch schon ausprobiert den Befehl PUT durch PRINT zu ersetzen. Im Terminalprogramm bekomme ich dann auch die richtigen Werte angezeigt.
    Ich denke der Fehler liegt in dem Atmega Programm. Da habe ich die richtigen Befehle noch nicht gefunden. Aber ich bin immer noch am probieren.

    Gruss, tvfreak

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress