Hallo. Möchte per ESP32 Convertierte HEX Bilder auf das ISP 0,96" disülay übertragen. Möchte werbetafel im Masstab 1:87 herstellen. Bekomme die daten nicht übertragen. Wer kann mich unterstützen Mfg
puh ist lange her, aber zuerst solltest du das Bild in 16bit konvertieren Da gibt es einige Konverter, mir war so als wenn OS2 Konvertierung besser läuft als Windows lower higher Byte first (schon wieder vergessen). Dann kannst du ab BMP mit einem Hexmonitor die Data aus dem gespeicherten Bild rausholen. Oder du machst eine Konvertierung machen von JPG 24-bit zu 16-bit 5-6-5 RGB. Einige TFT haben eine andere Byte-Order GBR, das muss man dann wieder umsortieren. Auch da gibt es viele wege, ich bin nicht so der begnadete Progger, aber ich finde immer eine Lösung
1 | /* Graphics data created with GLCD_Convert developed by Konstantinos Halakatevakis.
|
2 | Looking for cool displays? Visit "http://www.Display3000.com"
|
3 | */
|
4 | |
5 | /* Color mode byte:
|
6 | |
7 | Bit 0: 0 --> Compression on
|
8 | 1 --> Compression off
|
9 | |
10 | Bit 1 - 4: 0000 --> 65536 colors
|
11 | 0001 --> 4096 colors
|
12 | 0010 --> 256 colors
|
13 | 0011 --> Palette mode 256 - 32 colors (1 byte = 1 pixel)
|
14 | 0100 --> Palette mode 16 - 8 colors (1 byte = 2 pixel)
|
15 | 0101 --> Palette mode 4 colors (1 byte = 4 pixel)
|
16 | 0110 --> Palette mode 2 colors (1 byte = 8 pixel)
|
17 | 0111 --> Monochrome mode - Vertical orientation
|
18 | 1000 --> Monochrome mode - Horizontal orientation
|
19 | 1001 --> Reserved
|
20 | 1010 --> Reserved
|
21 | 1011 --> Reserved
|
22 | 1100 --> Reserved
|
23 | 1101 --> Reserved
|
24 | 1110 --> Reserved
|
25 | 1111 --> Reserved
|
26 | |
27 | Bit 5 - 7: Reserved
|
28 | |
29 | Bit 8 - 10: 000 --> 256 colors or no palette
|
30 | 001 --> 128 colors
|
31 | 010 --> 64 colors
|
32 | 011 --> 32 colors
|
33 | 100 --> 16 colors
|
34 | 101 --> 8 colors
|
35 | 110 --> 4 colors
|
36 | 111 --> 2 colors
|
37 | |
38 | Bit 11 - 15: Reserved
|
39 | |
40 | */
|
41 | |
42 | const unsigned char PROGMEM achim_klein160os2[40960] = { // - DATA |
43 | 0xCD, 0xB2, 0xD5, 0xD3, 0xDE, 0x14, 0xE6, 0x76, 0xE6, 0x76, 0xD5, 0xF3, 0xA4, 0x0A, 0xAC, 0x6C, ................ |
44 | 0xDE, 0x35, 0xD6, 0x15, 0xD6, 0x15, 0xDE, 0x35, 0xD6, 0x15, 0xD6, 0x15, 0xD6, 0x15, 0xD6, 0x15 |
45 | };
|
46 | |
47 | uint16_t newColor(uint16_t loc_color) { |
48 | uint8_t r=(uint8_t)(loc_color&31); |
49 | uint8_t g=(uint8_t)((loc_color>>5)&63); |
50 | uint8_t b=(uint8_t)(loc_color>>11); |
51 | return ( ((map( r, 0, 31, 0, 255) & 0xF8) << 8) | ((map( g, 0, 63, 0, 255) & 0xFC) << 3) | (map( b, 0, 31, 0, 255) >> 3) ); |
52 | } // uint16_t newColor(uint16_t loc_color) |
53 | |
54 | c_home=(uint8_t *)achim_klein160os2; |
55 | i=0; |
56 | x=0; |
57 | y=0; |
58 | |
59 | for(i=0; i<40960; i+=2) { |
60 | pixCOLOR=(uint16_t)((256*pgm_read_byte(c_home+i))+pgm_read_byte(c_home+i+1)); |
61 | x=(i/2)%128; |
62 | y=(i/2)/128; |
63 | tft.drawPixel( x, y, newColor(pixCOLOR) ); |
64 | } // for(i=0; i<40960; i+=2) |
65 | digitalWrite(TFT_BL, HIGH); // sets the TFT_BL on |
andreakarina schrieb: > das ISP 0,96" display Das ist zu ungenau, verweise bitte auf ein konkretes Produkt und dessen Datenblatt. > Bekomme die daten nicht übertragen. Zeige, was du versucht hast und was du bisher überprüft hast. Ich hoffe du hast einen Logic Analyzer, sonst bestellt dir sofort einen. Zeige auch den Schaltplan und Fotos von deinem Aufbau. Wir müssen erstmal abschätzen, ob wir den Fehler in der Hardware oder in der Software suchen. Dazu sind Bilder sehr hilfreich, auch wenn das Display gar nichts anziegt.
Stefan ⛄ F. schrieb: > Ich hoffe > du hast einen Logic Analyzer, sonst bestellt dir sofort einen. bist du jetzt unter die Logicanalyzervertreter gegangen? Ich habe es tatsächlich ganz ohne geschafft, war das ein Fehler?
andreakarina schrieb: > Wer kann mich unterstützen Bitte melde dich an. Dann kann man dir per Email ein funktionierendes Programm schicken. Welche IDE verwendest du? Bei den Arduino Libs gibt es etliche mit Problemen. Das momentan viel verkaufte "Blue Tab" TFT Display wird von keiner mir bekannten Lib ohne Änderungen vernünftig bedient.
Georg G. schrieb: > Bitte melde dich an. Dann kann man dir per Email ein funktionierendes > Programm schicken. Wie geht das denn? Nicht das Anmelden, sondern das verschicken von Programmen and den angemeldeten Account.
Joachim B. schrieb: > bist du jetzt unter die Logicanalyzervertreter gegangen? Ich vertrete die Meinung, dass man elektronische Probleme mit Messgeräten untersuchen soll, anstatt zu raten. > Ich habe es tatsächlich ganz ohne geschafft, war das ein Fehler? Schön für dich, dann kannst du ja jetzt als Consulter durchs Land ziehen und deinen Kunden erklären, das sie keine Messgeräte mehr brauchen. Ich wünsche dir viel Erfolg dabei.
Stefan ⛄ F. schrieb: > Wie geht das denn Es gibt Dinge, die man nicht breit im Forum streuen möchte. Mit angemeldeten Usern kann man "privat" schreiben und dann Email Adressen austauschen. Nun zufrieden?
Georg G. schrieb: > Mit angemeldeten Usern kann man "privat" schreiben und > dann Email Adressen austauschen. Nun zufrieden? Ach so, ja den Weg kenne ich natürlich. Ich dachte ich hätte ein praktisches feature übersehen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.