Hardwarenahe Programmierung
I2C Axis Accelerometer
Für den MMA7660 ist die Bibliothek über Tool->Manage Libraries (Strg+Shift+I) Accelerometer_MMA7660 zu installieren. Eine Beschreibung ist auch im Arduino Playground zu finden. Über Files->Examples->Accelerometer_MMA7660->MMA7660FC_Demo.ino kann das Demo-Programm geladen, compiliert und auf den ESP32 geladen werden oder das folgende Programm verwendet werden:
#include <Wire.h> #include "MMA7660.h" MMA7660 accelemeter; void setup() { accelemeter.init(); Serial.begin(9600); } void loop() { int8_t x, y, z; float ax,ay,az; enum {BufSize=50}; char buf [BufSize]; float myFloat = -1.012; Serial.println("******************************************"); accelemeter.getXYZ(&x,&y,&z); snprintf (buf, BufSize, "x=%d y=%d z=%d", x, y, z); // snprintf is safer than sprintf Serial.println(buf); accelemeter.getAcceleration(&ax,&ay,&az); snprintf (buf, BufSize, "ax: %.2fg ay: %.2fg az: %.2fg", ax, ay, az); Serial.println(buf); delay(500); }