-         
Ergebnis 1 bis 2 von 2

Thema: LogView Ließt Daten nicht richtig ein

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    05.08.2010
    Beiträge
    17

    LogView Ließt Daten nicht richtig ein

    Anzeige

    Hallo,
    Ich habe jetzt gleich die nächste Frage.
    Ich möchte per USART daten an das Programm "Logview" senden, welches diese graphisch auswerten kann. Mit dem Terminalprogramm empfange ich die Daten, die ich auch empfangen will ($1;1;;Daten;0<cr><lf>), aber LogView empfängt nur wirres Zeug.

    Bei LogView im "Debug Logging" steht:
    16:53:09,648 [ SerialData] > Empfang von Daten - TForm1.WMRxClusterMessage
    16:53:09,648 [ SerialData] ..Anzahl empfangener Bytes: 49
    16:53:09,648 [ SerialData] ..Rohdaten : <NUL>€€x<NUL>ÿ€øø€x<NUL>ÿ€øø€øø€<NUL>xàøø€<NUL>ø€< NUL>€ø<NUL>xà€xà€<NUL>€<NUL>øxà€xà€
    16:53:09,648 [ SerialData] ..HEX : 0080807800FF80F8F8807800FF80F8F880F8F8800078E0F8F8 8000F8800080F80078E08078E080008000F878E08078E080
    16:53:09,663 [ Device] ..AUSWERT : <NUL>€€x<NUL>ÿ€øø€x<NUL>ÿ€øø€øø€<NUL>xàøø€<NUL>ø€< NUL>€ø<NUL>xà€xà€<NUL>€<NUL>øxà€xà€
    16:53:09,663 [ Main] > ..DatenempfangAuswertung
    16:53:09,663 [ Main] ....Daten als ASCII = '<NUL>€€x<NUL>ÿ€øø€x<NUL>ÿ€øø€øø€<NUL>xàøø€<NUL>ø€ <NUL>€ø<NUL>xà€xà€<NUL>€<NUL>øxà€xà€'
    16:53:09,663 [ Main] ....Daten als HEX = '0080807800FF80F8F8807800FF80F8F880F8F8800078E0F8F 88000F8800080F80078E08078E080008000F878E08078E080'
    16:53:09,663 [ Main] ....Länge der Daten = 49
    16:53:09,663 [ SerialData] ....Gerät: Testformat Lader Clustersize: 44 ClusterErweiterung: 0
    16:53:09,663 [ SerialData] ....ACHTUNG: Falsche Clustersize! Datenlänge der INI passt nicht zu den empfangenen Daten!
    16:53:09,663 [ Main] < ..DatenempfangAuswertung
    Hier der Programmcode (ich weiß, dass man das unten mit nem String besser machen kann...):
    Code:
    #include <avr/io.h>
    
    #define F_CPU 12000000UL
    #define BAUDRATE 9600UL 
    #define UBBR F_CPU/16/BAUDRATE-1
    
    #include <util/delay.h>
    
    uint16_t zaehler = 0;
    uint8_t Zustd = 0;
    
    void long_delay(uint16_t ms){
        for(; ms>0; ms--) _delay_ms(1);
    }
    
    void ADWandler_init(void){
    	ADMUX = 0x00;
    	ADMUX |= (1<<REFS0); //Referenzspannung ist Eingangsspannung des µContorllers
    	ADCSRA = 0x00;
    	ADCSRA |= (1<<ADPS0) | (1<<ADPS1) | (1<<ADPS2); //Frequenzteilungsfaktor 128
    	ADCSRA |= (1<<ADEN); //ADC Aktivieren
    }
    
    void usart_init(void){
    	UBRRH = UBBR >> 8;   //Baudrate einstellen
    	UBRRL = UBBR & 0xff; //Baudrate einstellen
    
    	UCSRB = (1<<TXEN); //Transmitter (Daten schicken) aktivieren
    	UCSRC = (1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0); //8Bit länge und 1 Stoppbit; Asynchron
    }
    void usart_send(uint8_t Sendung){
    	while (!(UCSRA & (1<<5)));  //warten bis Senden moeglich (UDRE)
        UDR = Sendung;
    }
    
    
    int main(void){
    	DDRC = 0x00;
    
    	uint16_t ADCErgebniss;
    
    	usart_init();
    	ADWandler_init();
    
    	while(1){
    
    		ADMUX = (ADMUX & ~(0x1F)) | (0 & 0x1F); //Kanal füre Messung festlegen
    		ADCSRA |= (1<<ADSC); //ADCmessung starten
    		while (ADCSRA & (1<<ADSC) ); //ADC lesen lassen
    		ADCErgebniss = ADCL + (ADCH<<8); //Messergebniss vom ADC speichern
    
    		long_delay(200);
    	
    		usart_send(36); //$
    		usart_send(49); //1
    		usart_send(59); //;
    		usart_send(49); //1
    		usart_send(59); //;
    		usart_send(59); //;
    		usart_send(ADCErgebniss); //Daten (ADC)
    		usart_send(59); //;
    		usart_send(52); //0 (Prüfsumme)
                    usart_send(13); //CR
    		usart_send(10); //LF
    	}
    }
    Und zu guterletzt die INI Datei von LogView:
    Code:
    [Gerät]
    Name                            = Galvanischer Hautiwderstandmesser
    Hersteller                      = Richard U
    Gruppe                          = 09
    Device_ID                       = ID_OPENFORMAT
    Used                            = 1
    Abbildung                       = OpenFormat.jpg
    ChangeSettings                  = 1
    HerstellerLink1                 = 
    HerstellerLink2                 = 
    LogViewLink                     = www.logview.info
    TimeStep_ms                     = 200
    TimeGiven                       = 1
    KanalAnzahl                     = 1
    WerteFormat                     = ASCII
    Prüfsummenberechnung            = keine
    PrüfsummenFormat                = ASCII
    AutoStart                       = 0
    AutoOpenToolbox                 = 0
    
    [Stati]
    StatiAnzahl                     = 1
    001                             = Standard Test
    
    [serielle Schnittstelle]
    Port                            = COM1
    Baudrate                        = 9600
    Datenbits                       = 8
    Stopbits                        = 0
    Parität                         = 0
    Flusskontrolle                  = 0
    ClusterSize                     = -60
    SetDTR                          = 0
    SetRTS                          = 0
    
    [Schnittstelle TimeOuts]
    RTOCharDelayTime                = 290
    RTOExtraDelayTime               = 100
    WTOCharDelayTime                = 290
    WTOExtraDelayTime               = 100
    
    [Anzeige Einstellungen Kanal 01]
    Zeitbasis                       = Zeit
    Einheit                         = s
    Symbol                          = t
    WerteAnzahl                     = 2
    
    Messgröße1                      = Spannung
    Einheit1                        = U
    Symbol1                         = V
    Faktor1                         = 1.0
    OffsetWert1                     = 0.0
    OffsetSumme1                    = 0.0
    Hier ist noch eine Anleitung, wie der Code den ich mit dem µC sende aussehen muss: Formatbeschreibung

  2. #2
    Neuer Benutzer Öfters hier
    Registriert seit
    05.08.2010
    Beiträge
    17
    Das Problem ist behoben, ich hatte die INI Datein im Ordner Geräte und nicht im Unterordner Geräte/OpenFormat

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •