INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Analoge Eingänge nacheinander abfragen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

17.05.2016, 12:00
Beitrag #1

t0bsN Offline
LVF-Grünschnabel
*


Beiträge: 27
Registriert seit: May 2016

2013
-
DE



Analoge Eingänge nacheinander abfragen
Hallo Community,

ich arbeite mit Labview 2013 und einem Arduino Uno. Mein Ziel ist es, Wechselsignale an den analogen Eingängen bei Frequenzen um ca 1kHz aufzunehmen und mir in LabView anzeigen zu lassen.

Mein Programm funktioniert soweit auch derzeit für den ersten Eingang A0 des Arduinos.

Angesteuert bzw. ausgewählt wird der Eingang in dem C Programm dazu. Im ADMUX Register kann dieser mit den letzten 4 Bits festztgesetzt warden.
Nun möchte ich, dass der Arduino nacheinander alle 6 analogen Eingänge liest und jeweils in einem separaten Graph in Labview ausgibt.

Dafür bräuchte ich bei dir Umsetzung eure Hilfe, da ich ein Neueinasteiger in Sachen Labview und Programmierung bin :/


Danke schonmal im Voraus !


Das Vi ist im Anhang, hier der dazugehörige IDE Code:
Code:
int mask=B01000000;//Maskierung
char data[1000];// Datenpacket von 1000 byte bzw Datenwerten wird festgesetzt
int start;

void setup()
{
  Serial.begin(250000);//Baudrate 250000 = 31.25KByte
  
  ADMUX=B01100000; //Input A0 laut Registervorgabe
  ADCSRA=B11000011;// 8 als divisions faktor zwischen Systemtakt und Input Signal -> Prescale
  ADCSRB=0x00;//free running modus -> schnell !
}

void loop()
{
  
  if(Serial.available()!=0)// Wenn Daten ankommen....
  {
    start=Serial.read(); //...beginne zu lesen
  
    ADCSRA=(ADCSRA&B11111000)|(start&B00000111);//"Lese"-Geschwindigkeit
      
    for(int i=0;i<1000;i++)//Daten aufnehmen und in Array von 1000 Werten (wie festgesetzt) speichern
      {
        startconversion(); // Starte Konvertierungsvorgang bzgl festgelegter Maskierung
        data[i]=sammeln(); // Daten werden im Array gesammelt über die Funktion sammeln()
        Serial.print(data[i]); // Wenn alle Daten aufgenommen sind, werden diese ausgegeben
      }  
    
  }
}

void startconversion()// Funktion für die Konvertierung
{
  ADCSRA=ADCSRA|mask;// starte conversion
}

int sammeln()// Funktion für das Sammeln der Daten
{
  while((ADCSRA&mask)==mask)//dauerhaftes sammeln von Daten
  {
  }

  return ADCH; // Auf dem Arduino vorhandenes Speicher-Register der ADC Daten, welche nun mit return abgerufen werden
}


Angehängte Datei(en)
13.0 .vi  Oszi_analoger_Eingang.vi (Größe: 22,77 KB / Downloads: 162)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
Analoge Eingänge nacheinander abfragen - t0bsN - 17.05.2016 12:00

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Werte nacheinander in Array schreiben über ein Schieberegister BlackEagle 5 7.778 13.12.2019 13:40
Letzter Beitrag: GerdW
  Analoge Signale zeitgleich abfragen Fraser-Island 9 4.784 13.05.2016 08:58
Letzter Beitrag: GerdW
  2 Ereignisse nacheinander auslösen jan_1 31 15.027 13.04.2016 19:27
Letzter Beitrag: Lucki
  While-Loops nacheinander ausführen w0wka91 9 6.239 27.11.2014 23:36
Letzter Beitrag: Lucki
  aus Anzeigeelement nacheinander Werte auslesen kadke 30 14.878 27.11.2014 09:22
Letzter Beitrag: dali4u
  Zwei Vis nacheinander aufrufen Mel 4 3.708 08.04.2013 13:21
Letzter Beitrag: Mel

Gehe zu: