Meßwert nach labview übertragen

OP #6040721
Lesenswert?
• ▲
▼
Guten Tag,

Kennt sich hier jemand mit labview aus ? Ich möchte gerne über die 
serielle schnittstelle einen Wert an labview übergeben, aber ich bekomme 
es einfach nicht hin.

Ich lese mit meinem Atmega über den Adc ein Poti ein 0-255 und möchte 
diesen Wert mit dem Uart senden.

Aber ich kann es in labview nicht richtig verarbeiten, weil mir die 
kenntnisse fehlen, wäre vielleicht jemand bereit mir die angehängte 
Datei mit labview umzuschreiben so das das funktioniert. Und ich es dann 
vielleicht mal verstehe.
Angehängte Dateien:
OP #6040767
Lesenswert?
• ▲
▼
1
/*************************************************************************
2
Test LABVIEW Meßwert senden Atmega88
3

4
*************************************************************************/
5
#define F_CPU 16000000UL
6
#include <stdlib.h>
7
#include <avr/io.h>
8
#include <avr/interrupt.h>
9
#include <avr/pgmspace.h>
10
#include <util/delay.h>
11

12
#include "uart.h"
13

14

15
/* define CPU frequency in Hz in Makefile */
16
#ifndef F_CPU
17
#error "F_CPU undefined, please define CPU frequency in Hz in Makefile"
18
#endif
19

20
/* Define UART buad rate here */
21
#define UART_BAUD_RATE      9600      
22

23

24
int main(void)
25
{   
26
  uint16_t x;
27
  uint16_t  ergebnis ;
28
  uint16_t i = -12345;
29
    char buffer[30];
30
   
31
    uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,F_CPU) ); 
32
    
33
  sei();
34
        //*** Init ADC ***
35
    ADCSRA |= (1<<ADEN);              // ADC aktivieren
36
    ADCSRA |= (1<<ADPS0)|(1<<ADPS1);    // Vorteiler auf 8
37
    ADMUX |= (1<<REFS0);              // Uref = 5V
38
    ADMUX |= (1<<MUX2)|(1<<MUX0);       // ADC-Kanal 5 einstellen
39
    ADMUX |= (1<<ADLAR);              // bündig
40
    DIDR0 |= (1<<ADC5D);              // Dig. Input Kanal ADC5 deaktivieren (spart Strom)
41
     
42
    //*** Dummy Readout ***
43
    ADCSRA |= (1<<ADSC);              // Start ADC-Wandlung
44
    while (ADCSRA &(1<<ADSC));            // Auf Abschluss der Konvertierung warten
45
    x = ADC;                            // Das Ergebnis der 1.Wandlung in x speichern
46

47
    
48
    while (1)
49
    {
50
      ADCSRA |= (1<<ADSC);          // Start ADC-Wandlung
51
      while (ADCSRA &(1<<ADSC));        // Auf Abschluss der Konvertierung warten
52
      ergebnis = ADCH;                // Inhalt von ADCH in ergebnis speichern
53
      //PORTD = ergebnis;               // Wandlungsergebnis am Port D ausgeben
54
 
55
       
56
      
57
        
58
         itoa(ergebnis,buffer,10);
59
         uart_puts(buffer);
60
         uart_putc('\r');          // CR Terminal
61
        //_delay_ms(50);
62

63
         
64
        
65
    }
66
    
67
    
68
}

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 6 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.