diese Library dient in Verbindung mit dem PC-Programm “Logview.exe”
zum darstellen von Messwerten auf dem PC als Grafik
(z.B. Akku-Ladekurven oder Strom- oder Drehzahlmesswerte usw.)
-das PC-Programm “Logview.exe” gibt es kostenlos unter “www.logview.info”
-die Daten werden als Ascii-Frames per RS232 von der CPU
zum PC gesendet
-die Messdaten können entweder sofort (nach dem Messen)
zum PC gesendet und angezeigt werden (wie eine Art Oszi)
oder die Daten können auf der CPU zuerst gespeichert
und dann als “Packet” zur Auswertung an den PC gesendet werden
(je nach Implementierung in der CPU-Software)
-es können mehrere Messdaten gleichzeitig gesendet werden,
die Anzeige und Skalierung uebernimmt das PC-Programm
Hinweis : die Einstellungen in Logview müssen mit denen im CPU-Programm übereinstimmen. Also wenn (wie im Beispiel) zwei Kanäle gesendet werden,
dann muss Logview auch auf zwei Kanäle eingestellt werden. Sonst wird gar nichts angezeigt. Ich hab als Beispiel mal 3 INI-Files angehängt die man per “Gerät und Port wählen” laden kann.
Beispielbild :
Voraussetzungen :
1 2 | Benutzte Module der CooCox-IDE : Retarget_printf Benutzte Librarys : STM32_UB_UART |
Funktionen :
1 2 | ErrorStatus UB_Logview_Init(uint8_t kanal_anz); // zum initialisieren void UB_Logview_SendFrame(UART_NAME_t uart); // zum senden eines Frames an Logview.exe |
Beispiel :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | //-------------------------------------------------------------- // File : main.c // Datum : 29.03.2013 // Version : 1.0 // Autor : UB // EMail : mc-4u(@)t-online.de // Web : www.mikrocontroller-4u.de // CPU : STM32F4 // IDE : CooCox CoIDE 1.7.0 // Module : CMSIS_BOOT, M4_CMSIS_CORE // Funktion : Demo der Logview-Library // Hinweis : Diese zwei Files muessen auf 8MHz stehen // "cmsis_boot/stm32f4xx.h" // "cmsis_boot/system_stm32f4xx.c" //-------------------------------------------------------------- #include "main.h" #include "stm32_ub_logview.h" #include "stm32_ub_adc1_single.h" void Delay(volatile uint32_t nCount){ while(nCount--) { } } int main(void) { uint16_t adc_wert; SystemInit(); // Quarz Einstellungen aktivieren // Init vom Logview mit 2 Kanälen UB_Logview_Init(2); // Init vom ADC UB_ADC1_SINGLE_Init(); while(1) { // ADC an PA3 messen adc_wert=UB_ADC1_SINGLE_Read_MW(ADC_PA3); // Messwert in Logview kanal 0 speichern LOGVIEW.kanal[0]=adc_wert; // ADC an PC4 messen adc_wert=UB_ADC1_SINGLE_Read_MW(ADC_PC4); // Messwert in Logview kanal 1 speichern LOGVIEW.kanal[1]=adc_wert; // Beide Messwerte per UART (PA2) // an die Logview.exe senden UB_Logview_SendFrame(COM2); // kleine Pause Delay(500000); } } |
Hier die Library zum Download :
Hier der komplette CooCox-Projektordner zum Download :
Hier drei Beispiel Logview Ini-Files zum Download :
Hallo Uwe
wie hast du Logview eingestellt um Daten zu empfangen?
Meine Versuche (com1) zeigen keinen Erfolg
Gruß
Jörgen
ich hab als ZIP mal 3 INI-Files hochgeladen. Kopiere die Files (und das Bild) wie im Readme beschrieben und benutze für das Beispiel “MK3_Logview_A02.ini”. Die Anzahl der Kanäle muss stimmen (also zwei, für das Beispiel)
Hallo Uwe
ich konnte heute testen und Erfolg melden
ps: bist du der Uwe vom uBasic?
Gruß
Jörgen
nein.