ILI9341

IDE gerelateerde berichten
Berichten: 47
Geregistreerd: 02 Dec 2018, 12:19

Re: ILI9341

Berichtdoor Looitje » 19 Mei 2020, 20:33

Nu deze sketch in de Atmega328P gezet en werkt perfect: https://drive.google.com/file/d/1ipHg47 ... JJTop/view

Deze sketch is met de UCGLIB library en niet meer met de Adafruit library.

Volgens volgende site: https://www.youtube.com/watch?v=n13RQMNFDOA Als je daar op meer weergeven klikt zie je de bijbehorende info.

Ik heb de Atmega328P en display op 3.3 volt aangesloten en dat werkt zo perfect. Zie foto.

Nu kan ik verder met ILI9341.
Bijlagen
mini_mini_DSC03434.JPG
mini_mini_DSC03434.JPG (41.45 KiB) 6782 keer bekeken
Met vriendelijke groet, Looitje

Advertisement

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: ILI9341

Berichtdoor Koepel » 20 Mei 2020, 00:02

Mooi :D

De dtostrf() is om een floating point naar tekst om te zetten.
Voor een integer is er itoa(): http://www.cplusplus.com/reference/cstdlib/itoa/.

Al die gaten is toch geen gezicht :? heb je op beide computers al de Arduino IDE geupdate ?

Berichten: 47
Geregistreerd: 02 Dec 2018, 12:19

Re: ILI9341

Berichtdoor Looitje » 20 Mei 2020, 21:16

Ik heb nu op mijn pc de Arduino versie 1.8.12 gezet en grote kuis gehouden in de bibliotheken en nu werkt de sketch ook perfect met deze:

#include <Adafruit_GFX.h> // Include core graphics library
#include <Adafruit_ILI9341.h> // Include Adafruit_ILI9341 library to drive the display

Bedankt voor de info die tot het gewenste resultaat heeft geleid.

Nu zou ik deze sketch willen laten werken met een nodeMCU maar de pennen kloppen dan niet daar de nodeMCU slechts pennen D0 tot D8 heeft en mijn sketch volgende pennen gebruikt:

* SCK = 13
* SDI = 11
* D/C = 9
* RESET = 8 or RST or 3.3V
* CS = 10

Hoe of waar kan ik dit aanpassen?

Alvast bedankt voor uw antwoord.
Met vriendelijke groet, Looitje

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: ILI9341

Berichtdoor Koepel » 20 Mei 2020, 21:44

Daar weet ik te weinig van. De ESP8266 heeft ook pinnen voor de SPI bus, maar ik weet niet of de library geschikt is voor de ESP8266 en als dat zo is of de library dan ook nog die pinnen gaat gebruiken.
Dit is van een paar jaar geleden, toen werkte het blijkbaar nog niet: https://github.com/adafruit/Adafruit_ILI9341/issues/8.

Berichten: 47
Geregistreerd: 02 Dec 2018, 12:19

Re: ILI9341

Berichtdoor Looitje » 21 Mei 2020, 17:49

mini_mini_DSC03440.JPG
mini_mini_DSC03440.JPG (44.19 KiB) 6733 keer bekeken


Ik heb dit gevonden en zo werkt de nodeMCU samen met mijn QUGA 2.2 TFT SPI 240x320 display/

Zie https://simple-circuit.com/esp8266-node ... t-display/

Nu kan ik weer verder.
Met vriendelijke groet, Looitje

Gebruikers-avatar
Berichten: 2655
Geregistreerd: 06 Aug 2016, 01:03

Re: ILI9341

Berichtdoor Koepel » 22 Mei 2020, 09:58

Gebruik je de nodeMCU ook in de uiteindelijke versie ?
Dat is veel beter. Alles op 3.3V en geen gedoe met andere kloksnelheden.
Ik had veel aan deze site: https://randomnerdtutorials.com/.

Berichten: 47
Geregistreerd: 02 Dec 2018, 12:19

Re: ILI9341

Berichtdoor Looitje » 22 Mei 2020, 11:12

Mijn bedoeling s om deze nodeMCU + deze QUGA 2.2 TFT SPI 240x320 display te gaan gebruiken om een NTP klok te maken.

Daar zal ik nog wel wat werk aan hebben, ik zou gaan voor een simpele versie, zonder toeters en bellen.
Met vriendelijke groet, Looitje

Berichten: 47
Geregistreerd: 02 Dec 2018, 12:19

Re: ILI9341

Berichtdoor Looitje » 24 Mei 2020, 10:39

NTP klok met nodeMCU aan QUGA 2.2 TFT SPI 240x320 display kunnen maken volgens volgende code
Code: Alles selecteren
//Dit is code voor de vodeMCU om NTP sturen naar tft ILI9341
 
#include <Adafruit_GFX.h>       // include Adafruit graphics library
#include <Adafruit_ILI9341.h>   // include Adafruit ILI9341 TFT library

#include <NTPClient.h>
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
#include <SoftwareSerial.h>
const char *ssid     = "Uw netwerk";
const char *password = "Uw paswoord";

const long utcOffsetInSeconds = 7200;//was3600 wintertijd

//definieer de kleuren die we kunnen gebruiken
#define black   0x0000
#define blue    0x001F
#define red     0xF800
#define green   0x07E0
#define cyan    0x07FF
#define magenta 0xF81F
#define yellow  0xFFE0
#define white   0xFFFF

// TFT pin 1 = VCC naar nodeMCU pin 3V3
// TFT pin 2 = GND naar nodeMCU pin GND
#define TFT_CS    D2     // TFT CS  pin is connected to NodeMCU pin D2
#define TFT_RST   D3     // TFT RST pin is connected to NodeMCU pin D3
#define TFT_DC    D4     // TFT DC  pin is connected to NodeMCU pin D4
// TFT pin 6 = SDI/MOSI naar nodeMCU pin D7
// TFT pin 7 = SCK naar nodeMCU pin 5
// TFT pin 8 = LED naar nodeMCU pin 3V3

Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_RST);


WiFiUDP ntpUDP;

NTPClient timeClient(ntpUDP, "0.nl.pool.ntp.org", utcOffsetInSeconds);

 int a;
  int b;
   int c;
    int d;
    String e;
     int nieuw = 1;
      int oud = 2;
void setup(){
 
  tft.begin();
 
   tft.fillScreen(ILI9341_BLACK);
  delay(1000);
 
  WiFi.begin(ssid, password);

  while ( WiFi.status() != WL_CONNECTED ) {
    delay ( 500 );
  }

  timeClient.begin();
}

void loop() {
  timeClient.update();

  a = (timeClient.getHours());
  b = (timeClient.getMinutes());
  c = (timeClient.getSeconds());

  d = a * 100;
  d = d + b;
nieuw = d;

if (nieuw != oud){
Serial.println (d);

  oud = nieuw;
}
  delay(50);
    tft.setRotation(3); //0-3                    //Stel het scherm in op horizontaal met de text boven de buttons
  tft.setCursor(1,10);                                            //bepaal de positie van de text (x 40 y 200)
  tft.setTextColor ( green , black);//bepaal de kleur van de text (wit)
  tft.setTextSize(12);
    if ( a < 10 ){
    tft.print("0");
    }
  tft.print(a);

  tft.setCursor(175,10);
  if ( b < 10 ){
    tft.print("0");
    }
  tft.print(b);

  tft.setCursor(140,40);
  tft.setTextSize(5);
  tft.print(":");
    delay ( 500 );
}


Code is zeker vatbaar voor verbetering, dat verneem ik graag maar werkt prima, de vraag is of de zomer/wintertijd automatisch omschakelt.
Bijlagen
mini_mini_DSC03441.JPG
mini_mini_DSC03441.JPG (47.08 KiB) 6628 keer bekeken
Met vriendelijke groet, Looitje

Gebruikers-avatar
Berichten: 241
Geregistreerd: 22 Jan 2013, 16:40

Re: ILI9341

Berichtdoor zuid » 24 Mei 2020, 12:13

de vraag is of de zomer/wintertijd automatisch omschakelt.


Ik denk dat dit NIET gaat gebeuren. Ik ken de gebruikte bibliotheek niet maar de waarde 7200 van utcOffsetInSeconds geeft aan de tijdzone t.o.v. UTC plus de offset voor zomertijd.
Is er in de bibliotheek geen voorbeeld voor zomer / wintertijd ?
Waarschijnlijk moet er ergens een parameter gebruikt worden voor wel of geen zomertijd.(DST)
Andere optie is zelf de zomertijd offset bepalen. :(

Vorige

Terug naar Arduino IDE

Wie is er online?

Gebruikers in dit forum: Google [Bot] en 10 gasten