| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- #include "Arduino.h"
- #include <LCDWIKI_GUI.h> // core graphics library
- #include <LCDWIKI_SPI.h> // hardware-specific library
-
- const int trigPin = 12;
- const int echoPin = 10;
-
- //#define MODEL SSD1283A
- //#define CS 10
- //#define CD 9
- //#define SDA 7
- //#define MOSI SDA
- //#define SCK 13
- //#define RST 8
- //#define LED -1 //if you don’t need to control the LED pin,you should set it to -1 and set it to 3.3V
- //
- //LCDWIKI_SPI mylcd(MODEL, CS, CD, MISO, MOSI, RST, SCK, LED);
-
- #define BLACK 0x0000
- #define BLUE 0x001F
- #define RED 0xF800
- #define GREEN 0x07E0
- #define WHITE 0xFFFF
-
- #define MODEL SSD1283A
- #define LED -1 // to +5v
- #define SCK 13//A1 with SCK on 13 and SDA on 11 it is 10x faster!!!
- #define SDA 11//A2
- #define MISO -1
- #define MOSI SDA
- #define CD A3
- #define RST A4
- #define CS A5
-
- String lastDistance = "";
-
- LCDWIKI_SPI mylcd(MODEL, CS, CD, MISO, MOSI, RST, SCK, LED); //software spi,model,cs,cd,miso,mosi,reset,clk,led
-
- void setup()
- {
- Serial.begin(115200);
- pinMode(trigPin, OUTPUT);
- pinMode(echoPin, INPUT);
-
- mylcd.Init_LCD();
- mylcd.Fill_Screen(BLACK);
- }
-
- void loop()
- {
- // mylcd.Fill_Screen(BLACK);
- // mylcd.Fill_Screen(WHITE);
- // mylcd.Fill_Screen(255, 0, 0);
- // mylcd.Fill_Screen(0, 255, 0);
- // mylcd.Fill_Screen(0, 0, 255);
- // delay(3000);
- // mylcd.Fill_Screen(0, 0, 0);
- // delay(1000);
- // mylcd.Fill_Screen(255, 255, 255);
- // delay(1000);
- // mylcd.Fill_Screen(0xF800);
- // delay(1000);
- // mylcd.Fill_Screen(0x07E0);
- // delay(1000);
- // mylcd.Fill_Screen(0x001F);
- // delay(3000);
-
- mylcd.Set_Text_Mode(1);
- mylcd.Set_Text_colour(WHITE);
- mylcd.Set_Text_Back_colour(RED);
- mylcd.Set_Text_Size(2);
-
- digitalWrite(trigPin, LOW);
- delayMicroseconds(5);
-
- digitalWrite(trigPin, HIGH);
- delayMicroseconds(20);
- digitalWrite(trigPin, LOW);
-
- long duration = pulseIn(echoPin, HIGH);
- long distance = duration * 0.03432 / 2;
-
- // Serial.print("duration:");
- // Serial.println(duration);
-
- // Serial.print("Distance:");
- Serial.println(distance);
-
- char buf[50];
- sprintf(buf, "%lu cm", distance);
-
- if (!lastDistance.equals(buf)) {
- mylcd.Fill_Rect(0, 48, 130, 20, RED);
- mylcd.Print_String(buf, 30, 50);
- delay(100);
- lastDistance = buf;
- }
-
- delay(200);
- }
-
- //void setup() {
- // Serial.begin(115200);
- // pinMode(trigPin, OUTPUT);
- // pinMode(echoPin, INPUT);
-
- //}
-
- //void loop() {
-
- // mylcd.Set_Text_Mode(0);
- // mylcd.Fill_Screen(0x0000);
- // mylcd.Set_Text_colour(RED);
- // mylcd.Set_Text_Back_colour(BLACK);
- // mylcd.Set_Text_Size(2);
- // mylcd.Print_String("Hello World!", 0, 0);
-
- // digitalWrite(trigPin, LOW);
- // delayMicroseconds(5);
- //
- // digitalWrite(trigPin, HIGH);
- // delayMicroseconds(20);
- // digitalWrite(trigPin, LOW);
- //
- // long duration = pulseIn(echoPin, HIGH);
- // long distance = duration * 0.03432 / 2;
- //
- // Serial.print("duration:");
- // Serial.println(duration);
- //
- // Serial.print("Distance:");
- // Serial.println(distance);
- // delay(100);
- //}
|