Español
Hardware

RS232 Bytesalat sin Handshaking auflösen

 

GDL
Hi,

tal vez kann lo una Hobbybastler umgeändert (adaptado)brauchen. Damit synchronisiere Yo mi Atmels sin Handshaking en el endlosen Datenstrom.
KompilierenMarcaSeparación
COM Schnittstelle auslesen
Schnittstelle wird am Proganfang geöffnet und erst am Progende geschlossen
declare sync%,lb%
settext _text&[12],Einlesestatus  :  aktiv   +time$(0)+  +left$(time$(1),5)
+       Zeitwechsel ist ein Einlesevorgang.
Schnittstelle auslesen  3mal 255 und 1mal 0 hintereinander ist Sync
Empfangsprotokoll 255 255 255 0 Bahnhof Punkt Lok Auswahl Fehlerbyte
Auswahl
254 = Stellpult
253 = Geschwindigkeit
252 = Standardgeschwindigkeit bei Umschalten auf Grün anfordern
ja
clear cstart%
clear sync%
clear lb%
comwert$=@ReadCom$(comi1&,1)
@ComError(comi1&)
case str$(ord(comwert$))=255:inc sync%

whilenot comwert$=

    comwert$=@ReadCom$(comi1&,1)
    @ComError(comi1&)
    case str$(ord(comwert$))=255:inc sync%

    If str$(ord(comwert$))=0			Beginn des Datenprotokolls

        Hat hier nichts mit Start,Stopbit zu tun, sondern ersetzt das Handshaking

        if sync%=3

            lb%=1				 Die drei 255 Startbyte wurden beim folgendem Nullbyte erkannt

        else

            clear sync%
            clear cstart%
            clear lb%

        endif

    endif

    if lb% =1

        inc cstart%
        _inhalt%[cstart%]=ord(comwert$)

    endif

    if cstart% = 5

        clear cstart%
        clear sync%
        clear lb%

        if _inhalt%[5]=253

            settext _text&[8],Lok       : +right$(00+str$(_inhalt%[4]),3)
            auswerten1
            Falls dieser BMelder etwas auslöst
            tasterbahnhof%=_inhalt%[2]
            tasterwert%=_inhalt%[3]
            tasterwert%=tasterwert%+(tasterbahnhof%*256)-256  Punkte gehen hier von 1 bis 999
            bm_auswerten

        elseif _inhalt%[5]=254

            settext _text&[8],Taster    : +right$(00+str$(_inhalt%[3]),3)
            settext _text&[9],Stellwerk : +right$(00+str$(_inhalt%[2]),3)
            tasterbahnhof%=_inhalt%[2]
            tasterwert%=_inhalt%[3]
            auswerten

        elseif _inhalt%[5]=252

            settext _text&[8],Lok       : +right$(00+str$(_inhalt%[4]),3)
            real_speed

        endif

    endif

wend

sonst gibt es bei der thread.pcu  Schlüsselfeldsalat
case wennoffen%=1:dbuse(#1)
case dannoffen%=1:dbuse(#2)

Servus
Georg
 
Windows7 Xprofan 8,9,10 [...]  [...] 
04.07.2007  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

3.340 Views

Untitledvor 0 min.
H.Brill27.04.2024
p.specht25.06.2021
Post17.09.2016
Oldie18.06.2013
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

GDL (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie