Analog indgang: Forskelle mellem versioner

Fra HTX Arduino
Spring til navigation Spring til søgning
m 1 version importeret
Ingen redigeringsopsummering
Linje 7: Linje 7:


I dag har mange mikrocontrollere indbyggede AD-konvertere som typisk har 10 bit opløsning, hvilket give et talområde fra 0 til 1023.
I dag har mange mikrocontrollere indbyggede AD-konvertere som typisk har 10 bit opløsning, hvilket give et talområde fra 0 til 1023.
==Arduino Analoge indgange==
I arduinoen er det ganske enkelt at anvende analoge indgange<ref>[http://arduino.cc/en/Reference/AnalogRead AnalogRead reference]</ref>, da man kan gøre det med en enkelt kommando:
<source lang="c">
  int ADtal;
  ADtal = analogRead(kanal);
</source>
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.
[[Parameter]]en 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.
[[fil:Arduino-power-analog.png|Arduino UNO Rev. 3 med analoge indgange]]<br />
''Arduino UNO rev. 3 med analoge indgange A0 til A5''
Eksempler på anvendelser er angivet i [[Arduino Serial]] og [[Arduino AnalogInput]].


==PIC Analoge indgange==
==PIC Analoge indgange==
Linje 22: Linje 38:
|[[PIC16F877]] || [[ADC]]
|[[PIC16F877]] || [[ADC]]
|}
|}
==Arduino Analoge indgange==
I arduinoen er det ganske enkelt at anvende analoge indgange<ref>[http://arduino.cc/en/Reference/AnalogRead AnalogRead reference]</ref>, da man kan gøre det med en enkelt kommando:
<source lang="c">
  int ADtal;
  ADtal = analogRead(kanal);
</source>
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.


[[Parameter]]en 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.
==Referencer==
 
<references />
[[fil:Arduino-power-analog.png|Arduino UNO Rev. 3 med analoge indgange]]<br />
''Arduino UNO rev. 3 med analoge indgange A0 til A5''


{{PIC}}


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


==Referencer==
{{Arduino Elektrisk}}
<references />
[[Kategori:Arduino Analog]]
[[Kategori:Arduino Analog]]
[[Kategori:PIC Analog]]
[[Kategori:PIC Analog]]

Versionen fra 15. nov. 2022, 12:20

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.

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.

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

Referencer

PIC
PIC-Typer PIC16F84 - PIC12F675 - PIC16F628 - PIC16F684 - PIC16F690 - PIC16F877 - PIC18F2550
Programmeringsbegreber Maskinkode - Mikrocontroller
Programmeringsmiljø PIC-brænder - UsbPicProg - Analog indgang - ICSP


Arduino Elektrisk
Arduino Input Input - Input Høj-Lav - Input Strøm-Spænding - Input med intern Pull Up - Analogt - Analogt Input - Analog indgang - Arduino Reference Input - Input Tidsforhold - Specielle Input
Arduino Output Output - Output Høj-Lav - Output Strøm-Spænding - Analogt Output - Output Tidsforhold
Arduino Tidsforhold Arduino Reset Tid - Arduino setup() Tid - Arduino loop() Tid - Arduino Interrupt Tid - Arduino Tidsforhold Variabeltyper - Arduino Tidsforhold Sprogstrukturer - Input Tidsforhold - Output Tidsforhold - Serielle Tidsforhold