Embedded systemen en firmware

Welk voordeel heeft het declareren van een grote, ongewijzigde tabel (zoals lettertypegegevens) met const bij veel microcontrollers?

  1. ADe tabel staat in het flashgeheugen en neemt geen van het schaarse RAM in beslag
  2. BDe inhoud van de tabel wordt automatisch gecomprimeerd
  3. CDe inhoud van de tabel kan tijdens de uitvoering vrij worden herschreven
Antwoord en toelichting tonen

Antwoord: A. De tabel staat in het flashgeheugen en neemt geen van het schaarse RAM in beslag

Bij microcontrollers heeft het flashgeheugen voor het programma vaak enkele honderden KB, maar het RAM slechts enkele tientallen KB. Een array met beginwaarden zonder const komt in .data terecht en wordt bij het opstarten uit het flashgeheugen naar RAM gekopieerd, dus gebruikt RAM. Met const kan het als alleen-lezen gegevens in het flashgeheugen blijven staan en toch worden gelezen. Bij sommige microcontrollers is voor plaatsing in flash een speciale aanduiding nodig.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Embedded systemen en firmware

  1. Wat kan met debuginterfaces zoals JTAG en SWD worden gedaan?
  2. Een bepaalde besturingsberekening moet elke 1 ms worden uitgevoerd. Welke implementatie op een microcontroller zonder besturingssysteem is het meest geschikt?
  3. Wat is de juiste rol van brown-outdetectie (BOD, brown-outreset) van een microcontroller?
  4. Bij een microcontroller waarbij interrupts een prioriteit kunnen krijgen, treedt een interrupt met hoge prioriteit op tijdens de uitvoering van de handler van een interrupt met lage prioriteit. Wat gebeurt er gewoonlijk (uitgaande van een instelling die nesten van interrupts toestaat)?
  5. Welke schrijfwijze in C zet alleen bit 3 van register reg op 1 en laat de overige bits ongewijzigd?

Vergelijkingen bij dit onderwerp