Textdatei lesen - Festplatte ok, CF-Card, USB-Stick nicht

Anonymous
2009-08-25
2009-08-31
  • Anonymous - 2009-08-25

    Originally created by: Michael_W

    Hallo CoDeSys-Spezialisten,

    mal eine Frage, der Effekt kommt mir komisch vor:

    CoDeSys 2.3.11 mit, das ist wichtig: Realtime-SPS.

    Hardware: PC mit ATOM-Prozessor, Win XP emdedded.

    Das ist das Progrämmchen:

    PROGRAM PLC_PRG

    VAR

    file : DWORD := 111;
    
    readBuffer :ARRAY[0..5] OF BYTE;
    
    readed : DWORD:=111;
    

    END_VAR

    readBuffer [0] := 0;

    file := SysFileOpen( 'c:\test.txt', 'r' );

    readed := SysFileRead( file, ADR(readBuffer), 5);

    SysFileClose( file );

    Ist die Textdatei auf einer Festplatte, dann funktionierts.

    Von USB-Stick oder CF-Card aber nicht, dann kommt ein

    ungültiger File-Handle (immer 4294967295).

    Kann die 3S-RT-SPS das Laufwerk nicht als PC-Kompatibel erkennen?

    Auch von der USB-Festplatte ist Lesen unmöglich.

    Hat jemand eine Idee, oder ist der Grund wohlmöglich ein anderer?

    SysLibFile.lib 2.4.0.6

    3S-RT-SPS 2.3.7.5

    Dank für jede Hilfe.

    viele Grüße

    Michael

     
  • Erik Böhm - 2009-08-26

    Moin

    Hab das grade mal auf der RTE nachgestellt, bei mir gehts.

    Die Datei test.txt mit Inhalt "Hallo" auf C erstellt und eingelesen -> geht.

    readed = 5

    Datei auf den USB-Stick kopiert - Pfad im Projekt auf f:\test.txt geändert.

    Download -> Alles laden -> Start SPS -> Geht auch.

    readed wieder 5

    Gruss

    Erik

     
  • Erik Böhm - 2009-08-26

    Noch n Screenshot meines Versuches anbei.

    IMG: ReadFileSample.JPG

     
  • Erik Böhm - 2009-08-26

    Noch was übersehen...

    Ich hab auch kein Embedded, sondern 'normales' XP.

    Damit schon mal den selben Versuch gemacht ?

    Aufm Laptop oder so ?

    Evtl. liegts am Mounten der externen Laufwerke unter Embedded.

    Gruss

    Erik

     
  • Anonymous - 2009-08-27

    Originally created by: Michael_W

    Hallo Erik,

    danke für den Tipp und die Mühe, es auszuprobieren.

    Wenn ich darüber nachdenke, decken sich deine Vermutungen mit meinen.

    Auf XP läufts, auf XP embededed nicht. Auf zwei Kisten mit XP embedded getestet.

    Tja, die Frage ist nur, was tun. Die Textdateien kann ich mit z.B. dem Editor von MS natürlich unter XP embedded öffnen, bloß CoDeSys wills nicht...

    Wie kann man das mounten bei XP beeinflussen? Sollte sich eigentlich nicht von XP unterscheiden - sollte man meinen.

    viele Fragen und Stoff zum testen

    Falls noch jemand eine Idee hat, immer her damit.

    viele Grüße

    Michael

     
  • Erik Böhm - 2009-08-28

    Moin

    Ich hab leider kein Embedded Gerät.

    Schon mal dirket beim 3S Support nachgefragt ?

    Die müssten das doch auch wissen, bzw. testen können.

    Ich habs auch noch auf einer Linux Kiste getestet, auch das funktioniert.

    Gruss

    Erik

     
  • Anonymous - 2009-08-31

    Originally created by: Michael_W

    Hallo,

    Ich habe nun - mit meinen Möglichkeiten - systematisch folgendes herausgefunden:

    Textdatei | Betriebssystem | Betriebssystem

    lesen von | XP "normal" | XP embedded


    Festplatte | ja, funktioniert | nicht getestet

    CF-Card | Lesen nicht möglich | Lesen nicht möglich

    USB-Stick

    1GB (alt) | lesen nicht möglich | lesen nicht möglich

    Usb-STICK

    (8GB) | ja, funktioniert | ja, funktioniert

    USB-Festplatte

    Trekstor 160 GB | lesen nicht möglich | lesen nicht möglich


    Scheint also letztlich ein Problem des Treibers und nicht des Betreissystems zu sein. Ic h behelfe mich während der Programmierung bisher so, dass ich einen funktionierenden USB-Stick (8GB) verwende, aber für das letztlich entstehende Produkt muss eine Lösung her, dort soll keine Festplatte, sondern nur eine CF-Karte als Massenspeicher dienen.

    Heute habe ich, um eine neues und freies USB-Stick zu haben, einen SanDisk Cruzer Micro USB 2.0 -Stick mit 4 GB RAM gekauft. Auch der läuft NICHT. Pech gehabt.... alles Glückssache.

    Supportanfrage bei 3S läuft...

    viele Grüße

    Michael

     

Log in to post a comment.