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 

 BUG in IDE 2.0 Version 1.33 Kategorie: C-Control I V1.2/2.0 (von thm - 5.12.2004 12:24)

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:

Re: BUG in IDE 2.0 Version 1.33 (von thm - 5.12.2004 13:18)