Zapis dat na SD kartu II

Odpovědět
Lojzo
Příspěvky: 3
Registrován: 02 lis 2025, 17:10

Zapis dat na SD kartu II

Příspěvek od Lojzo » 02 lis 2025, 17:32

Zdravím všechny.
Mám vytvořený jednoduchý projekt pro zápis dat na SD kartu. Zařízení mám v úmyslu využít bez trvalého připojení USB kabelu k Arduinu. Teda externě do terénu.
SD karta se aktivuje a logování odstartuje pouze v okamžiku startu Nástroje-Sériový monitor.Jak odstartovat aktivaci SD karty a zápis dat bez nutnosti spouštět Sériový monitor?

AstroMiK
Příspěvky: 654
Registrován: 08 pro 2017, 19:05

Re: Zapis dat na SD kartu II

Příspěvek od AstroMiK » 02 lis 2025, 20:00

Asi by to chtělo trochu detailněji popsat zapojení a alespoň zhruba princip programu.

Z toho současného popisu bych řekl, že program je napsaný tak, že k ukládání na kartu dochází někde na začátku programu.

Při spuštění sériového monitoru se Arduino automaticky resetuje.
Takže bez USB kabelu by mělo stačit stisknout resetovací tlačítko na Arduinu a vyvolá se tím stejný stav.

Lojzo
Příspěvky: 3
Registrován: 02 lis 2025, 17:10

Re: Zapis dat na SD kartu II

Příspěvek od Lojzo » 03 lis 2025, 08:24

Dobrý den.
Kód je funkční až na uvedený problém. Soubor se vytvoří data se ukládají, Led 2 signalizuje vzorkování a Led 4 připravenost karty ale jak jsem se zmínil až po spuštění Sériového monitoru.Kód v příloze.
Přílohy
Odpověd_forum_Arduino.txt
(3.79 KiB) Staženo 12 x

Lojzo
Příspěvky: 3
Registrován: 02 lis 2025, 17:10

Re: Zapis dat na SD kartu II

Příspěvek od Lojzo » 03 lis 2025, 08:25

Zapomněl jsem dodat že Reset nepomáhá.

Uživatelský avatar
kiRRow
Příspěvky: 1327
Registrován: 07 kvě 2019, 07:03
Bydliště: Opava

Re: Zapis dat na SD kartu II

Příspěvek od kiRRow » 03 lis 2025, 19:24

Kód: Vybrat vše

  while (!Serial) {
  } // tohle dej dopryč dej místo toho delay(20);

AstroMiK
Příspěvky: 654
Registrován: 08 pro 2017, 19:05

Re: Zapis dat na SD kartu II

Příspěvek od AstroMiK » 03 lis 2025, 19:41

Vyzkoušel jsem si to postavit na Arduinu NANO a funguje to bez problémů i bez spouštění sériové linky.
A dokonce i bez napájení přes USB (přivedl jsem vnějších 5V na piny 5V a GND na Arduinu).

Při prvním pohledu na program jsem si nebyl moc jistý tou smyčkou:

Kód: Vybrat vše

 while (!Serial) { }
Jestli se tam třeba program nezasekne, ale ne. Funguje to správně.

Když spustím program bez zasunuté karty, tak se správně zastaví ve smyčce:

Kód: Vybrat vše

    while (1);
... ale po zasunutí karty a resetu se normálně program rozjede a data se začnou sypat na kartu

Tak nevím.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti