arutsch
Published © GPL3+

Distance display

Display the Distance on an ili9486 with graphic.

AdvancedShowcase (no instructions)399
Distance display

Things used in this project

Hardware components

Arduino Mega 2560
Arduino Mega 2560
×1
Ultrasonic Sensor - HC-SR04 (Generic)
Ultrasonic Sensor - HC-SR04 (Generic)
×1
4xAA battery holder
4xAA battery holder
An option
×1
TFT LCD, 3.5 "
TFT LCD, 3.5 "
×1

Story

Read more

Schematics

The Shematic

Code

The Code

Arduino
#include <LCDWIKI_GUI.h> //Core graphics library
#include <LCDWIKI_KBV.h> //Hardware-specific library

LCDWIKI_KBV my_lcd(ILI9486,A3,A2,A1,A0,A4); //model,cs,cd,wr,rd,al pin

//param calibration from kbv
#define TS_MINX 906
#define TS_MAXX 116

#define TS_MINY 92 
#define TS_MAXY 952

float duration, distance;

#define BLACK        0x0000  
#define BLUE         0x001F  
#define RED          0xF800  
#define GREEN        0x07E0  
#define CYAN         0x07FF  
#define MAGENTA      0xF81F  
#define YELLOW       0xFFE0  
#define WHITE        0xFFFF  
#define NAVY         0x000F  
#define DARKGREEN    0x03E0  
#define DARKCYAN     0x03EF  
#define MAROON       0x7800  
#define PURPLE       0x780F  
#define OLIVE        0x7BE0  
#define LIGHTGREY    0xC618  
#define DARKGREY     0x7BEF  
#define ORANGE       0xFD20  
#define GREENYELLOW  0xAFE5  
#define PINK         0xF81F  


String mydistance;
const char echo = 39;
const char trig = 41;

void setup() {
  my_lcd.Set_Rotation(2);
   Serial.begin(9600);
   my_lcd.Init_LCD();
    my_lcd.Set_Text_Mode(1);

  pinMode(echo, INPUT);
  pinMode(trig, OUTPUT);


}

void loop() {
  digitalWrite(trig, LOW);
  delayMicroseconds(2);
  digitalWrite(trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(trig, LOW);

  duration = pulseIn(echo, HIGH);
  distance = (duration*.0343)/2;

mydistance = String(distance);
my_lcd.Fill_Screen(BLACK);
my_lcd.Set_Text_colour(GREEN);
     my_lcd.Set_Text_Size(3);
    my_lcd.Set_Draw_color(CYAN);
    my_lcd.Fill_Circle(155,240,distance);
  my_lcd.Print_String(mydistance,110,240);
   my_lcd.Print_String("cm",200,240); 
}

Credits

arutsch
0 projects • 1 follower
Contact

Comments

Please log in or sign up to comment.