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: speichern Kategorie: Programmierung Basic (von Kevin K. - 6.11.2014 12:01)
 Als Antwort auf Re: speichern von Dietmar - 5.11.2014 20:43
Kevin K. nutzt:  CC1-M-Unit V1.1
Hallo

erstmal danke fĂĽr die schnelle Antwort.
Ich habe es nun mit open for write und open for read gemacht.
Problem ist nur das er wenn das programm länger läuft die rekorde auf einmal vertauscht bzw. sogar löscht.
Hier ist mein Programm . . . Fällt ein fehler ins Auge ?
Danke vielmals



define Light             port[16]
define musik             port[1]
define Trommelwirbel     port[2]

define ADEingang as        AD[2]
define Rekord    as      word[1]
define schlag    as      word[2]
define i         as      word[3]
define schlag2   as      word[4]
define gemma     as      word[5]
define spannung  as      word[6]
define balken    as      word[7]
define e         as      word[8]
define rekord2   as      word[9]
define rekord3   as      word[10]




import "SHOW_BAR.blib"

 #INIT
 INITBAR()
 Light=off
 musik=on
 Trommelwirbel = off

 open for read
  input# Rekord
  input# rekord2
  input# rekord3
 close

  do
    #pausenrek3                                                              'Standard Display mit der Aufforderung zum Schlag und einer anzeige
    LCD.INIT                                                                    'des momentanen Rekords
    LCD.CLEAR
    Light=off
    LCD.Pos 1,2
    LCD.Print "Hau den Lukas"
    LCD.Pos 2,2
    LCD.Print "Bitte Schlagen"
    pause 50
    goto pausehdl

    #pausenhdl
    LCD.CLR
    LCD.Pos 1,2
    LCD.Print "1. Platz"
    LCD.Pos 2,4
    LCD.Print Rekord
    LCD.Print "Pkte."
    goto pauserek

    #pausenrek
    LCD.CLR
    LCD.Pos 1,2
    LCD.Print "2. Platz"
    LCD.Pos 2,4
    LCD.Print rekord2
    LCD.Print "Pkte."
    goto pauserek2

    #pausenrek2
    LCD.CLR
    LCD.Pos 1,2
    LCD.Print "3. Platz"
    LCD.Pos 2,4
    LCD.Print rekord3
    LCD.Print "Pkte."
    goto pauserek3
 loop                                                                           'dieser Standard Display wird angezeigt bis sich am Eingang etwas ändert
                                                                                'diese Ă„nderung muss jedoch größer als der Wert 10 sein

#geschlagen
 musik=off
 Trommelwirbel = on
 gemma = schlag*4
 Schlag2=(gemma/3)*2
 spannung = gemma - 15
 i = 0
 e = 0
 LCD.CLR
  DO
  LCD.CLR
   i=i+1
   e=i/4
   balken = e*80/255
   SHOW_BAR(balken)                                                             'rauf zählen bis zum halben erreichten Wert(schnell)
   LCD.POS 2,7
   LCD.PRINT i
  Loop until i=schlag2
LCD.CLR
  DO
    LCD.CLR
    i=i+1
    e=i/4
    balken = e*80/255
    SHOW_BAR(balken)                                                            'rauf zählen bis zum erreichten Wert (langsamer)
    LCD.POS 2,7
    LCD.PRINT i
    pause 2
  Loop until i=spannung

LCD.CLR

  do
    LCD.CLR
    i=i+1
    e=i/4
    balken = e*80/255
    SHOW_BAR(balken)
    LCD.Pos 2,7
    LCD.Print i
    pause 15
  loop until i=gemma

  LCD.CLR
  e=i/4
  balken = e*80/255
  SHOW_BAR(balken)
  LCD.Pos 2,7
  LCD.Print gemma
  Light = on
  pause 10
  Light = off
  pause 10
  Light = on
  pause 10
  Light = off
  pause 10
  Light = on
  pause 10
  Light = off
  pause 50
  LCD.CLR

  if gemma < rekord3 then goto tobad
  if gemma < rekord2 then goto dritter                                          'zuordnen ob der erreichte Wert höher als der momentane Rekord ist
  if gemma < Rekord then goto zweiter
  if gemma > Rekord then goto newrek

#newrek                                                                         ' Neuer Bestwert erreicht
rekord3 = rekord2
rekord2 = Rekord
Rekord = gemma

open for write
 print# Rekord
 print# rekord2
 print# rekord3
close


LCD.POS 1, 2
LCD.print Rekord
LCD.Print " Punkte"
LCD.POS 2, 2
LCD.Print "reichen fuer"
pause 150
LCD.CLR
LCD.Pos 1,2
LCD.Print "Den neuen"
LCD.Pos 2,4
LCD.Print "Rekord!"
pause 150
LCD.CLR
LCD.POS 1, 2
LCD.Print "Herrzlichen"
LCD.Pos 2, 3
LCD.Print "Glueckwunsch"
pause 200
goto INIT

#tobad
LCD.CLR                                                                         ' Unter Bestwert
LCD.Pos 1,2
LCD.Print "Leider keine"
LCD.Pos 2,5
LCD.Print "Platzierung"
pause 200
goto INIT

#zweiter

rekord3 = rekord2                                                               'neuer 2.Platz
rekord2 = gemma

open for write
 print# rekord2
 print# rekord3
close

LCD.Pos 1,2
LCD.Print rekord2
LCD.Print " Punkte"
LCD.Pos 2,2
LCD.Print "reichen fuer"
pause 150
LCD.CLR
LCD.Pos 1,2
LCD.Print "Den neuen"
LCD.Pos 2,4
LCD.Print "2.Platz!"
pause 150
LCD.CLR
LCD.POS 1, 2
LCD.Print "Herrzlichen"
LCD.Pos 2, 3
LCD.Print "Glueckwunsch"
pause 200
goto INIT

#dritter

rekord3 = gemma

open for write
 print# rekord3
close

LCD.Pos 1,2
LCD.Print rekord3
LCD.Print " Punkte"
LCD.Pos 2,2
LCD.Print "reichen fuer"
pause 150
LCD.CLR
LCD.Pos 1,2
LCD.Print "Den neuen"
LCD.Pos 2,4
LCD.Print "3.Platz!"
pause 150
LCD.CLR
LCD.POS 1, 2
LCD.Print "Herrzlichen"
LCD.Pos 2, 3
LCD.Print "Glueckwunsch"
pause 200
goto INIT




#pausehdl
      schlag = ADEingang                                                        'abfragen ob geschlagen wurde und wenn ja sofort zur anzeige des
    if schlag > 10 then goto geschlagen                                         'Schlages wechseln
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    goto pausenhdl


 #pauserek
    schlag = ADEingang                                                          'abfragen ob geschlagen wurde und wenn ja sofort zur anzeige des
    if schlag > 10 then goto geschlagen                                         'Schlages wechseln
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    goto pausenrek


    #pauserek2
    schlag = ADEingang                                                          'abfragen ob geschlagen wurde und wenn ja sofort zur anzeige des
    if schlag > 10 then goto geschlagen                                         'Schlages wechseln
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    goto pausenrek2

    #pauserek3
        schlag = ADEingang                                                          'abfragen ob geschlagen wurde und wenn ja sofort zur anzeige des
    if schlag > 10 then goto geschlagen                                         'Schlages wechseln
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    schlag = ADEingang
    if schlag > 10 then goto geschlagen
    pause 6
    goto pausenrek3

 Antwort schreiben

Bisherige Antworten:

Re: speichern (von das |_ Team - 6.11.2014 18:48)
    Re: speichern (von Kevin K. - 7.11.2014 11:39)
        Re: speichern (von das |_ Team - 8.11.2014 1:20)
Re: speichern (von Dietmar - 6.11.2014 17:31)