Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: serielle Schnittstelle Kategorie: C-Control I V1.2/2.0 (von brainzero - 2.02.2006 15:03)
 Als Antwort auf Re: serielle Schnittstelle von Carsten - 2.02.2006 10:24
brainzero nutzt:  CC1-Station V2.0
Hallo Carsten,

der entscheidende Hinweis war das input auf ein "return" wartet. Ich hatte im Terminalprogramm
noch ein automatisches "line feed" angehängt. Damit erhielt input nach "return" noch "line feed" und
wartete auf "return".

Deinen Tip bezüglich des Prgrammierstils habe ich bereits verwurstet.

Recht herzlichen Dank

Gruß
Brainzero

> Hallo,
>
> evtl. wartet der Input - Befehl auf ein "Enter" vom Hyperterminal. Ersetze das Input doch mal durch ein "get" (das wartet nicht und liest ein Zeichen aus dem Puffer) und laß Dir die ankommenden Zeichen als ASCII anzeigen. Es ist auch kein schöner Programmierstil, mit einem Goto über ein Return zu springen, also lieber kürzer schreiben:
>
> #com
>    if NOT rxd then return
>    get myByte
>    print myByte
> return
>
>
> Gruß Carsten
>
>
>
> > Hallo,
> >
> > ich habe folgendes Mini-programm geschrieben, um mich mit der seriellen Schnittstelle
> > vertraut zu machen:
> >
> > #loop
> > gosub led
> > gosub com
> > goto loop
> >
> >
> >
> > #led
> > led4 = off
> > pause 30
> > led4 = on
> > pause 30
> > return
> >
> >
> > #com
> > if rxd then goto comread
> > return
> > #comread
> > input i1
> > if i1 = 1 then print"Hallo Welt"
> > return
> >
> > Mit dem hyper-terminal kann ich den String jederzeit über die Ziffer 1 abfragen.
> > Warum funktioniert aber offensichtlich der Rüchsprung zu loop nicht, denn
> > die led 4 wird nach einer erstmaligen Abfrage der seriellen Schnittstelle nicht mehr ein und aus
> > geschaltet. Beim Programmstart funktioniert dies einwandfrei?
> >
> > Gruß
> >
> > Brainzero

 Antwort schreiben

Bisherige Antworten: