INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Probleme mit Mega u. 5" TFT
16.08.2014, 13:36
Beitrag #9
RE: Probleme mit Mega u. 5" TFT
Hallo Franz,

ich denke jetzt hab ich es wieder am laufen. Gehe bitte wie folgt vor:
1. Lösche alle Libs die irgendwas mit UTFT_CTE am Hut haben
2. Benenne den Ordner "UTFT" in "UTFT_STD" um. Ebenso die im Ordner enthaltenen utft.h und utft.cpp
3. Erstelle einen neuen Ordner "UTFT" und packe dort den Inhalt des Attachment rein.
4. Teste das Beispiel UTFT->CTE_50inch_800x480
Das sollte erstmal laufen, dann sehen wir weiter.
Grüße RK

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.08.2014, 18:55
Beitrag #10
RE: Probleme mit Mega u. 5" TFT
Hallo Ricardo,

nö, geht leider nicht.
Ich hab mal alle UTFT's aus dem Libraryordner entfernt, es existiert also nur Dein Anhang.
In der Zeile vor dem Setup...
Code:
UTFT myGLCD(CTE70);
bleibt der Compiler mit der Meldung 'no matching function for call 'UTFT:UTFT(int)' hängen.

CTE70 auf CTE50 ändern bringt nichts (es ist bei mir das 5"-Beispiel geladen, aber Du sagtest ja was von einem 7"-Display.
Hänge ich an das CTE70 noch die Pins 38,39,40,41 dran so springt er einen Teil weiter und bleibt beim SPI_Flash....hängen.

Ich denke, hier passt der Code und das Library nicht zusammen.

Ich hab übrigens mal die Kombination mit einem 3,2"-TFT geladen und ausprobiert, absolut das gleiche Verhalten.

Noch eine Idee?

Franz
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2014, 09:41 (Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2014 09:55 von rkuehle.)
Beitrag #11
RE: Probleme mit Mega u. 5" TFT
Hallo Franz,
Zitat:Ich denke, hier passt der Code und das Library nicht zusammen.
Deswegen sagt ich ja, dass du bitte erstmal das Beispiel CTE_50inch_800x480 testen solltest. Wenn das funktioniert hast du erstmal eine Referenz. Dann könnte man schauen was an deinem Code grundsätzlich anders ist.
Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2014, 12:08 (Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2014 12:30 von alpenpower.)
Beitrag #12
RE: Probleme mit Mega u. 5" TFT
Hallo Ricardo,

da hast Du etwas falsch verstanden. Ich hab mich genau an die Anleitung gehalten. Das File hatte ich ja ausprobiert, komme aber so nicht weiter, weil die Libs nicht stimmen.
Ich dachte, das Beispiel nimmt die UTFT.cpp u. UTFT.h aus dem Ordner, wo sich die Beispiele befinden, oder ist das nun anders?
außerdem kann keine andere Library benutzt werden, da im Verzeichnis Library nur ein Ordner namens UTFT existiert.
Noch eine Idee?
Generell gibt es ja Beispiele, welche durch den Compiler durchlaufen, aber es fehlen halt die Features Grafik u. Schriftarten.
Kann es ein falsche Nummer beim Flash_CS_Pin sein? Manchmal kommt die Zahl 45 dann wieder die 52, die Nummer kann ich momentan nicht nachvollziehen.
Aber Du hast mir schon öfters geholfen und so bin ich guter Dinge.

Gruß Franz
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2014, 13:52
Beitrag #13
RE: Probleme mit Mega u. 5" TFT
Hallo Franz,
anbei der angepasste Code:
Code:
// UTFT_Demo with Font and icon Flash IC
// (C) 2012 Coldtears electronics
// For use with CTE 5" TFT LCD Module w/Font and Icon Flash IC
// in combination with CTE TFT/SD Shield for Arduino MEGA2560
// web: http://stores.shop.ebay.com/coldtears-electronics-store
//
// Demo code and UTFT library freely modified from Henning Karlsen's UTFT Library
// Original by
// UTFT_Demo_800x480 (C)2012 Henning Karlsen
// web: http://www.henningkarlsen.com/electronics
//
// The first part of the demo is to show how to use the font IC to draw font to the LCD,
// The IC also include some commonly used and open source icons
// great for custom application development.
//
//
// This second part of the demo is by Henning Karlsen,
// showing how to use most of the functions
// of the library with a supported display modules.
//
// This demo was made for modules with a screen resolution
// of  pixels.
//
// This program requires the UTFT library which is modified by Coldtears electronics
//

#include <UTFT.h>
#include <UTFT_CTE.h>
#include "SPI.h"

//Font selection
//BVS= Bitstream vera sans, suffix = font size in pixel (height)
#define BVS_13 10
#define BVS_15 12
#define BVS_19 14
#define BVS_22 18
#define BVS_28 22
#define BVS_34 28
#define BVS_43 38
#define BVS_52 53
#define BVS_74 78
#define BVS_112 122

extern uint8_t SmallFont[];

// Set up UTFT for CTE50 on Arduino Mega
UTFT myGLCD(CTE50,38,39,40,41);
UTFT_CTE CTE_LCD(&myGLCD);

void setup()
{
  delay(1000);
  CTE_LCD.SPI_Flash_init(FLASH_CS_PIN);
  SPI.begin();
  SPI.setClockDivider(SPI_CLOCK_DIV2);
  //SPI.setClockDivider(SPI_CLOCK_DIV128)  // SPI Speed, For compatibility, uncomment this, For Speed, comment this
  Serial1.begin(38400);
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);
  //myGLCD.Send_Flash_information_to_UART(); //This will send Flash and related information to UART1
}

void loop()
{
  CTE_LCD.show_color_bar();
  delay(1000);
  
  myGLCD.clrScr();
  CTE_LCD.Load_image(0,0,475);
  myGLCD.setColor(255, 222, 111);  //Set font color
  myGLCD.setBackColor(0, 0, 0);  //Set background color
  CTE_LCD.Set_character_spacing(1);
  CTE_LCD.Put_Text("Coldtears electronics",5,400,BVS_34);
  CTE_LCD.Put_Text("TFT LCD w/Font IC Demo",5,440,BVS_34);
  delay(1000);
  
  myGLCD.clrScr();
  CTE_LCD.Set_character_spacing(3);
  CTE_LCD.Put_Text("Coldtears electronics",10,5,BVS_34);
  CTE_LCD.Set_character_spacing(1); myGLCD.
  setColor(166, 256, 211);  myGLCD.setBackColor(0, 255, 0);
  CTE_LCD.Put_Text("5.0/7.0 TFT LCD Module w/Font IC Demo",10,40,BVS_22);
  myGLCD.setColor(255, 255, 255);  myGLCD.setBackColor(0, 0, 0);
  CTE_LCD.Put_Text("123456789",10,65,BVS_15);  
  myGLCD.setColor(0, 255, 255);
  CTE_LCD.Put_Text("abcdefg",10,80,BVS_34);  
  myGLCD.setColor(255, 255, 0);
  CTE_LCD.Put_Text("hijklmnopgrstu",10,115,BVS_43);
  myGLCD.setColor(122, 122, 122);
  CTE_LCD.Put_Text("12345789",10,165,BVS_52);
  myGLCD.setColor(122,255, 255);
  CTE_LCD.Put_Text("!@#$%^&*()",10,217,BVS_52);  
  myGLCD.setColor(255,0, 255);
  CTE_LCD.Put_Text("ABCDEFGHIJKLMNO",10,269,BVS_74);  
  myGLCD.setColor(255,255, 255);
  CTE_LCD.Put_Text("PQRSTUVWXYZ",10,343,BVS_112);
  
  delay(1000);
  
   myGLCD.clrScr();  
  myGLCD.setColor(255, 255, 255);
  static char buff[33];
  for(unsigned char temp=32; temp<65; temp++)  { buff[temp-32]=temp; }  buff[33]=0;
   CTE_LCD.Put_Text_array(buff,0,0,BVS_52);
  for(unsigned char temp=65; temp<92; temp++)  { buff[temp-65]=temp; }  buff[27]=0;
  CTE_LCD.Put_Text_array(buff,0,60,BVS_52);
  for(unsigned char temp=92; temp<127; temp++)  { buff[temp-92]=temp; }  buff[33]=0;
  CTE_LCD.Put_Text_array(buff,0,120,BVS_52);
  for(unsigned char temp=127; temp<154; temp++)  { buff[temp-127]=temp; }  buff[27]=0;
  CTE_LCD.Put_Text_array(buff,0,180,BVS_52);  
  for(unsigned char temp=154; temp<181; temp++)  { buff[temp-154]=temp; }  buff[27]=0;
  CTE_LCD.Put_Text_array(buff,0,240,BVS_52);
   for(unsigned char temp=181; temp<204; temp++)  { buff[temp-181]=temp; }  buff[23]=0;
  CTE_LCD.Put_Text_array(buff,0,300,BVS_52);  
  for(unsigned char temp=204; temp<227; temp++)  { buff[temp-204]=temp; }  buff[23]=0;
  CTE_LCD.Put_Text_array(buff,0,360,BVS_52);
   for(unsigned char temp=227; temp<255; temp++)  { buff[temp-227]=temp; }  buff[27]=0;
  CTE_LCD.Put_Text_array(buff,0,420,BVS_52);  
  delay(1000);
  
  
unsigned int k=2,location=1;
while(k>0)
{
  myGLCD.clrScr();
  for (unsigned temp1 =0; temp1<11; temp1++)
  {
    for (unsigned temp2 =0; temp2<18; temp2++)
    {
      CTE_LCD.Load_image(temp2*44,temp1*44,location);
      location++;
      if(location==236) break;
    }
  if(location==236) break;
  }
  delay(1000);
  k--;
}

myGLCD.clrScr();
CTE_LCD.Put_Text("Countdown for LCD Display",0,0,BVS_74);
CTE_LCD.Put_Text("Demo by Henning Karlsen",0,75,BVS_74);
myGLCD.setColor(150, 222, 255);
k=50;
while(k>0)
{  
  k--;
  String test_string = String(k);
  test_string = "000"+ test_string + "       ";
  CTE_LCD.Put_Text(test_string,200,210,BVS_112);
  int temp;
  if (k%3==2) temp=275;  else if (k%3==1) temp=277;  else temp=279;
  CTE_LCD.Load_image(50,400,temp); CTE_LCD.Load_image(150,400,temp+6);
  delay(100);
}

  
// Default demo by Henning Karlsen Starts Here:
  int buf[798];
  int x, x2;
  int y, y2;
  int r;

// Clear the screen and draw the frame
  myGLCD.clrScr();
  
  myGLCD.setColor(255, 0, 0);
  myGLCD.fillRect(0, 0, 799, 13);
  myGLCD.setColor(64, 64, 64);
  myGLCD.fillRect(0, 466, 799, 479);
  myGLCD.setColor(255, 255, 255);
  myGLCD.setBackColor(255, 0, 0);
  myGLCD.print("* Universal Color TFT Display Library *", CENTER, 1);
  myGLCD.setBackColor(64, 64, 64);
  myGLCD.setColor(255,255,0);
  myGLCD.print("<http://electronics.henningkarlsen.com>", CENTER, 467);

  myGLCD.setColor(0, 0, 255);
  myGLCD.drawRect(0, 14, 799, 465);

// Draw crosshairs
  myGLCD.setColor(0, 0, 255);
  myGLCD.setBackColor(0, 0, 0);
  myGLCD.drawLine(399, 15, 399, 464);
  myGLCD.drawLine(1, 239, 798, 239);
  for (int i=9; i<790; i+=10)
    myGLCD.drawLine(i, 237, i, 242);
  for (int i=19; i<470; i+=10)
    myGLCD.drawLine(397, i, 402, i);

// Draw sin-, cos- and tan-lines  
  myGLCD.setColor(0,255,255);
  myGLCD.print("Sin", 5, 15);
  for (int i=1; i<798; i++)
  {
    myGLCD.drawPixel(i,239+(sin(((i*1.13)*3.14)/180)*200));
  }
  
  myGLCD.setColor(255,0,0);
  myGLCD.print("Cos", 5, 27);
  for (int i=1; i<798; i++)
  {
    myGLCD.drawPixel(i,239+(cos(((i*1.13)*3.14)/180)*200));
  }

  myGLCD.setColor(255,255,0);
  myGLCD.print("Tan", 5, 39);
  for (int i=1; i<798; i++)
  {
    myGLCD.drawPixel(i,239+(tan(((i*0.9)*3.14)/180)));
  }

  delay(2000);

  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);
  myGLCD.setColor(0, 0, 255);
  myGLCD.setBackColor(0, 0, 0);
  myGLCD.drawLine(399, 15, 399, 464);
  myGLCD.drawLine(1, 239, 798, 239);

// Draw a moving sinewave
  x=1;
  for (int i=1; i<(798*20); i++)
  {
    x++;
    if (x==799)
      x=1;
    if (i>799)
    {
      if ((x==399)||(buf[x-1]==239))
        myGLCD.setColor(0,0,255);
      else
        myGLCD.setColor(0,0,0);
      myGLCD.drawPixel(x,buf[x-1]);
    }
    myGLCD.setColor(0,255,255);
    y=239+(sin(((i*1.65)*3.14)/180)*(200-(i / 100)));
    myGLCD.drawPixel(x,y);
    buf[x-1]=y;
  }

  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some random filled rectangles
  for (int i=0; i<50; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(746);
    y=16+random(397);
    x2=x+50;
    y2=y+50;
    myGLCD.fillRect(x, y, x2, y2);
  }

  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some random filled, rounded rectangles
  for (int i=0; i<50; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(746);
    y=16+random(397);
    x2=x+50;
    y2=y+50;
    myGLCD.fillRoundRect(x, y, x2, y2);
  }
  
  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some random filled circles
  for (int i=0; i<50; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=27+random(746);
    y=41+random(397);
    myGLCD.fillCircle(x, y, 25);
  }
  
  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some lines in a pattern
  myGLCD.setColor (255,0,0);
  for (int i=15; i<463; i+=5)
  {
    myGLCD.drawLine(1, i, (i*1.66)-10, 463);
  }
  myGLCD.setColor (255,0,0);
  for (int i=463; i>15; i-=5)
  {
    myGLCD.drawLine(798, i, (i*1.66)+30, 15);
  }
  myGLCD.setColor (0,255,255);
  for (int i=463; i>15; i-=5)
  {
    myGLCD.drawLine(1, i, 770-(i*1.66), 15);
  }
  myGLCD.setColor (0,255,255);
  for (int i=15; i<463; i+=5)
  {
    myGLCD.drawLine(798, i, 810-(i*1.66), 463);
  }
  
  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some random circles
  for (int i=0; i<250; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=32+random(736);
    y=45+random(386);
    r=random(30);
    myGLCD.drawCircle(x, y, r);
  }

  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some random rectangles
  for (int i=0; i<250; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(796);
    y=16+random(447);
    x2=2+random(796);
    y2=16+random(447);
    myGLCD.drawRect(x, y, x2, y2);
  }

  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

// Draw some random rounded rectangles
  for (int i=0; i<250; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(796);
    y=16+random(447);
    x2=2+random(796);
    y2=16+random(447);
    myGLCD.drawRoundRect(x, y, x2, y2);
  }

  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

  for (int i=0; i<250; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    x=2+random(796);
    y=16+random(447);
    x2=2+random(796);
    y2=16+random(447);
    myGLCD.drawLine(x, y, x2, y2);
  }

  delay(2000);
  
  myGLCD.setColor(0,0,0);
  myGLCD.fillRect(1,15,798,464);

  for (int i=0; i<10000; i++)
  {
    myGLCD.setColor(random(255), random(255), random(255));
    myGLCD.drawPixel(2+random(796), 16+random(447));
  }

  delay(2000);

  myGLCD.fillScr(0, 0, 255);
  myGLCD.setColor(255, 0, 0);
  myGLCD.fillRoundRect(320, 190, 479, 289);
  
  myGLCD.setColor(255, 255, 255);
  myGLCD.setBackColor(255, 0, 0);
  myGLCD.print("That's it!", CENTER, 213);
  myGLCD.print("Restarting in a", CENTER, 239);
  myGLCD.print("few seconds...", CENTER, 252);
  
  myGLCD.setColor(0, 255, 0);
  myGLCD.setBackColor(0, 0, 255);
  myGLCD.print("Runtime: (msecs)", CENTER, 450);
  myGLCD.printNumI(millis(), CENTER, 465);
  
  delay (1000);
  myGLCD.clrScr();
}
und im Anhang die zusätzlich zu den UTFT- Libs benutzte Lib. Diese muss in einem eigenen Unterverzeichnis stehen. Code lies sich bei mir zumindest für den mega übersetzen. Realer Test nicht machbar, da keine passende HW.
Grüße Ricardo

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2014, 17:59 (Dieser Beitrag wurde zuletzt bearbeitet: 20.08.2014 11:23 von alpenpower.)
Beitrag #14
RE: Probleme mit Mega u. 5" TFT
Hallo Ricardo,

vielen Dank für Deine Mühen. Leider komme ich nicht weiter.

Mit der UTFT_CTE, im Libraryordner installiert, läuft zwar der Compiler wie bei Dir durch, aber programmtechnisch ändert sich nichts. Es ist wie verhext.
In meinem Lib.ordner existiert jetzt der Ordnder UTFT u. UTFT_CTE, alles von hier bezogen.
Die kleinen Änderungen habe ich schon bemerkt, hatte diese in meinen eigenen Versuchen schon abgeändert.

Der Ablauf ist wie schon mehrmals von mir beschrieben. Ich hab noch ein paar Serial.print eingebaut, um den Fortlauf zu erkennen. Hier wird der Code stufenweise sauber durchlaufen, nur die Funktionen passen nicht.

Was noch komisch ist, ist die Tatsache, dass hier zwei Dinge gleichzeitig nicht funktionieren, einmal die Grafik '0.CTE' von der SD laden und dann noch die Fontsache. Es sind doch vom Programmcode her getrennte Funktionen.
Kannst Du dir dazu einen Reim drauf machen?

Dieser Punkt mit dem FLASH_CS_PIN kapier ich nicht, weil dieser nirgends definiert ist.

Code:
void setup()
{
  delay(1000);
  CTE_LCD.SPI_Flash_init(FLASH_CS_PIN);    
  SPI.begin();
  SPI.setClockDivider(SPI_CLOCK_DIV2);
  //SPI.setClockDivider(SPI_CLOCK_DIV128)  // SPI Speed, For compatibility, uncomment this, For Speed, comment this
  Serial.begin(38400);
  Serial.print("Setup");
  .....

Gruß Franz

Code geändert: Serial1....->Serial....sorry mein Fehler
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2014, 18:14
Beitrag #15
RE: Probleme mit Mega u. 5" TFT
Hallo Franz,
na das hört sich ja Kac.. an!
Kannst du mir bitte mal die 0.cte reinstellen. Ich möchte mal sehen was auf einem 7er Display auf dem Due passiert.
Grüße RK

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2014, 19:14 (Dieser Beitrag wurde zuletzt bearbeitet: 20.08.2014 11:22 von alpenpower.)
Beitrag #16
RE: Probleme mit Mega u. 5" TFT
Hallo Ricardo,

hier im Anhang das 0.CTE.
Es wurde mit dem 'Image Importer for CTE LCD Module.exe' erstellt.

.zip  0.zip (Größe: 87,26 KB / Downloads: 72)

Gruß Franz

Hinweis: den Beitrag #14 habe ich nochmals editiert. Serial.print... klappt schon, Code wird durchlaufen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Arduino Micro - Probleme madin 28 439 Gestern 20:53
Letzter Beitrag: Tommy56
  Probleme mit dem FTDI-Chip Harry Hirsch 6 129 08.12.2016 19:08
Letzter Beitrag: René Hitz
  Probleme mit ESP8266 BennIY 6 231 20.11.2016 14:49
Letzter Beitrag: BennIY
  MEGA 2560 mit 5V 12A Netzteil betreiben möglich? Nafetz 18 511 11.11.2016 05:59
Letzter Beitrag: peterfido
  3 Arduino Mega, 2 Sender 1 Empfänger claudius 22 643 18.10.2016 17:32
Letzter Beitrag: Pardini
  Probleme mit mehreren DS18B20 Fühlern Uwa 12 332 15.10.2016 15:26
Letzter Beitrag: ardu_arne
  Probleme mit SIM900 GSM seit PinManagment test BennIY 0 178 31.07.2016 23:33
Letzter Beitrag: BennIY
  Probleme mit dem Arduino Ethernet-Shild jalu4601 25 1.361 06.06.2016 16:09
Letzter Beitrag: Bitklopfer
  Probleme mit ws2812b Led stripes Gravia 5 727 04.06.2016 14:50
Letzter Beitrag: Digit_AL
  Probleme mit Schrittmotorsteuerplatine Wetteronkel 2 546 16.03.2016 16:07
Letzter Beitrag: Wetteronkel

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste