Forum: Mikrocontroller und Digitale Elektronik Problem mit AVR-DOS - Datei immer 0 Bytes


von Sebastian G. (Gast)


Lesenswert?

Hallo!

Ich möchte mittels Bascom und AVR-DOS eine Datei mit einem Mega32 auf 
eine SD-Karte schreiben. Leider hat das Ganze einen kleinen 
Schöheitsfehler. Die erzeugte Datei ist immer 0 Bytes groß, hat also 
keinen Inhalt.

Der Mega32 wird mit 3,3V betrieben und Soft-SPI. Egal ob ich PA.0-3 oder 
PB.0-3 benutze, immer das gleiche Ergebnis.

Config_AVR-DOS ist geändert in:
    const cfilehandles = 1
    const csepfathandle = 0

Da eine Datei angelegt wird, gehe ich davon aus, das die Pins in der 
Config_MMC richtig zugeordnet sind.

Hier ist mein auf das wesentliche reduzierter Code:

'-----------------------------------------------------

$regfile = "m32def.dat"

$crystal = 8000000  ' 11.0592 gl. Ergebnis, aber Probleme RS232
$baud = 9600

Dim Btemp1 As Byte
Dim Zl As Byte
Dim Ff As Byte

Const Filename = "Datei.txt"


$include "Config_MMC_X.bas"

If Gbdriveerror <> 0 Then
   Print "Card Error " ; Gbdriveerror
   End
Else
   Print "Karte erkannt!"
End If


$include "Config_AVR-DOS_X.bas"

Btemp1 = Initfilesystem(1)
If Btemp1 <> 0 Then
   Print "File System Error " ; Btemp1
   End
Else
   Print "Filesystem ok!"
End If



Ff = Freefile()  ' auch bei fester Kanalangabe 1-15 keine Änderung

Open Filename For Append As #ff
     Print #ff , "TEST-TEST"
'Flush #ff    'mit oder ohne Flush keine Änderung
Close #ff

Print "ENDE!"


End

'-----------------------------------------------------

Das Programm läuft durch und gibt -ENDE!- aus, aber Datei ist leer.

Vielleicht hat jemand einen Tipp für mich, wo ich noch suchen kann, oder 
was ich noch verändern muß.

Vien Dank!

Gruß Sebastian

von Sebastian G. (Gast)


Lesenswert?

Fehler selbst gefunden: Stack festgelegt und schon läuft es....

Gruß Sebastian

von Manfred (Gast)


Lesenswert?

Dankeschön,

stand gerade vor dem gleichen problem, mal sehen obs gleich klappt.

Gruß
Manfred

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.