Mikrokontrollere danner grunnlaget for mye moderne teknologi, til tross for at de i utgangspunktet er komplekse.
Mikrokontrollere er ryggraden i mye av dagens teknologi, og de er innebygd i utallige enheter for å automatisere oppgaver, styringer og muliggjøre smarte interaksjoner. Både mikrokontrollere og mikroprosessorer ble introdusert på begynnelsen av 1970-tallet og revolusjonerte elektronikken ved å integrere datakraft i kompakte brikker.
I denne gjennomgangen får du en grunnleggende innføring i mikrokontrollere, inkludert definisjon, virkemåte og hvorfor de er så viktige i moderne applikasjoner, uavhengig av hvor mye erfaring du har med elektronikk eller hvor avansert du har tenkt å bruke dem.
Hva er en mikrokontroller?
En mikrokontroller fungerer på samme måte som en minidatamaskin og er designet for å utføre én eller noen få spesifikke oppgaver. I motsetning til store datamaskiner som kan kjøre en rekke ulike programmer, er mikrokontrollere laget for å utføre spesialiserte, ofte repeterende oppgaver. Den er liten, energieffektiv og perfekt for direkte innbygging i enheter. Hverdagsgjenstander som vaskemaskiner, droner og smarte termostater har alle mikrokontrollere.
Hver mikrokontroller består av tre hovedkomponenter:
- CPU (Central Processing Unit) – «hjernen» i mikrokontrolleren som behandler instruksjoner.
- Minne – lagrer både programmet (i ROM/Flash) og data som trengs for å kjøre programmet (i RAM).
- Inngangs- og utgangsporter (I/O) – disse portene gjør det mulig for mikrokontrolleren å kommunisere med andre enheter eller komponenter, for eksempel sensorer, motorer og skjermer.
Hva er forskjellen mellom mikrokontrollere og mikroprosessorer
Folk forveksler ofte mikrokontrollere med mikroprosessorer, så begynn med å vurdere om du trenger en mikroprosessorenhet (MPU) eller en mikrokontrollerenhet (MCU). Disse to typene prosessorbrikker brukes i nesten alle elektroniske enheter, og noen bruker til og med begge, men de tjener ulike formål:
Mikrokontroller | Mikroprosessor |
Designet for spesifikke, dedikerte oppgaver | Utviklet for komplekse, multitasking-operasjoner |
Inneholder CPU, minne og I/O i én og samme brikke | Krever separate minne- og I/O-komponenter |
Ideell for innebygde systemer (f.eks. apparater, leker) | Ideell for datamaskiner og nettbrett |
Hvordan fungerer mikrokontrollere?
CPU-en er mikrokontrollerens hjerne, og den henter og utfører instruksjoner som er lagret i minnet. Etter å ha hentet og avkodet instruksjoner fra minnet, utfører den de utpekte oppgavene. Dataene og instruksjonene som CPU-en trenger, lagres i minnet. De to typene minne som mikrokontrollere vanligvis bruker, er ROM, som lagrer programinstruksjonene permanent, og RAM, som lagrer midlertidige data som CPU-en kan få tilgang til raskt mens mikrokontrolleren er i drift.
I/O-portene, som støtter enten digitale eller analoge signaler avhengig av modell, gjør det mulig for mikrokontrolleren å kommunisere med eksterne enheter. Timere og omformere er eksempler på innebygde kretser som øker funksjonaliteten.
En mikrokontroller må programmeres ved hjelp av et bestemt språk før den kan tas i bruk. Etter programmeringen utfører mikrokontrolleren de tildelte oppgavene og kjører de lagrede instruksjonene.
Typer mikrokontrollere og bruksområder
Det finnes mange typer mikrokontrollere, men her er noen av de mest populære:
- Arduino (AVR) mikrokontrollere: Arduino-mikrokontrollere er kjent for sin brukervennlige programvare og omfattende støtte fra brukerfellesskapet, og de er ypperlige for nybegynnere og brukes ofte i undervisningssammenheng.
- PIC-mikrokontrollere: Disse er vanlige i industri- og bilindustrien på grunn av deres pålitelighet og tilpasningsevne.
- ARM Cortex-M mikrokontrollere: Disse mikrokontrollerne finnes i mer avansert forbrukerelektronikk, og har høy prosessorkraft og fleksibilitet, noe som gjør dem populære for mer komplekse prosjekter.
Mikrokontrollere kan styre en lang rekke elektroniske enheter, spesielt i applikasjoner som krever repeterende operasjoner eller raske beregninger. Her er eksempler på enheter som mikrokontrollere ofte styrer:
- Datamaskiner
- Robotikk
- Innebygde systemer
- Husholdningsapparater
- Industrielt utstyr
- Kroppsbårne enheter
- Tingenes internett (IoT)
- Sikkerhetssystemer
- Sensorer og sensorreléer
Hvor starter man?
Følg disse trinnene for å begynne å jobbe med mikrokontrollere:
1. Velg en mikrokontroller eller et utviklingskort
Hvilken mikrokontroller som er optimal for din applikasjon, avhenger av kravene til prosessorkraft, minne, I/O og periferiutstyr; det finnes ikke én «den beste» mikrokontrolleren. Det kan være vanskelig å velge riktig mikrokontroller, og det er avgjørende å ta hensyn til prosjektets krav. For nybegynnere anbefales det å velge AVR eller PIC på grunn av det store antallet nettbaserte opplærings- og støttefora.
Når det gjelder utviklingskort, er dette kretskort (PCB) som inneholder en bestemt integrert krets (IC) for mikrokontrollere og de hjelpekretsene som kreves for å forenkle og fremskynde prototyping og programmering. Velkjente utviklingskort som Raspberry Pi og Arduino Uno har blitt populære alternativer i gjør-det-selv-elektronikkmiljøet og har revolusjonert måten folk lærer elektronikk og bygger prosjekter på.
2. Sett opp utviklingsmiljøet ditt
En vellykket start avhenger av at du setter opp det rette utviklingsmiljøet. Arduino IDE (Integrated Development Environment) er et populært alternativ for Arduino-kort på grunn av sin enkelhet og brukervennlighet. Arduino IDE er et gratis program som lar brukerne skrive, bygge og laste opp kode til mikrokontrolleren. Plattformer som PlatformIO muliggjør mer komplisert utvikling i IDE-er som Visual Studio Code og støtter en rekke ulike korttyper for mer sofistikerte mikrokontrollere. Det første du bør gjøre, er å installere den nødvendige programvaren, koble utviklingskortet til PC-en og følge de grunnleggende retningslinjene for oppsett som gjelder for det aktuelle kortet
3. Begynn med enkle kodingsoppgaver
For å få erfaring med mikrokontrollerprogrammering kan du begynne med enkle kodingsoppgaver. Å få en LED til å blinke er et vanlig introduksjonsprosjekt som lærer deg det grunnleggende om utgangskontroll. Hvis du vil lære mer om hvordan mikrokontrollere samhandler med omgivelsene sine, kan du gå videre til å lese inndata fra sensorer, for eksempel temperatursensorer. For å hjelpe deg med å forstå syntaksen og strukturen i koden som brukes i innebygde systemer, tilbyr Arduino IDE eksempelskisser som illustrerer typiske funksjoner.
4. Gå over til komplekse prosjekter
Etter å ha mestret det grunnleggende, kan du gradvis gå videre til stadig mer komplekse prosjekter med mange innganger, utganger og kontrollsystemer. Du kan for eksempel designe en bevegelsesdetekterende alarm som utløses når en bevegelse registreres, eller en temperaturstyrt vifte som slår seg på når en sensor registrerer en bestemt temperatur. Disse prosjektene forbedrer grunnleggende ferdigheter, blant annet håndtering av mange innganger og utganger, innføring av tilbakemeldingssystemer og bruk av betingede uttrykk. Du utvikler programmeringsferdighetene dine og lærer å håndtere stadig vanskeligere styringsutfordringer ved å eksperimentere med stadig mer kompliserte innstillinger. Når du føler deg komfortabel, kan du prøve prosjekter som involverer flere inn- og utganger, for eksempel en temperaturstyrt vifte eller en bevegelsesdetekterende alarm.
Oppsummering
Å forstå mikrokontrollere er en viktig ferdighet i dagens teknologidrevne verden, spesielt for dem som ønsker å jobbe innen utvikling, automatisering eller IoT. Ved å lære seg det grunnleggende og eksperimentere med små prosjekter vil du raskt forstå potensialet disse små enhetene har og det vil gjøre deg klar for mer avanserte bruksområder. Enten du skal bygge robotikk, utvikle IoT-enheter eller automatisere systemer, er mikrokontrollere et viktig verktøy å ha kjennskap til.