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 

 Serial problem Kategorie: Programmierung Basic (von Hans - 30.10.2006 18:24)
Hans nutzt:  CC1-M-Unit V1.2/2.0
Hallo
I have 2x M-units2.0
1 Sender en 1 reciever
serial RS485
The program works good
only +/- one out of ten is goiing wrong
then there is coming in wrong information
the number "68" (start code) is coming on Varbyte1 or Varbyte2 on wich the other variable are moving up
why is this program so unstable
or with other words, how do I get this program stable

Hans

'********TEST SENDER************
'poort
DEFINE Led            PORT[1]

'VAR
DEFINE VarByte2      BYTE[3] 'Bytes op een rij 1 t/m 48 bits
DEFINE VarByte1      BYTE[4]
DEFINE VarByte4      BYTE[5]
DEFINE VarByte3      BYTE[6]
DEFINE VarByte6      BYTE[7]
DEFINE VarByte5      BYTE[8]
DEFINE Temp          WORD[5]

put 0
led=OFF
VarByte6=0
#Start
 TOG Led

VarByte1=10
VarByte2=20
VarByte3=30
VarByte4=40
VarByte5=255
VarByte6=VarByte6+1

PUT 68   'is the start code
PUT VarByte1
PUT VarByte2
PUT VarByte3
PUT VarByte4
PUT VarByte5
PUT VarByte6


pause 50
GOTO Start



'*******Test Resiever**********
define lED      port[1]
DEFINE E        PORT[16]

DEFINE Var1     BYTE[1]
DEFINE Var2     BYTE[2]
DEFINE Var3     BYTE[3]
DEFINE Var4     BYTE[4]
DEFINE Var5     BYTE[5]
DEFINE Var6     BYTE[6]
DEFINE VAR7     BYTE[7]
DEFINE I        BYTE[8]
DEFINE AanTal   WORD[5]


AanTal=0
PRINT"#ON_LCD#";"#INIT#";"#CLR#";"#OFF#";
PUT 0


#OpStart
Minute = 0


#Start
FOR I = 1 to 200
IF MINUTE>4 THEN GOTO GeenOntvangst
IF NOT RXD THEN GOTO Verder
GET Var1
IF Var1=68 THEN GOTO Ontvang   '83 is "S" van Start
#Verder
NEXT
GOTO Start

#Ontvang
GET Var1   'Óntvangen van de 48 BITS in 6 Byte's
GET Var2
GET Var3
GET Var4
GET Var5
GET Var6
GET Var7

'IF Var7<>69 THEN GOTO Start  'Laatste Var moet een "E" Zijn van End

#Display            'Display 4x40
aanTal=AanTal+1
E=ON
print"#ON_LCD#";
print"#INIT#";
print"#CLR";
print"#L101#";
PRINT "Getal1=";Var1;
print"#L201#";
PRINT "Getal2=";Var2;
print"#L121#";
PRINT "Getal3=";Var3;
print"#L221#";                         'Regel 4, POSITON 1
PRINT "Getal4=";Var4;
E=OFF
print"#INIT#";
print"#CLR";
print"#L101#";
PRINT "Getal5=";Var5;
print"#L201#";
PRINT "Getal6=";Var6;
print"#L221#";
PRINT Aantal;

print"#OFF#";

pause 150

GOTO Opstart

#GeenOntvangst
E=ON
print"#ON_LCD#";
print"#INIT#";
print"#L101#";
print "******       Geen ontvangst       ******";
print"#L201#";
print"Storing Kijk of de afzender goed aangeslo";
E=OFF
print"#ON_LCD#";
print"#INIT#";
print"#L101#";
print "ten is. Spanning aangesloten           ";
print"#L201#";
print"of draadbreuk in de data kabel          ";

GOTO Opstart

 Antwort schreiben

Bisherige Antworten:

Re: Serial problem (von H.J.W. - 30.10.2006 20:08)
    Re: Serial problem (von Hans - 30.10.2006 21:58)
        Re: Serial problem (von H.J.W. - 31.10.2006 7:08)
            Re: Serial problem (von H.J.W. - 31.10.2006 7:47)