Stap 7: Gebruik ervan: SD-kaart
Downloaden van de bestanden
U moet het fsrw-object om te lezen/schrijven SD-kaarten. Unzip het naar een nieuwe map op uw bureaublad. Ook inbegrepen is sommige dummy gegevens - kopie data.txt naar uw SD-kaart en plaats de kaart in het touchscreen
Lezing van SD
Hier is een steekproefprogramma;
Ons programma begint met het instellen van de kloksnelheid van de Propeller - 80Mhz. Vervolgens, wij zorgen ervoor dat de fsrw bibliotheek opnemen in de OBJ-sectie. Nu begint ons programma;
sdfat.pgetc
pogingen om een SD-kaart aangesloten op P0 mount... P3. Als het succesvol is, retourneert het sdfat.pclose
, anders sdfat.popen
wordt geretourneerd. Ons programma gaat voorbij aan het resultaat, maar we kunnen gebruiken dat sdfat.unmount gger sommige foutmelding als 'Geen SD kaart gevonden'.
sdfat.popen(string("data.csv", "w")(ssdfat.pputs(data)ng("data.txt"), "r")
Hiermee opent u een bestand dat is opgeslagen in de rootdirectory van de SD-kaart met de naam 'data.txt'. De ' r' fsrw vertelt dat we willen het bestand te openen in de modus alleen-lezen. Dit resulteert ook in sdfat.pclose
op succes en sdfat.unmount
over mislukken, dus we konden gger een foutbericht als het bestand is niet gevonden.
Deze eigenschap retourneert het volgende teken in het momenteel geopende bestand. In dit geval bent wij het opslaan van het teken geretourneerd in de variabele 'r'. Elke keer als we noemen
, de bestands pointer gaat naar het volgende teken.
Wanneer we door middel van het hele bestand gelezen heb, -1 zal terugkeren. Dat is waarom we checken in deze repeat-lus als elk getal onder 0 wordt geretourneerd. We weten dan we bereikt het einde van het bestand en we kunnen gaan.
Sluit het geopende bestand. Nadat het gesloten, we een ander bestand kunnen openen door te bellen naar
en het nieuwe bestand op te geven. Of we kunnen het ontkoppelen van de SD-kaart met
.
Schrijven naar een SD
Hier is onze steekproefprogramma
Beide programma's hebben veel gemeen - eerst wij de kloksnelheid van de Propeller, mount de SD-kaart en een bestand opent. Het eerste verschil is dat wij gebruik maken van (sng("data.csv", "w")
, de 'w' switch vertelt fsrw dat we het bestand in schrijfmodus openen en we gegevens wilt opslaan in het bestand. Als data.csv niet in de rootdirectory van de SD-kaart, fsrw gemaakt.
We gebruiken om te schrijven gegevens, . Wanneer we klaar bent schrijven naar het bestand, annuleerteken wij zuinig op met
. En
unmounts het SD-kaart.