Arduino: Hur känna av om SD kort sitter i hållaren?
Arduino: Hur känna av om SD kort sitter i hållaren?
Bygger en liten logger baserad på en Arduino MEGA 2560 som ska lagra all data till ett microSD kort men skulle behöva känna av om minneskortet sitter i sin hållare eller inte.
Har en ethernet modul, den tidigare modellen, med en minneskortshållare men kan inte se att det finns någon pinne eller funktion för det som jag söker. Sökt på nätet men inte hittat många ledtrådar.
Har jag missat något eller är det bara så att jag måste skaffa en annan minneskortshållare med CD SW (eller vad det nu kan heta)?
Har en ethernet modul, den tidigare modellen, med en minneskortshållare men kan inte se att det finns någon pinne eller funktion för det som jag söker. Sökt på nätet men inte hittat många ledtrådar.
Har jag missat något eller är det bara så att jag måste skaffa en annan minneskortshållare med CD SW (eller vad det nu kan heta)?
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Arduino: Hur känna av om SD kort sitter i hållaren?
Nu vet ju jag i praktiken inget om Arduino men det borde väl inte skilja så mycket från andra system.
Ett vanligt sätt att ta reda på om det finns ett SD-kort eller ett USB-minne eller något annat lagringsmedium är att försöka läsa från det.
Om det finns ett filsystem kan man försöka läsa directorystrukturen. Funkar det inte så finns det troligen inget SD-kort.
Om det inte finns ett filsystem får man förhoppningsvis ett fel om man läser när det inte finns ett SD-kort.
Ett vanligt sätt att ta reda på om det finns ett SD-kort eller ett USB-minne eller något annat lagringsmedium är att försöka läsa från det.
Om det finns ett filsystem kan man försöka läsa directorystrukturen. Funkar det inte så finns det troligen inget SD-kort.
Om det inte finns ett filsystem får man förhoppningsvis ett fel om man läser när det inte finns ett SD-kort.
-
- Inlägg: 7812
- Blev medlem: 26 maj 2009, 12:20:37
- Ort: Kristinehamn
Re: Arduino: Hur känna av om SD kort sitter i hållaren?
Eller bara SD.Begin() rakt av, lär returnera false om det inte finns något kort i?
Finns det ingen card detect-pinne så blir det nog svårt att lösa det utan att polla..
Finns det ingen card detect-pinne så blir det nog svårt att lösa det utan att polla..
Re: Arduino: Hur känna av om SD kort sitter i hållaren?
Tack för goda råd!
SD.begin() har jag provat med och det fallerade då det bara gick att initiera kortet en gång, efter det blir det fail. Hittat något om att det är en bugg i lib'et, kan funka att först köra if(root.isOpen()) root.close(); och sedan köra SD.begin() efter det.
SDexist() ska jag prova med!
Är analog i tanken så det här med programmering är lite nytt tänk för min del.
Tanken inombords är väl att det skulle varit enklare att ha möjligheten att kolla ren "fysiskt" med en pinne att om minneskortet inte satt där så kunde man skippa initieringen och direkt tala om att "Inget kort i hållaren. Gör om gör rätt!" och att programmet stannade där tills pinnen för "kort på plats" gick hög så man kunde fortsätta.
Idag kan jag plocka ut kortet under gång och programmet märker inte av det! (Antagligen en bugg som jag själv lyckats ordna med. )
SD.begin() har jag provat med och det fallerade då det bara gick att initiera kortet en gång, efter det blir det fail. Hittat något om att det är en bugg i lib'et, kan funka att först köra if(root.isOpen()) root.close(); och sedan köra SD.begin() efter det.
SDexist() ska jag prova med!
Är analog i tanken så det här med programmering är lite nytt tänk för min del.
Tanken inombords är väl att det skulle varit enklare att ha möjligheten att kolla ren "fysiskt" med en pinne att om minneskortet inte satt där så kunde man skippa initieringen och direkt tala om att "Inget kort i hållaren. Gör om gör rätt!" och att programmet stannade där tills pinnen för "kort på plats" gick hög så man kunde fortsätta.
Idag kan jag plocka ut kortet under gång och programmet märker inte av det! (Antagligen en bugg som jag själv lyckats ordna med. )
- lillahuset
- Gått bort
- Inlägg: 13969
- Blev medlem: 3 juli 2008, 08:13:14
- Ort: Norrköping
Re: Arduino: Hur känna av om SD kort sitter i hållaren?
Om du hanterar fel vid öppning av fil borde du se problemet omedelbart.
Re: Arduino: Hur känna av om SD kort sitter i hållaren?
Processorn och SD kommunicerar med SPI. Och kommunicerar gör de bara när du begär det.
Så att byta kort i flykten kan gå bra. Om det sparas info om kortet som sitter/satt i kan det så klart gå illa...
Korthållare brukar ha en anslutning som indikerar om ett kort sitter i eller ej. Det behöver inte användas,
men om du gör kort och program själv så är det inget som hindrar att kolla en pinne.
Om SD.exists() levererar kommunikationsfel så är det lika bra som något att detektera om kortet sitter i antar jag,
Så att byta kort i flykten kan gå bra. Om det sparas info om kortet som sitter/satt i kan det så klart gå illa...
Korthållare brukar ha en anslutning som indikerar om ett kort sitter i eller ej. Det behöver inte användas,
men om du gör kort och program själv så är det inget som hindrar att kolla en pinne.
Om SD.exists() levererar kommunikationsfel så är det lika bra som något att detektera om kortet sitter i antar jag,