- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 5 von 5

Thema: variable mit <cr><lf> löschen

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    09.01.2006
    Ort
    Hamburg
    Alter
    40
    Beiträge
    40

    variable mit <cr><lf> löschen

    Anzeige

    Powerstation Test
    hallo ich bekomme einen string gesendet volgend <cr><lf> alles kein ding den einmal auszulesen danach die variable löschen mit s = "" nun sollte die wariable eigendlich lehr sein ist sie aber nicht es bleiben diese zeichen drin <cr><lf>.

    wie bekomme ich die gelöscht

    Code:
    Onrxd:
     S = S + Chr(udr)
      If Len(s) > 11 Then
      A = S
      S = ""
      End If
    If A = "Œ01042054FA9" Then                                 
       A = ""
       Incr Tran1:
    End If
    
    return
    was amch ich da falsch? es fungtionirt ja immer einmal dann muß der mc resetet werden. und dann geht es auch wider einmal also wirt die variable anscheint nicht ganz gelöscht oder?

    mit dem imput befehl und davor

    Code:
    Neu:
    B = Inkey(#1)
    If B = 0 Then                                               'fragt ab ob der soeicher null ist und liest gleichzeitg aus
    Goto Gut
    Else
    Goto Neu
    End If
    
    Gut:
    ist es kein problem nur als interupt geht zu viel zeit flöten

    ich hoffe mir kann jemand helfen

    gruß Nico
    Wer Rechtschreibfehler findet, darf sie behalten.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    35
    Beiträge
    1.614
    beim inkey iss das löschen des udr schon inbegriffen, das s liest jetz einfach vermutlich die steuerkommandos wieder it ein, wird aber nicht über 11 steigen, also wirds auch nich gelöscht, du musst das UDR noch löschen, wenn du nur UDR abfragst

    Martin
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    09.01.2006
    Ort
    Hamburg
    Alter
    40
    Beiträge
    40
    hey danke erst mal für die antwort. bei der konfusen frage stellung. nun die frage wie kann ich denn die udr löschen ? das ist ja algemein mein problem.

    du meinst das die steuer comandos nach dem eigendlichem string wider eingelesen werden ! ich habe mal eingestellt das er nach dem empfang von 13 zeichen erst löschen soll da macht er aber nichts weil er die steuerzeichen ergend wie nicht anerkennt. als zeichen.

    wenn ich mir die variable mal anzeigen lasse übers lcd oder auf dem terminal mischen sich die zahlen also wirt immer was hinten drann gehängt.

    kann mann die steuerzeichen ergend wie verarbeiten wenn das kommt mache das ? vofür wirt es denn mitgesendet?
    Wer Rechtschreibfehler findet, darf sie behalten.

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    01.03.2004
    Ort
    Bielefeld (JA, das gibt es!)
    Alter
    35
    Beiträge
    1.614
    versuchs doch mal mit udr = 0 ^^

    mal schaun obs geht, hab grad keine passende appl, in der cih das so testen könnte.

    Martin
    Ich will Microsoft wirklich nicht zerstören. Das wird nur ein gänzlich unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds, Entwickler von Linux

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    09.01.2006
    Ort
    Hamburg
    Alter
    40
    Beiträge
    40
    hey mit udr = 0 geht es nicht weil der schohn lehr ist. mein problem habe ich glaube ich gefunden.

    Code:
    Onrxd:
     S = S + Chr(udr)
      If Len(s) > 11 Then
      Select Case S
    
    Case "Œ01042054FA9"
    
        Tran3 = Tran3 + 2
    
       If Tran3 =< 8 Then Print #2 , "c00" ; Tran3
          Waitms 500
       If Tran3 > 8 Then Print #2 , "c0" ; Tran3
          Waitms 500
       If Tran3 > 98 Then Print #2 , "c" ; Tran3
          Waitms 500
    
    Case usw.
    
    Case Else
    Waitms 500
    End Select
    S = ""
    End If
    
    Return
    nach dem du mir gesagt hast das er die 11 zeichen nicht ereicht, habe ich gesucht ......

    und zwar hohlt er die einzelnen bytes aus dem udr puffer unf fühgt sie bis er 11 zeichen hat an einander dann führt er den code aus. ist am ende und hat aber noch 2 zeichen im puffer (<cr><lf>)die lät er wider rein hat aber nur diese beiden und kommt somit nicht über 11 zeichen und hat dann die variable mit den mist voll und alles andere wirt dannhinten drann gehängt.

    nun muß ich erst im programm also nicht in der rotine die variable löschen s = "" dann geht das.

    ich würde das aber gerne noch werent des interupts machen

    und mir fehlen da die idehen wie ich das abfragen kann ?

    wenn ich sage sobalt nur 2 zeichen im pufer sind soll er löschen somit komm ich nie über 2 zeichen.

    hast du noch eine ide?

    oder kann mann die zeichen (<cr><lf>) auch abfragen das ich Case "Œ01042054FA9 <cr><lf>" das geht nicht.

    danke Nico
    Wer Rechtschreibfehler findet, darf sie behalten.

Berechtigungen

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

12V Akku bauen