Arduino - TOF (Time of Flight) Entfernung Ausgabe auf Elegoo LCD

Gast #5339962
Lesenswert?
• ▲
▼
Hallo liebe Arduino Freaks,

nach mehreren Stunden komm ich einfach nicht weiter. Ich habe zum einen 
ein Time of Flight VL53L0X Ardafruit, dieser soll Entfernungen messen 
und es auf dem Elegoo LCD 2,8" ausgeben. Grundlage Arduino UNO R3.

Eine Messung mit dem TOF und Ausgabe auf dem Seriellen Monitor 
funktioniert, auch eine Textausgabe auf dem Elegoo LCD funktioniert.
Allerdings nie in Kombination. Könnt ihr mir weiterhelfen wo der Fehler 
begraben liegt ?

WICHTIG: Ich habe aufgrund des LCD Displays Shields, keinen 5V Anschluss 
mehr freigehabt und habe dann den Pin13 zweckentfremdet, liegt darin der 
Fehler ?

Besten Dank.
1
#include "Adafruit_VL53L0X.h"
2
#include <Elegoo_GFX.h>   
3
#include <Elegoo_TFTLCD.h>
4
 
5
#define LCD_CS A3 
6
#define LCD_CD A2 
7
#define LCD_WR A1 
8
#define LCD_RD A0 
9
 
10
#define LCD_RESET A4 
11
 
12
#define  BLACK   0x0000
13
#define BLUE    0x001F
14
#define RED     0xF800
15
#define GREEN   0x07E0
16
#define CYAN    0x07FF
17
#define MAGENTA 0xF81F
18
#define YELLOW  0xFFE0
19
#define WHITE   0xFFFF
20
 
21
Adafruit_VL53L0X lox = Adafruit_VL53L0X();
22
 
23
Elegoo_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);
24
 
25
const int VCC=13;
26
 
27
void setup() {
28
  Serial.begin(9600);
29
 
30
  pinMode(VCC, OUTPUT);   
31
  digitalWrite(VCC, HIGH);  // +5V - Pin 13 as VCC
32
 
33
  tft.reset();
34
 
35
  tft.begin(0x9341);
36
 
37
  // wait until serial port opens for native USB devices
38
  while (! Serial) {
39
    delay(1);
40
  }
41
  
42
  Serial.println("Adafruit VL53L0X test");
43
  if (!lox.begin()) {
44
    Serial.println(F("Failed to boot VL53L0X"));
45
    while(1);
46
  }
47
  // power 
48
  Serial.println(F("VL53L0X API Simple Ranging example\n\n")); 
49
}
50
 
51

52
void loop() {
53
 
54

55
 
56
  VL53L0X_RangingMeasurementData_t measure;
57
    
58
  Serial.print("Reading a measurement... ");
59
  lox.rangingTest(&measure, false);
60
 
61
  if (measure.RangeStatus != 4) { 
62
    tft.fillScreen(BLACK);
63
    tft.setCursor(0, 0);
64
    tft.setTextColor(WHITE);    tft.setTextSize(5);
65
    tft.println(measure.RangeMilliMeter);
66
      
67
  } else {
68
    tft.println(" out of range ");
69
  }
70
  
71
   delay(100);
72
      
73
}

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.