Source von einem einfachen Programm

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
Easter
Posts: 6
Joined: Thu May 24, 2007 4:44 pm

Source von einem einfachen Programm

Post by Easter »

Hallo !

Kann mir bitte jemand ein Programm für den IOWarrior in C++ zeigen ?
Das Programm muss nichts können , nur einen PIN (eine der vorinstallierten LEDs) anschalten.

Ich bräuchte den kompletten Sourcecode , sodass ich ihn compilieren kann.

Würde mich auch erkenntlich zeigen (5€ per PayPal) oder so...




Vielen Dank !
User avatar
Christoph Jung
Posts: 673
Joined: Sun Oct 08, 2006 3:43 pm
Location: Germany / Berlin
Contact:

Post by Christoph Jung »

Also ich an deiner Stelle würde einfach mal das SDK anschauen.
Da sind für c++ Beispiele drin. Einfach mal von unserer Seite runterladen und durchschauen. Kostet auch nix ;)
Software developer
Easter
Posts: 6
Joined: Thu May 24, 2007 4:44 pm

Post by Easter »

Leider verstehe ich noch sehr wenig von C++ , sodass mir die SDK-Programme zu kompliziert sind.

Mir geht es darum, dass ich ein solch' einfaches Programm wohl noch gut überblicken kann, deswegen wär' mir das wichtig einmal ein solches Beispiel komplett zu haben.

Die hier im Board zu findenden Schnipsel sind ja leider nicht compilierfähig sondern immer nur Fragmente.
User avatar
Christoph Jung
Posts: 673
Joined: Sun Oct 08, 2006 3:43 pm
Location: Germany / Berlin
Contact:

Post by Christoph Jung »

Also meines Erachtens sind die Beispiele sehr einfach gehalten. Vor allem wenn es um simples I/O geht. Am einfachsten wäre es, wenn du dir das "Simple IO" Beispiel schnapst und darin / damit mal rumexperimentierst.
Ansonsten kann ich nur empfehlen sich ein wenig C++ auseinander zu setzten um eine Basis zu haben.
Software developer
Easter
Posts: 6
Joined: Thu May 24, 2007 4:44 pm

Post by Easter »

Ja , es scheitert wohl wirklich eher an den C/C++ Kenntnissen.

Könnte mir vllt. trotzdem jemand sagen, wie ich das hier zum Beispiel kompiliert bekomme ?

Code: Select all

#import <Foundation/Foundation.h>
#include "IOWarriorLib.h"

int main (int argc, const char * argv[]) {
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    if(IOWarriorInit()) {
        NSLog(@"IOWarriorInit failed.");
        return 1;
    }
    
    if(!IOWarriorIsPresent()) {
        NSLog(@"No IO Warrior device found.");
        return 2;
    }
    
    data[0]=0x01;
    data[1]=0x00;
    data[2]=0x00;
    data[3]=0x00;
    data[4]=0x00;
    data[5]=0x00;
    data[6]=0x00;
    data[7]=0x00;
    
    IOWarriorWriteInterface1(0x4, data);
    [pool release];
    return 0;
}
Laut Aussage der Weibseite soll das ja schon so funktionieren.


Danke schonmal[/url]
User avatar
Christoph Jung
Posts: 673
Joined: Sun Oct 08, 2006 3:43 pm
Location: Germany / Berlin
Contact:

Post by Christoph Jung »

wo hast du denn das her???
Software developer
Easter
Posts: 6
Joined: Thu May 24, 2007 4:44 pm

Post by Easter »

Easter
Posts: 6
Joined: Thu May 24, 2007 4:44 pm

Post by Easter »

Also wie gesagt, ich hätte unglaublich gerne einen kleinen C/C++ (am liebsten C) Code der dem IO-Warrior ein simples einschalten einer der LEDs entlockt.

Code: Select all

#include <stdio.h>
#include <iowkit.h>

int main(void)
{
    
}
Also das was zwischen die Klammern muss.


Vielen leiben Dank schonmal.
wayoda
Posts: 362
Joined: Fri Dec 19, 2003 12:00 pm
Location: Wuppertal/Germany

Post by wayoda »

Hallo ostern,

auf welchem Betriebssystem soll das denn kompiliert werden?
EDIT
Und für welches Starterkit IOW24 oder 40 oder 56 ?

Eberhard
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Das ist ein Programm fuer MacOS. Da laesst sich unter Windows nichts mit anfangen, da wir das iowkit API noch nicht fuer MacOS haben.

Ich glaube es ist hoffnungslos mit deinem Wissensstand zu C und C++.
Schon hier sind allerlei Ungenauigkeiten enthalten, die ein Compiler mit Warnungen und Fehlern bestraft.

Code: Select all

#include <stdio.h>
#include <iowkit.h>

int main(void)
{
   // eine Funktion muss auch einen Wert zurueckliefern
   return 0;
}

Code: Select all

#include <stdio.h>
// bei den spitzen Klammern sucht der Compiler nicht in der aktuellen Directory nach dem File
#include "iowkit.h"

// das ist die korrekte Deklaration von main
// das ist aber ausnahmsweise nicht tragisch, da man sich bei einem modernen Compiler nur eine Warnung gegen eine andere tauscht

int main(int argc, char *argv[], char *envp[])
{
   
}
Wir haben aber irgendwo ein reines C-Konsolenprogramm. Das ist wohl was Du suchst.
Easter
Posts: 6
Joined: Thu May 24, 2007 4:44 pm

Post by Easter »

Für Windows und einen IOW 40.
Ich muss im Prinzip nur ein Programm schreiben, welches ein Paar LED-Zustände an den IOW schickt. Also so im Prinzip:

Meldung
LED1 = 1 LED2 = 0 LED3=0 LED4 = 1
5 sec pause

Meldung
LED1= 0 LED2 = 1 LED3 = 1 LED4 = 0
5 sec pause

(Ist nur ein Beispiel...)


Ich hatte eigendlich gehofft , dass ein wenig Copy&Paste ausreicht.

Ich brauche ja im Prinzip nur
printf sleep und eben jener IOWarrior Code.

Deswegen möchte ich eben ein kleines Code-Sample haben, welches nichts anderesmacht, als eine LED an/aus zu schalten.
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Da nimmt man Samples\Simple IO\C. Das ist ein C-Beispiel namens IOBlink. Einfacher geht es nur wenn man die Fallunterscheidungen fuer die verschiedenen IOWarrior herausnimmt.
Post Reply