For et projekt skal jeg have noget ekstern hukommelse. Jeg gik efter 1 MB SRAM.

Jeg bruger en STM32, og jeg opdagede FSMC. Jeg havde svært ved at forstå formålet med dette.

Det, jeg læste om det, førte mig til, at det ved at bruge det giver dig en direkte hukommelsesplacering. Så du kan skrive til hukommelsen uden at skulle styre de specifikke ben (som CE, OE, WE …). Det giver dig også mulighed for at skrive / læse til SRAM uden at skulle bruge GPIO skriveregistre, så du er langt hurtigere. (selvfølgelig er der meget flere fordele). Hvis jeg har ret, tror jeg det er en meget god idé at bruge det.

Har jeg ret i at tænke sådan? Fik jeg det helt forkert?

Kommentarer

  • Hvad læste du? Læste du det dedikerede dokument ?
  • Hurtigere? Nej ..
  • Hvorvidt FSMC leverer nogen fordel, afhænger af den STM32, du bruger. F.eks. vil det ikke bruges på noget af værdilinjeproduktet (M2-baseret), men det vil give værdi på det høje performance line med AHB-bussen. Du giver ingen detaljer om din konfiguration, så det er ' umuligt at hjælpe dig.
  • @JackCreasy " M2-baseret "? Jeg ' er ikke sikker på, hvad du ' der henvises til her; der er ikke sådan noget som Cortex-M2. Alle STM32 mikrokontrollere har en AHB, men ikke alle understøtter FSMC.
  • @duskwuff Undskyld ..typo … betød M3-baseret.

Svar

Har jeg ret i at tænke sådan? Fik jeg det helt forkert?

FSMC kan bruges til lagring af data i en ustabil konfiguration. Nogle (ikke alle) STM32 “er FSMC kortlagt til et adresseområde (ved 0x60000000). Brug af en seriel SRAM er bedst til lagring af data, som du ikke har brug for hurtig adgang til. Hvis du bruger det til værdier, der er almindelige i udførelsen, kan det sænke dit program betydeligt.

Du skal stadig konfigurere benene til brug med FSMC og pakke dit hoved rundt om grænsefladen og teste det.

Kommentarer

  • Hej @ laptop2d Sikker på, jeg vil bare bruge til at gemme data fra et kamera, så jeg kan behandle det senere og for nogle billeder til en TFT-skærm. Jeg forstod, at FSMC giver en hukommelsesplacering, så den opfører sig som at skrive til det interne MCU RAM på programmeringssiden. Hvis jeg får det korrekt, er det meget hurtigere for MCU at lade FSMC kontrollere alle stifterne i hardwaren end at prøve at styre alle kommandostifter manuelt, ikke? Btw i ' m ved hjælp af en STM32L496ZG MCU og denne SRAM: cypress.com/file/43811/download
  • Du kunne bruge det som en rom og regne med, at det var langsomt, men det ville være i adresseområdet og ustabilt. Det betyder, at hvis du skulle bruge det til en TFT-skærm, og du havde brug for at hente billedet ofte, ville du have en forsinkelse, hver gang du hentede billedet. FMSC kan være lidt hurtigere, men stadig meget langsommere end RAM, da dataene sendes serielt. meta.stackexchange.com/questions/126180/…

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *