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: BUG in IDE 2.0 Version 1.33 Kategorie: C-Control I V1.2/2.0 (von thm - 5.12.2004 13:18)
 Als Antwort auf BUG in IDE 2.0 Version 1.33 von thm - 5.12.2004 12:24
Der Bug liegt vermutlich daran, dass niemand den IDE 2.0 Simulator an die 64 Userbytes der
C-Control 2.0 angepasst hat

Gruss Thomas
>
> BUG in IDE 2.0 Version 1.33
>
> Kuerzlich habe ich meine C-Control 2.0 bekommen und wollte ein sehr altes
> Programm Portieren und erweitern
>
> Dabei traten im Simulator folgende Fehler auf
>
>
> 1.) eher harmlos, aber aergerlich: (in 2.0 muesste der Timer setzbar sein)
>     Der Timer kann nicht gesetzt werden (timer=0)
>
> 2). Sehr aegerlich: (einige Stunden Sucherei, da man mit
>     sowas nicht rechnet)
>       Wird das angehaengte Programmfragment ausgefuehrt, so aendert sich im
>       Betrieb die Variable CMD, ohne
>       dass sie neu gesetzt wird, wird eine zusaeztliche Variable an
>       Programmanfang hinzugefuegt, so passiert dies
>       nicht mehr (vermutlich wird dann eine andere Variable
>       veraendert)
>       Reboots, und Neustarts der IDE halfen nichts.
>       Der Fehler wird in do_proc_slave_tst sichtbar !
>
>
> Gruss Thomas
>
> -----------Programmfragment: (demonstriert beide Fehler)
>
> --------------------------------------
>
> ' demo fuer bugs an conrad
>
> define AUSTYP &H80  '
>
> ' LCD Licht off= an
> define timer0 word
> define tidiff word
> define cmda ad[8]
> define cmda1 byte
> define mreset port[4]
> define LIGHT       port[16]
> '--------------------------
>
> define da1 da[1]
> define icount byte
> define MSTAT byte  ' Motor Status
>
>
> define anlassen port[1]
> define betrieb port[2]  
> define stoerung port[3]  '
> define togport port[4]  '
> define ueberwach port[5] '
>                          '
> define gasvent port[5]  '
> 'define start port[6]    '
> define schuetz port[7]   '
> define err_bit port[8]  '
> define temp ad[8]
> define bp1 byteport[1]
> define bp2 byteport[2]
> 'define errin byteport[2]  ' Ueberwachungskanaele
>
> define frq freq2
>
> define frqmax word
> define frqmin byte
>
>
> define tries byte
> define dummy byte
>  
>  define errin byteport[1]
>  define startmask &H20   '  masks the start bit
>  define errmask &H80
>  define errmask1 &HA0   ' masks errors without delay
>  define delerrmask &H80
>  define delerrmask1 &HA0  ' masks startbit and all errors
>  define start port[6]
>
>  define readymask &HFF  ' set wenn end of loop
>
> define startmask1 byte
> define var_errmask byte
>
> define ecount byte ' Anzahl aufeinanderfolgender Fehler, geloescht wenn letzte OK
> define stcount byte
> define waitnum byte
> define errsave byte
> define errsave1 byte
>
> ' define entprell bit[1]
> define ptime byte
> define goodcount byte
> ' define X1 word
> ' define X2 word
> ' define X3 word
> ' define X4 word
> ' define X5 word
>
> 'Kommunikation
> define C byte
> define STATE byte
> define ID byte
> define THISID 49   '  ID of THIS ("1")
> define NOERR 64
> define CMD byte
> define CMD1 byte
> ' ##### could be LCD_PARAM
> define DATA byte
>
> define SEC0 byte
> define SEC1 byte
> define RET byte
> define ERR byte   ' communication error - uebergabevar
> define ERR1 byte  ' communication error
>
> startmask1=startmask
> print "START"
> goto do_proc_slave_tst
>
>
> #do_proc_slave_tst
>   CMD=0
>   timer=0
>   ' print "CM: ";CMD;" ";cmda;" ";cmda1;" SEC ";second
>   if (cmda > 10 AND cmda < 40) then CMD=48 ' (0) OFF
>   if (cmda > 56 AND cmda < 88) then CMD=49 ' (1) ON
>   if (cmda > 104 AND cmda < 136) then CMD=84 ' (T) Aufschalt
>   if (cmda > 152 AND cmda < 184) then CMD=85 ' (U) Fehler loeschen
>   pause 20
>   if abs(cmda1-cmda) > 5 then CMD=0
>   print "CM: ";CMD;" ";cmda;" ";cmda1;" TI ";timer
>   cmda1=cmda
>   goto do_proc_slave_tst
>
>
>
>
>

 Antwort schreiben

Bisherige Antworten: