Analog indgang

Fra Holstebro HTX Wiki
Skift til: navigering, søgning

En analog indgang på en mikrocontroller er lavet for at kunne registrere og arbejde med analoge værdier i mikrocontrollerens program, selvom den i naturen er digital.

AD-konvertering

For at en mikrocontroller kan arbejde med analoge værdier skal der ske en AD-konvertering, der konverterer den analoge indgangsspænding til en digital værdi med en eller anden opløsning.

Man kan i princippet arbejde med en ekstern AD-konverter som en Mcp3201 eller en Mcp3208, der begge er 12 bits AD-konvertere som altså giver tal fra 0 til 4095 over det analoge referenceområde som er angivet ved en analog reference.

I dag har mange mikrocontrollere indbyggede AD-konvertere som typisk har 10 bit opløsning, hvilket give et talområde fra 0 til 1023.

PIC Analoge indgange

Det er ikke alle de PIC-typer vi har ved Holstebro HTX der har AD-konvertere indbygget, men følgende typer har, og anvender til AD-konvertering det angivne bibliotek

PIC-type Bibliotek
PIC12F675 ADC_holst
PIC16F684 ADC_holst
PIC16F690 ADC_holst
PIC16F877 ADC

Arduino Analoge indgange

I arduinoen er det ganske enkelt at anvende analoge indgange[1], da man kan gøre det med en enkelt kommando:

  int ADtal;
  ADtal = analogRead(kanal);

Her er ADtal blot en variabel der gemmer det tal fra 0 til 1023 som den analoge indgangs AD-konverter svarer med, når analogRead() kaldes.

Parameteren kanal angiver hvilken analog indgang man vil læse, og er på arduino UNO blot et tal fra 0 til 5, hvilket svarer til A0 - A5 som det er angivet ved stikforbindelserne på boardet.

Arduino UNO Rev. 3 med analoge indgange
Arduino UNO rev. 3 med analoge indgange A0 til A5


Eksempler på anvendelser er angivet i Arduino Serial og Arduino AnalogInput.

Referencer