Embedded systemen en firmware

Leer met meerkeuzevragen de basis van embedded systemen en firmware, zoals registerbewerkingen en bitbewerkingen, GPIO en timers, aandachtspunten bij interrupthandlers, UART, SPI en I2C, RTOS en watchdogs.

Oefen 10 vragenWillekeurige vragen uit dit onderwerp · ongeveer 5 minuten Dit onderwerp oefenenAlle vragen over dit onderwerp in willekeurige volgorde Zwakke vragenAlleen de laatst fout beantwoorde vragen opnieuw oefenen

Embedded systemen en firmware: kernpunten

In huishoudelijke apparaten, auto's en industriële machines bestuurt firmware die op een microcontroller draait het apparaat. Firmware leest en schrijft direct de registers van randapparatuur, bewerkt met bitbewerkingen alleen bepaalde bits en stuurt zo de in- en uitvoer van pinnen (GPIO), timers en communicatieschakelingen aan.

Voor interrupthandlers gelden specifieke aandachtspunten, zoals de verwerking kort houden en gedeelde variabelen als volatile declareren. U leert de softwaremechanismen die het dichtst bij de hardware staan: communicatie via UART, SPI en I2C, een RTOS dat taken op prioriteit afwisselt, de bootloader die als eerste draait bij het inschakelen en de watchdog die helpt bij herstel van een vastgelopen systeem.

Alle vragen over Embedded systemen en firmware (50)

  1. Welke schrijfwijze in C zet alleen bit 3 van register reg op 1 en laat de overige bits ongewijzigd?
  2. Welke schrijfwijze in C zet alleen bit 3 van register reg op 0 en laat de overige bits ongewijzigd?
  3. Een bit van een uitgangspoort waarop een LED is aangesloten, moet bij elke uitvoering tussen aan en uit wisselen. Welke schrijfwijze in C is juist?
  4. Welke voorwaarde in C test of bit 5 van invoerregister in gelijk is aan 1?
  5. De bovenstaande code herschrijft een instelveld van meerdere bits in register reg. Wat gebeurt er?
  6. Terwijl het hoofdprogramma een registerbit bewerkt met "reg |= mask;" (lezen, wijzigen, schrijven), wijzigt een interrupthandler een ander bit van hetzelfde register. Welke combinatie van mogelijk probleem en tegenmaatregel is juist?
  7. Aan een ingangspin van een microcontroller is alleen een schakelaar aangesloten, zonder pull-up- of pull-downweerstand. Wat kan er gebeuren als de schakelaar open is?
  8. Wat moet als eerste worden ingesteld wanneer een GPIO-pin (general-purpose input/output) van een microcontroller wordt gebruikt?
  9. Hoe heet het verschijnsel dat bij het indrukken van een mechanische schakelaar de contacten licht stuiteren en in korte tijd meerdere keren aan en uit gaan?
  10. Welke methode is het meest geschikt om contactdender van een schakelaar met software te verwijderen?
  11. Een klok van 16 MHz wordt door een prescaler door 16 gedeeld en daarmee telt een timer; de timer is zo ingesteld dat bij elke 1000 tellen een interrupt optreedt. Wat is het interval tussen de interrupts?
  12. Bij een PWM-signaal met een periode van 1000 tellen staat de uitgang slechts gedurende 250 tellen van elke periode op 1 (High). Wat is de dutycycle?
  13. Welke methode wordt bij microcontrollers veel gebruikt om de helderheid van een LED of het toerental van een motor te regelen?
  14. Wat is de juiste toepassing van de input-capturefunctie van een timer in een microcontroller?
  15. Wat moet in een interrupthandler het meest worden vermeden?
  16. Wanneer het bovenstaande programma met optimalisatie wordt gecompileerd, wordt led_on() soms niet aangeroepen, ook al treedt de timerinterrupt op. Welke combinatie van oorzaak en tegenmaatregel is juist?
  17. Bij een 8-bits microcontroller verhoogt een timerinterrupt een 32-bits variabele ticks met 1 en berekent het hoofdprogramma de verstreken tijd door ticks te lezen. Wat is de juiste oorzaak van het soms lezen van een sterk afwijkende waarde?
  18. Welke eigenschap van seriële communicatie via UART is juist?
  19. Bij een UART van 115200 bps en het formaat met 8 databits, geen pariteit en 1 stopbit (8N1), hoeveel bytes per seconde kunnen er ongeveer worden verzonden?
  20. Bij UART kan een klein verschil in baudrate tussen zender en ontvanger tekenfouten veroorzaken. Waarom is de toelaatbare afwijking beperkt tot ongeveer enkele procenten?
  21. Welke eigenschap van SPI-communicatie is juist?
  22. Welke combinatie van de vier signalen die gewoonlijk bij SPI worden gebruikt, is juist?
  23. Wat moet het eerst worden gecontroleerd wanneer na het aansluiten van een SPI-onderdeel geen correcte gegevens kunnen worden gelezen?
  24. Welke eigenschap van I2C-communicatie is juist?
  25. Hoe geeft bij I2C de ontvangende partij aan dat een byte aan gegevens is ontvangen?
  26. Twee I2C-temperatuursensoren van hetzelfde type moeten op dezelfde I2C-lijnen worden aangesloten, maar beide hebben hetzelfde adres. Welke tegenmaatregel is juist?
  27. Welke vergelijking van UART, SPI en I2C is juist?
  28. Wat is het juiste verschil tussen polling en interrupts als methoden om de toestand van een randschakeling te kennen?
  29. Welke beschrijving van de "superlus" (super loop), zoals veel gezien in programma's van microcontrollers zonder besturingssysteem, is juist?
  30. Wat is het belangrijkste doel van het gebruik van een RTOS (real-time besturingssysteem) in embedded apparatuur?
  31. Bij een preëmptief RTOS ontvangt een taak met hoge prioriteit, terwijl een taak met lage prioriteit draait, de gegevens waarop hij wachtte en kan hij worden uitgevoerd. Wat gebeurt er gewoonlijk?
  32. Welke uitspraak over prioriteitsinversie bij een RTOS is juist?
  33. Welke gedachte ligt achter "prioriteitsovererving" (priority inheritance), dat wordt gebruikt om prioriteitsinversie te voorkomen?
  34. Wat is het voordeel van een wachtrij (berichtenwachtrij) bij het doorgeven van gegevens van een taak die een sensor leest aan een taak die weergeeft in een RTOS?
  35. Welk verschil tussen hard real-time en soft real-time is juist?
  36. Waarom is het niet goed om het resetten (kicken) van de watchdogtimer onvoorwaardelijk uit te voeren in een timerinterrupthandler die elke 1 ms optreedt?
  37. Welke uitspraak over de rol van de bootloader van embedded apparatuur is juist?
  38. Waarom worden bij apparaten waarvan de firmware draadloos wordt bijgewerkt (OTA-update) in het flashgeheugen twee plaatsen (vlak A en vlak B) voor de firmware voorzien?
  39. Wat is het belangrijkste doel van de slaapmodus van een microcontroller in een apparaat op batterijen?
  40. Een sensorapparaat werkt slechts 1 % van de tijd met 10 mA en slaapt de overige 99 % van de tijd met 10 µA. Wat komt het dichtst bij de gemiddelde stroom?
  41. Wat is de juiste reden dat in de firmware van kleine microcontrollers vaak dynamische geheugenreservering zoals malloc wordt vermeden?
  42. Waarop moet worden gelet met betrekking tot overmatig stackgebruik bij een kleine microcontroller zonder MMU?
  43. Bij een 12-bits AD-omzetter met een referentiespanning van 3,3 V is de uitgelezen waarde 2048. Wat komt het dichtst bij de ingangsspanning?
  44. Wat is het voordeel van het gebruik van DMA wanneer een microcontroller een grote hoeveelheid AD-omzettingsresultaten met vaste tussenpozen inleest?
  45. Waarop moet worden gelet wanneer in C met een structuur met bitvelden de registers van een randschakeling worden voorgesteld?
  46. Welk voordeel heeft het declareren van een grote, ongewijzigde tabel (zoals lettertypegegevens) met const bij veel microcontrollers?
  47. Wat kan met debuginterfaces zoals JTAG en SWD worden gedaan?
  48. Een bepaalde besturingsberekening moet elke 1 ms worden uitgevoerd. Welke implementatie op een microcontroller zonder besturingssysteem is het meest geschikt?
  49. Wat is de juiste rol van brown-outdetectie (BOD, brown-outreset) van een microcontroller?
  50. 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)?

Vergelijkingen bij dit onderwerp

Andere onderwerpen in Computersystemen