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: Ein stück lesen und dann KONKRETE Frage stellen Kategorie: C-Control I V1.1 (von Peter - 11.12.2004 20:26)
 Als Antwort auf Ein stück lesen und dann KONKRETE Frage stellen von sl - 10.12.2004 23:04

> Hallo Peter,
>
> Deine Beschreibung mit Speicherplatz lässt mich vermuten dass Du Dir das abspeichern der Werte
> anders vorstellst als es in Programmiersprachen (so auch in cc-basic) tatsächlich gemacht wird.
Da hast du sicherlich recht.......
>
> Speicherplatz lässt mich vermuten, dass Du Dir das ähnlich wie einem Fernseher vorstellst wo man
> die Programme (=Frequenzen) auf einen bestimmten "Speicherplatz"  = Programmplatz speichert
Auch bei dieser Vermutung hast du recht.......
>
> Diese Vorstellung ist fĂĽrs Programmieren wenig hilfreich. Vor allem weil sowas nicht mit ein, zwei Befehlen
> zu realisieren ist, sondern mit einem kleinen Unterprogramm das mehr als zwei Befehle enthält.
Habe auch nicht sowas behaupten können weil das ja eigentlich meine Frage war.......
>
> erst mal Kommentare die das Programm erläutern sollen (ob Du es schon verstehst ist eine zwete Frage):

Danke ,wirklich nett von Dir ,aber das schweift erstmal von meiner eigentlichen Frage ab ........


>
> define TasterA1 port[1] 'gebe dem Hardware-Eingang "1" den Namen "TasterA1"
> define TasterA2 port[2] 'gebe dem Hardware-Eingang "2" den Namen "TasterA2"
>
> define TasterB1 port[3] 'gebe dem Hardware-Eingang "3" den Namen "TasterB1"
> define TasterB2 port[4] 'gebe dem Hardware-Eingang "4" den Namen "TasterB2"
>
> define AusgangA DA[1] 'gebe dem Hardware-AALOG-Ausgang "1" den Namen "AusgangA"
> define AusgangB DA[2]  'gebe dem Hardware-AALOG-Ausgang "2" den Namen "AusgangB"
> define WertA word   'definiere eine Variable mit Namen "WertA"
> define WertB word    'definiere eine Variable mit Namen "WertB"
>
>
> WertA = 0 'setze die Variable names "WertA" auf den Wert 0
> WertB = 0 'setze die Variable names "WertB" auf den Wert 0
>
> #Loop 'definiere die Zeichenfolge "loop" als "Programmstellenmarkierung"
>
>   if (Not TasterA1) then WertA = WertA - 1 'wenn am Eingang namens "TasterA1" 0V anliegen mache folgendes:
>
> nimm den aktuellen Wert der Variable namens "WertA" und ziehe von diesem den Wert "1" ab
>
> speichere das Ergebnis in der Variable namens "WertA"
>
> das bedeutet immer wenn der Taster der am Eingang "TasterA1" (entspricht Hardwareeingang "1" = port[1]
> dann wird der Wert der Variable namens "WertA" um eins verkleinert
>
>   if (Not TasterA2) then WertA = WertA + 1
>   if (Not TasterB1) then WertB = WertB - 1
>   if (Not TasterB2) then WertB = WertB + 1
>
>   if WertA < 0 then WertA = 0 ' wenn aus der Berechung oben ein Wert kleiner als null entstanden ist
> setze den Wert auf 0
>
>   if WertA > 255 then WertA = 255  ' wenn aus der Berechung oben ein Wert grösser als 255 entstanden ist
> setze den Wert auf 255
>
>   if WertB < 0 then WertB = 0
>   if WertB > 255 then WertB = 255
>
>
>   AusgangA = WertA 'setze den Analogausgang namens "AusgangA" auf den Wert der Variable "WertA"
>
>   AusgangB = WertB 'setze den Analogausgang namens "AusgangB" auf den Wert der Variable "WertB"
>
> goto Loop 'springe zu Programmstellenmarkierung namens "loop"
>
> end
>
> so das ist jetzt erst mal ne grobe Beschreibung was die einzelnen Programmzeilen machen
>
> Die Namen die dabei verwendet werden enthalten typische "Anfängerfehler"

Tut mir leid , ich habe das Programm im Buch MSR von Burkhard Kainka gefunden ,und als Anfänger
habe ich nicht damit gerechnet ,dass das Buch also demnach nicht so gut für Anfänger geeignet ist!


> keine Frage das Programm funktioniert. Fehler insofern das die Namen schlecht verständlich sind

Stimmt habe es heute ausprobiert ,es tut ....

>
> Jetzt werden mir gleich etliche Programmier-"Profis" widersprechen
>
> "wieso wenn man's drauf hat dann versteht man das doch ?"
>
> Meine Meinung dazu: der richtige Profi vergibt selbsterklärende Namen
> damit er auch in 10 Jahren noch ein Programm mit 25.000 ! richtig gelesen fĂĽnfundzwanzigTAUSEND !!

Da muss ich dir auch recht geben ,die Idee ist gut ,aber auch sowas muss ich noch lernen !


> Zeilen versteht. (Das ist die Grössenordnung mit der ich es beruflich zu tun habe)

Dann nochmal zu meiner Frage , wird es möglich sein (oder überhaupt) in meine C-Control 1 eine oder mehrere Tasten ,womit man dann die Werte abspeichern kann einzubinden ??

> Und das geht nur mit selbsterklärenden Namen und ergänzenden Kommentaren
>
> so jetzt dasselbe Programm auf diese Art

ja danke ,aber lieber erst mal meine Frage .......
>
> define Taste_gedrueckt OFF
> ' wenn Taste gedrueckt wird liegt am Eingang 0 Volt an. 0Volt hat den "Digitalwert" "OFF"
> der Digitalwert "OFF" entspricht  = not Digitalwert "ON"
>
> define Taster_SteuerwertA_kleiner port[1]
> define Taster_SteuerwertA_groesser port[2]
>
> define Taster_SteuerwertB_kleiner port[3]
> define Taster_SteuerwertB_groesser port[4]
>
> define AusgangA DA[1]
> define AusgangB DA[2]
>
> define SteuerwertA word
> define SteuerwertB word
>
>
> SteuerwertA = 0
> SteuerwertB = 0
>
> #Schleifen_Anfang
>
>   if Taster_SteuerwertA_kleiner = Taste_gedrueckt then SteuerwertA = SteuerwertA - 1
>
>   if Taster_SteuerwertA_groesser = Taste_gedrueckt then SteuerwertA = SteuerwertA + 1
>
>   if Taster_SteuerwertB_kleiner = Taste_gedrueckt then SteuerwertB= SteuerwertB - 1
>
>   if Taster_SteuerwertB_groesser = Taste_gedrueckt then SteuerwertB = SteuerwertB + 1
>
>   if SteuerwertA  < 0 then SteuerwertA  = 0
>   if SteuerwertA  > 255 then SteuerwertA  = 255
>
>   if SteuerwertB < 0 then SteuerwertB = 0
>   if SteuerwertB > 255 then SteuerwertB = 255
>
>   AusgangA = SteuerwertA  
>   AusgangB = SteuerwertB
>
> goto Schleifen_Anfang
>
> end
>
> damit wird es schon ein bisschen besser verständlich was das bisherige Programm macht
>
> Werte speichern funktioniert ĂĽber das Stichwort "speicher"
>
> gib "speicher" in die Suchfunktion der Hilfe der C-Control-PC-Software ein

Da steht bei mir leider nix davon drin ........

> lies, probiere evtl. selber etwas aus und dann stelle eine KONKRETE Frage


>
> Das dürfte eines der längeren Postings sein die in diesem Forum geschrieben wurden
> und dennoch erklärt es noch nicht alles.

Stimmt habe auch da nix gefunden .......
>
> Ganz offen und ehrlich: ich habe jetzt keinen Bock


das verstehe ich auch vollkommen ,das wollte ich auch nicht ,.....
es hätte schlicht und einfach gereicht ,wenn du mir gesagt hättest wie man eine Speichertaste
in das kleine Progrämmchen einbindet ,oder einen Ansatz davon ,wäre bestimmt mit 4 oder 5 Zeilen
erledigt gewesen ......weiss nicht ,aber so gross wird mein Problem doch nicht sein ......
....na bestimmt weniger als 25000 Zeilen .



> Dir hier einen kompletten Basickurs reinzutasten noch ein fertiges Programm und da ich nicht
> hellsehen kann was Du durch nachlesen verstehst bzw. wie ausführlich die Erklärungen sein müssen.
>
> Deshalb musst Du Dich jetz schon bequemen das oben geschriebene mal nachzulsen und dann wieder
>  KONKRETE Fragen zu posten
>
> KONKRETE Fragen zu beantworten macht nämlich Spass

Ja ich glaub wirklich du liebst Spass sehr gegenüber Anfängern ........
nur ,ob die das auch so sehen ????
>
> so long
>
> sl
>
>
>
> >
> > >
> > > > Habe hier ein kleines Programm für die Ansteuerung der PWM Ausgänge gefunden .Leider hat das Programm keine Möglichkeit die eingestellten Werte abzuspeichern.Da ich absoluter Beginner bin ,weiss ich mir hier nicht zu helfen .Vielleicht kann mir jemand einen Tip geben ,wie man die beiden Werte A und B zusammen auf eine weitere Taste abspeichern kann .Beim Start der C-Control sollte dann der Wert der ersten Speichertaste in Kraft treten !
> > > > Weitere Speichertasten (wenn möglich ) wäre toll , wie soll ich`s machen .
> > >

 Antwort schreiben

Bisherige Antworten:

Re: Ein stück lesen und dann KONKRETE Frage stellen (von Stefan Tappertzhofen - 11.12.2004 21:04)