Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

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.
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB