
Programm zur Darstellung der Lage eines Objektes im Raum mit Hilfe eines Beschleunigungssensores, 4 LED's und einem LCD-Display.
Diff: Sensor.cpp
- Revision:
- 11:5861bc23022a
- Parent:
- 9:38d287593320
- Child:
- 13:676721490d37
--- a/Sensor.cpp Sun Jun 05 13:47:54 2016 +0000 +++ b/Sensor.cpp Tue Jun 28 19:05:15 2016 +0000 @@ -122,4 +122,35 @@ stWinkelData->i16WinkelY = asin(dGMessY)*(180/pi); } if(iVorzeichenY) stWinkelData->i16WinkelY = -stWinkelData->i16WinkelY; - } \ No newline at end of file + } + +/************************************************************************************ +* void void vDebugData(struct SensData *stSensData, struct WinkelData *stWinkelData) +* Zweck: Umrechnung der A/D-Wandler Messwerte in Spannungen zum Kalibrieren der + Nulllage und für Debugzwecke. Speicherung der Spannungen in WinkelData +* Parameter: + *stSensData: Pointer auf eine Struktur vom Type SensData zum Abspeichern + der X-, Y-, und Z-Daten des Sensors. + *stWinkelData: Pointer auf eine Struktur vom Typ WinkelData zum Abspeichern + der berechneten Spannungen in diesem Fall(!) für die X-, Y- und Z-Achse. +* return Parameter: + keine +*************************************************************************************/ +void vDebugData(struct SensData *stSensData, struct WinkelData *stWinkelData){ + /*Variablen*/ + double dGMessX; + double dGMessY; + double dGMessZ; + + /* Berechnung des Z-Winkels */ + dGMessZ = (stSensData->wSensZ/65535.0)*3.3; + stWinkelData->i16WinkelZ = dGMessZ*10000; + + /* Berechnung des X-Winkels */ + dGMessX = (stSensData->wSensX/65535.0)*3.3; + stWinkelData->i16WinkelX = dGMessX*10000; + + /* Berechnung des Y-Winkels */ + dGMessY = (stSensData->wSensY/65535.0)*3.3; + stWinkelData->i16WinkelY = dGMessY*10000; + } \ No newline at end of file