Seite 4 von 10

Re: mini FTP

Verfasst: Do 2. Aug 2012, 21:56
von PIC18F2550
Habe erst ein mal Page404 eingefügt :mrgreen:.

Die Seitenerkennung habe ich weiter verbessert.

Und die Grundstrucktur der Webseite auf der SD-Karte eingerichtet so das ich demnächst das FAT-System ansprechen kann.

Re: mini FTP

Verfasst: Fr 3. Aug 2012, 02:34
von PIC18F2550
Habe SD-Karte hinzugefügt "fsrw.spin".
Bildschirmfoto.png
Als nächstes steht der Verzeichniswechsel an.

Re: mini FTP

Verfasst: Fr 3. Aug 2012, 03:30
von PIC18F2550
Eine datei wird geladen. :mrgreen:
Bildschirmfoto-PIC18F2550 WEB-Server - Mozilla Firefox.png
:mrgreen: :mrgreen: :mrgreen:

Re: mini FTP

Verfasst: Fr 3. Aug 2012, 13:04
von PIC18F2550
Die Verzeichnisse machen ein ganz schön zu schaffen.
AN006: FAT16/FAT32 Full File System Driver erkennt die SD-Karte plötzlich nicht mehr ging aber schon mal und habe nichts drann verändert.

Code: Alles auswählen

  ic:=sdfat.fatEngineStart( DO, CLK, DI, CS, -1, -1, -1, -1, -1)
  if ic < 0                                           
    ser.writeString(string(13))                                        
    ser.writeString(string("Die Micro SD Card wurde nicht gefunden!"))       
    ser.writeString(string(13))                                        
    ser.writeString(string("Stecken Sie die Karte ein, oder prüfen sie die Verbindungen.")) 
    ser.writeString(string(13))                                        
    ser.writeString(string("Drücken Sie nach einlegen des Speichermediums die Resettaste."))
    ser.writeString(string(13))                                       
    repeat                                                      
  ser.writeString(string(13))
  ser.writeString(string("Micro SD card Ready."))                 
  ser.writeString(string(13))
fsrw erkennt die selbe SD-karte immer noch. :(

Re: mini FTP

Verfasst: Fr 3. Aug 2012, 13:31
von drohne235
Du bist ja richtig fleißig hier! :)

Zum Thema Verzeichnisse: Korrigiere mich, aber ich hatte in Erinnerung, dass es beim fsrw keine Unterverzeichnisse gab, weshalb wir damals zur FATEngine gewechselt sind. Kann sich aber mittlerweile geändert haben bei den letzten Versionen.

Re: mini FTP

Verfasst: Fr 3. Aug 2012, 14:07
von PIC18F2550
warum bleibt das Ding hier hängen " ic := \sdfat.mountPartition(0,0)" :evil:

:shock: Betriebsblindheit "sdfat.FATEngine" fehlte :)

Re: mini FTP

Verfasst: Fr 3. Aug 2012, 15:19
von PIC18F2550
Eine schwere Geburt aber jetzt geht die SD-Karte. :D

Code: Alles auswählen

  ser.start(31,30,115200)
  ser.writeString(string("Power ON",$0D))
  sdfat.FATEngine
'  repeat 800_000
  ic := \sdfat.mountPartition(0,0)
  if ic==0
    ser.writeString(string("Micro SD card Ready.",$0D))
    ser.writeString(string("Micro SD card Mount Partition 0.",$0D))
  else
    ERRtxt(ic)
    repeat
  dmarker[RMARKER] := sdfat.getDirCluster              'root-marker merken
'  sdfat.setDirCluster(dmarker[RMARKER])               'root-marker wieder aktivieren
  ser.writeString(string("SET ROOT Directory",$0D))
'  ic := \sdfat.changeDirectory(string("A"))

  ic:=sdfat.openFile(string("LIZENZ.TXT"), "r")
  if ic == 0
    fg := sdfat.listSize + 1
    repeat ic from 0 to fg
      TEXT[ic]:=\sdfat.readCharacter
  else
    ser.writeString(string("Datei nicht gefunden!"))
    ser.writeString(string(13))
    repeat

'   Init the TCP/IP driver
'               cs  sck si  so  int xtalout macptr      ipconfigptr
  sock.start(   14, 15, 16, 17,  18, -1,      @mac_addr,  @ip_addr)
  cognew(webserver, @webstack)                          ' Start the webserver cog

  ser.writeString(string("Server Running",$0D))
  repeat

Re: mini FTP

Verfasst: Sa 4. Aug 2012, 10:00
von PIC18F2550
Kleiner denkfehler. :evil:

Code: Alles auswählen

OBJ
  sock[3]       : "api_telnet_serial"
  str           : "util_strings"
  ser           : "TFullDuplexSerial"
  sdfat         : "adm-fat"

CON
  pathMax = 64

VAR
  byte path[pathMax]            'Verzeichnis aktuelle Seite wenn 0 dan 1.seite

Code: Alles auswählen

PRI pageout(sockidx)| a, b, c, d, e, i
  'öffnen pfad
  ser.writeString(@path)
  ser.writeString(string($0D))
  sdfat.setDirCluster(dmarker[RMARKER])               'root-marker wieder aktivieren
'  i := \sdfat.changeDirectory(string("A"))               'geht
  path[0]:="A"
  path[1]:=0
  i := \sdfat.changeDirectory(@path)                    'geht nicht
  ifnot i==0
    ERRtxt(i)
    sock[sockidx].str(@S404)
    return 0
    'öffne ini
    'öffne txt
  sock[sockidx].str(@S__1)
  sock[sockidx].str(@S__2)
  sock[sockidx].str(@S__3)
  sock[sockidx].str(@S__4)
  return 0
Wo ist der Fehler

Re: mini WEB-Server (alt mini FTP)

Verfasst: Sa 4. Aug 2012, 13:00
von PIC18F2550
Sollte das nicht das gleiche sein ? :cry:

Code: Alles auswählen

  i := \sdfat.changeDirectory(string("A"))

Code: Alles auswählen

  path[0]:="A"
  path[1]:=0
  i := \sdfat.changeDirectory(@path)

Re: mini WEB-Server (alt mini FTP)

Verfasst: So 5. Aug 2012, 00:23
von PIC18F2550
Eine schrwere Geburt aber jetzt habe ich warscheinlich das system verstanden.

1. von "adm-fat.spin" habe ich mich schweren Herzens getrennt.
2. mit "SD-MMC_FATEngine.spin" konnte ich mein Verzeichnisproplem lösen.

Und ein paar Bilder.
Die 1. Seite mit dem Butten auf Seite A
Die 1. Seite mit dem Butten auf Seite A
Die Seite A mit Seitenname aus der index.ini datei
Die Seite A mit Seitenname aus der index.ini datei
:mrgreen: :mrgreen: :mrgreen: