- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 7 von 7

Thema: Hilfsuchung, Daten empfange von WIFI-Modul as UART1

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    18.12.2014
    Beiträge
    5
    OMG
    ICH BIN WIRKLICH DRINGEND.
    Ob jemand mir ein bisschen Tipps geben kann????????

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    706
    Hallo Heylbly,

    mal sehen... mit gepuffertem UART-Empfang habe ich noch nie herumgspielt, aber vielleicht finden wir ja eine Lösung.
    Versuch doch als erstes mal, Dir direkt das UART-Empfangsregister anzeigen zu lassen, wenn der Controller etwas empfangen hat.
    Es sieht so aus, als würdest Du die UART1-Schnittstelle verwenden (also über Pin Nr. 16 des Controllers empfangen), und dann wäre das Empfangsregister UDR1.

    Ich würde auch (erstmal) den Sprung ins Unterprogramm weglassen, um den Code so einfach wie möglich zu machen. Konkret also so:

    Code:
    Dim X as Byte
    
    ..
    Do
    A = Ischarwaiting(#1)
     If A = 1 then
      X = UDR1
      Print X
     Else
      Print "keine Daten kommen herein"
     End if
    
    Loop
    Dann siehst Du an der Variablen X schon mal, WAS überhaupt empfangen wird. Wenn der Zahlenwert von X dann dem Dezimalwert des gesendeten Zeichens entspricht (siehe ASCII-Tabellen!), kannst Du den Wert in eine String-Variable kopieren, und dann hast Du das gesendete Zeichen.

    Wieviele Zeichen sollen denn überhaupt am Stück übertragen werden? Vielleicht kannst Du das Projekt ja mal etwas detaillierter beschreiben?

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    18.12.2014
    Beiträge
    5
    hallo, Sauerbruch,
    zuerst vielen Dank für Ihre Tipps.
    also, Anfangen meines Projekts brauche ich ungefahr 20 byte Daten zwischen Mcu und Handy auszutauschen. das kann String oder irgendwas. hier versuche ich eine String.
    ich benutze UART1 für Wifi Modul, dann werden die Empfangesdaten von Handy in PC (UART0) weiterleiten.
    es klappt jetzt, wenn ich etwas , zum Beispiel eine String von Pc versendet, dann kann mein Handy die String erfolgreich empfangen.
    aber wenn ich etwas von Handy versendet, Mcu kann die Daten empfangen, aber es klappt nicht, dass die Daten von Mcu ausgelesen werden.
    ich habe Ihre Code einmal zu versuchen.
    Aber leider kann Bascom den Befehl UDR oder UDR1 nicht erkennen. Weiße ich nicht genau warum.

    ich habe die Code ein bisschen geändert wie folgende:

    Dim X as String
    Dim Y as String*20


    ..
    Do
    A = Ischarwaiting(#1)
    Y=""
    If A = 1 then
    X = inkey(#1)
    Y=Ý+chr(x)
    print Y
    Else
    Print "keine Daten kommen herein"
    End if

    Loop
    es klappt auch nicht.

    ich kann die Daten nicht auslesen.

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    15.01.2007
    Ort
    Göttingen
    Beiträge
    706
    Aber leider kann Bascom den Befehl UDR oder UDR1 nicht erkennen.
    Woran macht sich das denn erkennbar? Ich habe gerade mal versuchsweise folgenden Code in Bascom eingegeben:

    Code:
    $regfile = "m324pdef.dat"                                   'Prozessortyp
    $crystal = 7372800                                          'Taktfreqwuenz
    $hwstack = 40
    $swstack = 16
    $framesize = 32
    $baud = 9600
    
    
    Config Portb.2 = Output
    Led1 Alias Portb.2
    
    
    Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
    Config Com2 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
    
    
    Config Serialin0 = Buffered , Size = 254
    Config Serialin1 = Buffered , Size = 254
    
    
    Enable Interrupts
    Open "COM2:" For Binary As #1
    
    
    Dim Incoming_data As String * 200
    Dim A As Byte
    Dim C As String * 200
    Set Led1
    
    
    
    
    Do
    
    
    A = UDR1
    
    
    loop
    Das entspricht vor der Do-Loop-Schleife genau Deinem Code, aber bei mir nimmt Bascom den Befehl A = UDR1 problemlos an. Und meine Bascom-Version (1.11. ist glaube ich definitiv nicht die neueste

    Was passiert denn genau, wenn Du Deinen Code kompilierst?

Ähnliche Themen

  1. WiFi Drop - WLAN Mikrocontroller Modul
    Von aauer1 im Forum Vorstellung+Bilder+Ideen zu geplanten eigenen Projekten/Bots
    Antworten: 2
    Letzter Beitrag: 02.07.2014, 09:16
  2. RP6 - M256 WIFI Modul
    Von markus788 im Forum Robby RP6
    Antworten: 1
    Letzter Beitrag: 26.05.2013, 16:45
  3. M256 WIFI Modul
    Von markus788 im Forum Robby RP6
    Antworten: 11
    Letzter Beitrag: 20.02.2013, 20:30
  4. Frage zu Wifi Modul
    Von toter_fisch im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 06.08.2012, 14:04
  5. Daten senden und empfangen, ich empfange nicht was ich sende
    Von Wasi im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 25
    Letzter Beitrag: 25.11.2005, 16:05

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress