- LiFePO4 Speicher Test         
Ergebnis 1 bis 8 von 8

Thema: RS232 Telegramm????

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.02.2005
    Ort
    Südtirol
    Beiträge
    283
    Hi Leute

    kann mir mal jemand sagen warum das so nich funktioniert?
    Wenn ich das ganze mit dem Terminal Emulator von Bascom teste geht es zwar, aber die Variable Ar(5) bleibt leer, bzw verschiebt sich nach Ar(6)
    Versuch ichs mit dem VB-Programm geht es beim 1. mal nach dem Reset und beim 2. mal wird das halbe Telegramm "verschluckt".
    ich hock jetzt schon fast 2 Tage dran und bin jetzt voll am verzweifeln.
    Hier mal das bascom-Programm und das VB-Programm als rar-Archiev:

    Code:
    $regfile = "m32def.dat"
    $crystal = 16000000                                         'Quarzfrequenz
    $baud = 9600
    
    Config Pinc.7 = Output
    Config Serialin = Buffered , Size = 30
    
    Const My_adr = "mc1"
    
    Dim Ar(6) As String * 5
    Dim Bcount As Byte
    Dim Telegramm As String * 30
    Dim E_adr As String * 5
    Dim E_aktion As String * 5
    Dim E_typ As String * 5
    Dim E_property As String * 5
    Dim E_wert As String * 5
    Dim E_check As String * 5
    Dim I_wert As Integer
    Dim B_wert As Byte
    Dim I As Byte
    
    Enable Interrupts
    Print "Start"
    
    Portc.7 = 1
    Sound Portd.7 , 400 , 450
    Do
    
       'get a char from the UART
       If Ischarwaiting() = 1 Then                              'was there a char?
          Sound Portd.7 , 400 , 450
          Input Telegramm
          Print "angekommen"                                    'nur zu testzwecken
          'Portc.7 = 1
          'Waitms 200
          'Portc.7 = 0                                           'print it
    
          Bcount = Split(telegramm , Ar(1) , "!")               'Aufteilen des Telegramms auf Arryes
    
          'Print Ar(1)
          If Ar(1) = My_adr Then
             E_adr = Ar(1)
             E_aktion = Ar(2)
             E_typ = Ar(3)
             E_property = Ar(4)
             E_wert = Ar(5)
             E_check = Ar(6)
          Else
             E_adr = ""
             E_aktion = ""
             E_typ = ""
             E_property = ""
             E_wert = ""
             E_check = ""
          End If
    
       End If
    
       If Len(ar(1)) > 0 Then
          For I = 1 To Bcount                                   'Telegramm und Arreys löschen
             Print Ar(i) ; I
             Ar(i) = ""
          Next
       End If
       Telegramm = ""
    Loop
    [/code]
    Angehängte Dateien Angehängte Dateien

Berechtigungen

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

LiFePO4 Speicher Test