Danke schon mal,
also nochmal:
Code:
'---------------------------------------------------------
'             Aquariumsteuerung mit dcf77 Uhr von mosi
'             mit DCF77 library from Josef Vögel
'---------------------------------------------------------
$regfile = "M8def.dat"
$crystal = 7372000

'------------------------------------------------------------
'benutzte pins:
'für LCD: portd, pin 2,3,4,5,6
'         portc, pin 2,3
'für DCF Uhr: b,0
'ausgänge: b.1=Licht, b.2=Heizung, b.3=pwm für licht, b.4=Co2, b.5=mondlicht
'analogeingänge: c.0=ADC0=Leitwert, c.1=ADC1=pH-Wert
'1wire eingang=c.6




'Konfigurationen der Hardware
Config Timer2 = Pwm , Compare Pwm = Clear Up , Prescale = 1
Config Dcf77 = Pinb.0 , Timer = 1 , Inverted = 1 , Check = 0 , Gosub = Sectic
Config Date = Dmy , Separator = .

'Konfiguration LCD
Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.5 , E = Portc.3 , Rs = Portc.2
Config Lcd = 20 * 4a , Chipset = Ks077
Config Lcdbus = 4
Config Pind.6 = Output
Portd.6 = 0

Config Adc = Single , Prescaler = Auto , Reference = Internal

'Konfigurationen pins

Config Pinb.1 = Output                                      'Licht an-aus
Config Pinb.2 = Output                                      'Heizung an-aus
Config Pinb.3 = Output                                      'PWM Ausgang Timer2
Config Pinb.4 = Output                                      'Co2-Ventil an-aus
Config Pinb.5 = Output                                      'Mondlicht an aus

Taglicht Alias Portb.1
Heizung Alias Portb.2
Co2 Alias Portb.4
Mondlicht Alias Portb.5

Dim Soll_dim As Byte                                        'sollwert der dimmung, abhängig von Tageszeit
Dim Ist_dim As Byte                                         '255 Werte für PWM-Lichtdimmung
Dim Licht_lcd As Integer                                    '%Anzeige der Licht-Dimmung
Dim Zeit As Byte                                            'Zaehlvariable in sekunden für Dimmer
Dim Pfeil As Byte                                           '3für runter, 4 für waagerecht, 2 für hoch
Dim Roh_phwert As Integer
Dim Min_phwert As Single
Dim Lcd_phwert As Single
Dim Roh_leitwert As Integer
Dim Lcd_leitwert As Integer

Const On = 1
Const Off = 0



Enable Interrupts

'Sonderzeichen generieren

Deflcdchar 0 , 2 , 5 , 2 , 32 , 32 , 32 , 32 , 32           ' Gradzeichen
Deflcdchar 1 , 32 , 32 , 17 , 17 , 17 , 30 , 16 , 32        ' mikrozeichen
Deflcdchar 2 , 15 , 3 , 5 , 9 , 16 , 32 , 32 , 32           ' pfeil nach oben
Deflcdchar 3 , 32 , 32 , 16 , 9 , 5 , 3 , 15 , 32           ' pfeil nach unten
Deflcdchar 4 , 8 , 4 , 2 , 31 , 2 , 4 , 8 , 32              ' pfeil waagerecht

Cls
Cursor Off


'initialisierungen
_hour = 20                                                  'bei reset auf 20Uhr stellen
Ist_dim = 100                                               'Dimmer auf etwa 50%
Zeit = 0                                                    'Sekundenzaehler auf null
Pfeil = 4                                                   'waagerechter pfeil
Taglicht = On                                               'bei reset wird licht angeschaltet
Mondlicht = Off
Co2 = Off
Heizung = Off
Min_phwert = 6.5

Start Adc




Do


   Locate 1 , 1
   Lcd Time$ ; "    " ; Date$

   Select Case _hour

    Case 8 To 12 : Soll_dim = 255                           '100%zwischen 8 und 12Uhr
    Case 13 To 15 : Soll_dim = 102                          '40% zwischen 13 und 16uhr
    Case 16 To 22 : Soll_dim = 255                          '100% zwischen 17 und 22Uhr
    Case Else : Soll_dim = 0                                'sonst licht aus

  End Select

  Gosub Phwert
  Gosub Temperatur
  Gosub Leitwert


   Locate 2 , 1
   Lcd "temp= " ; Chr(0) ; "C " ; "Lw=" ; Roh_leitwert ; Chr(1) ; "S   "


   Locate 3 , 1
   Lcd "L=" ; Licht_lcd ; "%" ; Chr(pfeil) ;


   Locate 4 , 1
   Lcd "phWert=" ; Fusing(lcd_phwert , "#.##") ; "  co2"


Loop
'-------------------------------------------------------------------------------
'***************Label Temperaturerfassung ************************************
'-------------------------------------------------------------------------------
Temperatur:

Return


'-------------------------------------------------------------------------------
'***************Label ph-Werterfassung******************************************
'-------------------------------------------------------------------------------


Phwert:

Roh_phwert = Getadc(1)
Lcd_phwert = Roh_phwert / 170.66                            '1024steps durch 6Schritte
Lcd_phwert = Lcd_phwert + 4                                 '0- bei pH=4

If Lcd_phwert <= Min_phwert Then
   Co2 = Off
   Else
   Co2 = On
End If
Return






'-------------------------------------------------------------------------------
'***************Label Leitwertserfassung ***************************************
'-------------------------------------------------------------------------------



Leitwert:

Roh_leitwert = Getadc(0)


Return





'-------------------------------------------------------------------------------
'*************sekunden**********************************************************
'-------------------------------------------------------------------------------



Sectic:
   Zeit = Zeit + 1                                          'Sekundenzaehler
   If Zeit < 10 Then Return                                 'wenn noch nicht 10sekundene vergangen, dann zurück

   Zeit = 0

   If Ist_dim = Soll_dim Then                               'wenn sollwert gleich istwert bleibt alles wie es ist,
      Pfeil = 4                                             ' pfeil waagerecht
      Return
   End If

   If Ist_dim < Soll_dim Then
      Ist_dim = Ist_dim + 1
      Pfeil = 2                                             'dimmung erhöhen um 1
      Else                                                  'Pfeil nach oben
      Ist_dim = Ist_dim - 1                                 'dimmung verringern um 1
      Pfeil = 3                                             'Pfeil nach unten
   End If

   If Ist_dim <> 0 Then                                     'Wenn Dimmung ungleich null, dann EVG anschalten
      Taglicht = On
      Else
      Taglicht = Off
   End If

   Compare2 = Ist_dim
   Licht_lcd = Ist_dim * 100                                'Prozent der Dimmung für Anzeige
   Licht_lcd = Licht_lcd / 255
Return







End

wenn ich folgendes einmal dazwischen progge, geht alles wieder,
diese Zeilen sind absolut identisch mit denen des o.g. Programms:
Code:
   $regfile = "m8def.dat"
 $crystal = 7372000


 Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.5 , E = Portc.3 , Rs = Portc.2
Config Lcd = 20 * 4a , Chipset = Ks077
 Config Lcdbus = 4
 Config Pind.6 = Output                                     'RW=0
Portd.6 = 0



 Cls
 Locate 1 , 1
 Lcd "Test LCD"