Overordnede kursusmål
Kurset introducerer den studerende til mikrocontrolleren med det
formål at opbygge prototyper af digitale målesystemer. En Arduino
Uno R3 mikrocontroller bruges til at digitalisere sensorsignaler,
til at registrere brugerinput og til at styre motorer, displays og
andre enheder.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
- forklare arkitekturen af ATmega 328p mikrocontrolleren og
formålet med ALU, registre, programtæller samt typer og brug af
hukommelser inkluderet i ATmega 328p.
- forklare principperne for de binære og hexadecimale talsystemer
og forklare den binære repræsentation af de variabletyper, der er
tilgængelige i standard C og Arduino C.
- forklare og kunne bruge alle variabeltyper, der er tilgængelige
i standard C og Arduino C og kunne anvende type casting.
- skrive programmer ved hjælp af Arduino C og standard C, og gøre
brug af conditionals (if, case/switch, ?: operator),
løkke-strukturer (for, while, do while), bruger-definerede
funktioner og pointers.
- skrive programmer, der kan udføre simple matematiske
beregninger ved hjælp af de indbyggede matematiske funktioner.
- slette og sætte bit i registre ved hjælp af bit-operatorer i
standard C.
- programmere Arduino Uno R3 til at kommunikere med LCD-skærme,
LED'er, trykknapper og håndtere problemer som kontaktprel og
pull-up/pull-down modstande.
- programmere en Arduino Uno R3 til at kommunikere med serielle
perifere enheder ved hjælp af I2C-protokollen.
- forklare princippet for den successive approximation
analog-til-digital konverter (ADC).
- forklare ydelsesparametrene for ADC'en og programmere den
til at digitalisere lavfrekvente sensorsignaler.
- forklare princippet om pulsbreddemodulation (pwm) og bruge
dette til at styre LED-lysintensiteten og til at styre en
jævnstrømsmotor.
- efterleve reglerne for deltagelse i laboratorieøvelser,
herunder at møde til tiden, vise hensyn til medstuderende, undgå at
ødelægge udstyr og komponenter og rydde arbejdspladsen op efter
endt øvelse.
Kursusindhold
Sensorteknologier: Termistorer, tryksensorer og lysfølsomme
modstande.
Digitale systemer: Arduino Uno R3 system, ATmega 328P
mikrokontroller, trykknapper LCD display, LED, RGB LED, DC motorer,
digitalisering af lavfrekvente signaler.
Programmering i standard C: Typedeklarering, matematiske
operationer, brugerdefinerede funktioner, for og while løkker, if
blokke, bit manipulation med Arduino C og med C. Læsning fra og
skrivning til mikrokontrollerens registre. Introduktion til
pointers.
Litteraturhenvisninger
M. Margolis et al. Arduino Cookbook, 3rd ed. O'Reilly.
J. Purdum, Beginning C for Arduino, 2nd ed. tia. E-bog, DTU
bibliotek.
S.F. Barrett, Arduino Microcontroller Processing for Everyone,
M&C. E-bog, DTU bibliotek.
B. Evans, Beginning Arduino Programming, tia. E-bog, DTU bibliotek.
J.A. Langbridge, Arduino sketches. Wiley. E-bog, DTU bibliotek.
MicroChip, megaAVR data Sheet.
Bemærkninger
Et obligatorisk retningskursus i bacheloruddannelsen Medicin og
Teknologi. Kursusdeltagere skal købe og medbringe sit eget Arduino
Starterkit. Det anbefales at købe kittet "Elegoo - The most
complete starter kit for UNO" flere måneder føre
semesterstart. En Arduino Uno R4 kan ikke bruges, da den adskiller
sig helt fra den microcontroller, der undervises i.
Sidst opdateret
16. december, 2024