Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Alex, > > > ich habe mir vor einiger Zeit eine C-Control II zugelegt, mir mit der Zeit ein Applicationboard drum herum gebaut > > (alles was ich brauche) und scheiter nun leider so ein wenig an der Programmierung. > > Oft komme ich mit lesen und fragen irgendwie weiter... aber nun bäuchte ich professionelle Hilfe :-) > > Also, ich möchte eine Art Kennfeld erstellen, in dem eine Ausgangsvariable von 2 Eingangsvariablen > > abhängt; ich messe z.B. Spannung 1 und Spannung 2, und mein Ausgabewert ist Spannung 3. Mit dem Stichwort Array > > kam ich via Internetrecherche nur bedingt weiter, da C++ in dieser Hinsicht ja doch etwas anders > > funktioniert und die C-Control laut Handbuch nur eindimensionale Arrays unterstützt. Also kurzum: Ich > > komme als motivierter Laie mit dem Handbuch nur Mühsam zurecht. > > Daher meine Bitte an Euch: Ich erwarte nicht daß mir hier einer ein Programm runterschreibt, aber > > für eine Literaturempfehlung oder noch vielmehr ein BEISPIELPROGRAMM, das diese Problematik bearbeitet, > > wäre ich sehr dankbar! > > Rudimentär gesehen kann die CC2 keine Mehrdimensionalen Arrays. > Technisch gesehen jedoch schon. > Die Frage ist nur, wie groß dieses Array sein muß. > Als Variable kann man beispielsweise ein zweidimensionales Array in C2 folgendermaßen anlegen: > <code> > type meinArray > { > int y[64]; > } > > meinArray x[64]; > </code> > Das wäre ein Beispiel für ein zweidimensionales Integer-Array mit 64 x 64 Feldern. > Und so wird z.B. darauf zugegriffen: > <code> > x[0].y[1]=12345; > x[5].y[4]=6789; > </code> > Sei aber vorsichtig it der Größe. Die CC2 hat "nur" 64kB RAM. > Schon einfache Mehrdimensionale Arrays können sehr groß werden. > Das obige Array hat beispielsweise eine Größe 64 x 64 x 2 Byte= 8192Byte = 8kB > Auf dieselbe Weise könnte man auch dreidimensionale Arrays aufbauen. > Aber hier kommt man sehr schnell an die Grenzen des RAMs, so daß man > dann eher große externe Speciher benötigt. > (Ein dreidimensionales Integer-Array mit z.B. 64 x 64 x 64 Feldern würde 512kB benötigen.) > > Auch über Konstanten-Arrays könnte man mehrere Dimensionen verwirklichen. > Dies jedoch nur über den mathematischen Umweg. > D.h., Du benutzt ein eindimensionales Array als zweidimensionales. > Der Vorteil hier wäre jedoch, daß 128kB für konstanten bereitstehen. Zusätzlich > könnte man zwei komplette Flashsegmente (ebenfalls 128kB) dafür "mißbrauchen". > Ein einfaches Bsp. für ein kleines Konstanten-Array, das zweidimensional genutzt wird: > (5x5 Felder) > <code>const Array[]= 1, 2, 3, 4, 5, > 11,12,13,14,15, > 21,22,23,24,25, > 31,32,33,34,35, > 41,42,43,44,45; > const Offset=5; > > function getArray(int x, int y) returns int > { > return Array[x+(y*Offset)]; > } > </code> > Auf das Array wird dann einfach über die Funktion getArray() zugegriffen: > <code> wert=getArray(0,4); //erste Spalte, fünfte Zeile > </code> > > Die Frage ist aber, ob Du das ganze überhaupt benötigst, oder, ob sich > Deine Aufgabe evtl. auch rechnerisch löschen läßt. > Beschreib' mal grob, was Du vorhast, vielleicht gibt's eine ganz einfache Lösung > unter Verwendung einer Formel. > > MfG André H.