Hallo, ich brauche hilfe zum betreiben des Displays DOGXL. Ich will ihn mit einem Atmega8 im 3-wire 8-bit SPI Modus betreiben. Die Verschaltung ist wie laut Datenblatt. Einzige änderungen 1uF Kondensator zw. pin 19 und 20 bzw 18 und 21. An VLCD habe ich einen 0,1 uF an Masse. Auf die Polung bei den elkos habe ich geachtet. Reset (Pin 29) liegt auf masse. Pin 27 geht an PB2, 31 an PB3 und 32 an PB5. Die Pegelwandlung habeich über Spannungsteiler gemacht. Es tut sich allerings gar nicht am Display. Ich bin für jede Hilfe dankbar.. So sieht mein Code aus #define F_CPU 1000000UL /ontroller Taktfrequenz #include <avr/io.h> #include <stdint.h> #include <util/delay.h> //DOGXL160 Initialisierungsbefehle #define Set_Com_End_H 0xF1 #define Set_Com_End_L 0x67 #define Set_LCD_Mapping_Control 0xC6 #define Set_Scroll_Line_LSB 0x40 #define Set_Scroll_Line_MSB 0x50 #define Set_Panel_Loading 0x2B #define Set_Pump_Controll 0x2F #define Set_LCD_Bias_Ratio 0xEB #define Set_Vbias_Potentiometer_H 0x81 #define Set_Vbias_Potentiometer_L 0x5F #define Set_RAM_Address_Control 0x89 #define Set_Display_Enable 0xAF //DOGXL160 weitere Befehl #define Set_All_Pixels_On 0xA5 #define Set_Inverse_Display 0xA6 #define System_Reset 0xE2 #define Page_Address 0x60 #define Column_LSB0 0x00 #define Column_MSB0 0x10 void SPI_Master_Init(void) //ISP Initialisierungs Funktion { SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0); } void SPI_Senden(char cData) //SPI Senden Funktion { SPDR = cData; while(!(SPSR & (1<<SPIF))); } void waitus(void) //warten fkt { _delay_us(10); } //DOGXL160 void DOGXL160_Init(void) { PORTB &= ~(1<<PB2); SPI_Senden(Set_Com_End_H); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Com_End_L); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_LCD_Mapping_Control); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Scroll_Line_LSB); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Scroll_Line_MSB); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Panel_Loading); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Pump_Controll); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_LCD_Bias_Ratio); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Vbias_Potentiometer_H); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_Vbias_Potentiometer_L); PORTB |= (1<<PB2); waitus(); PORTB &= ~(1<<PB2); SPI_Senden(Set_RAM_Address_Control); PORTB |= (1<<PB2); waitus();; PORTB &= ~(1<<PB2); SPI_Senden(Set_Display_Enable); PORTB |= (1<<PB2); } int main (void) //Hauptprogramm { //Variablen, Arrays //Initialisierungen _delay_ms(500); /* Set MOSI and SCK output, all others input */ DDRB = 0b00001100; SPI_Master_Init(); //SPI initialisieren PORTB |= (1<<PB2); //CD --> high (Data) _delay_us(10); PORTB &= ~(1<<PB2); //CD --> low (Command) SPI_Senden(System_Reset); PORTB |= (1<<PB2); //CD --> high (Data) _delay_us(10); DOGXL160_Init(); //Display initialisieren _delay_ms(10); PORTB &= ~(1<<PB2); //CD --> low (Command) SPI_Senden(0x6C); //Page Address = 12 PORTB |= (1<<PB2); //CD --> high (Data) _delay_us(10); PORTB &= ~(1<<PB2); //CD --> low (Command) SPI_Senden(0x15); //Column Address = 80 PORTB |= (1<<PB2); //CD --> high (Data) _delay_us(10); PORTB &= ~(1<<PB2); //CD --> low (Command) _delay_us(10); PORTB |= (1<<PB2); //CD --> high (Data) SPI_Senden(0b00011011); //Testbild vier Pixel in der Displaymitte PORTB &= ~(1<<PB2); //CD --> low (Command) //Hauptschleife while(1) { //test ob uC läuft DDRC = 0xff; //AUSGANG PORTC=0b11111111 ; //LED } return 0; }
>So sieht mein Code aus > >#define F_CPU 1000000UL /ontroller Taktfrequenz Daraus macht der Compiler sicher nur eine Fehlermeldung. > /* Set MOSI and SCK output, all others input */ >DDRB = 0b00001100; Netter Kommentar, nur wird SCK nicht zum Ausgang.
Hi
> Auf die Polung bei den elkos habe ich geachtet.
Welche Elkos?
Kannst du nach der Initialisierung an Pin17 eine Spannung > 10V messen.
MfG Spess
@Holger: hast recht hab die zeile abgeändert in DDRB = 0b00101000; das /controller stand so nicht im quelltext, der fehler ht sich beim schreiben des threads eingeschlichen. @spess: die elkos zw. pin 19 und 20 bzw. 18 und 21, sowie an VLCD. Die spannung von 10 Volt kann ich nicht messen. Wobei ich jetzt sagen muss das die LED mit abgeänderten Zeile "DDRB = 0b00101000;" nun nicht mehr angeht. Das heißt wohl es wird nicht initialisiert?!
Hi >@spess: die elkos zw. pin 19 und 20 bzw. 18 und 21, sowie an VLCD. >Die spannung von 10 Volt kann ich nicht messen. Da gehören Keramik-Cs hin. MfG Spess
bist du sicher,das es mit elkos nicht geht? zumindest hab ich gelesen das hier einige elkos benutzen. Was sagst du zum code. sollte das passen?
Hi >bist du sicher,das es mit elkos nicht geht? zumindest hab ich gelesen >das hier einige elkos benutzen. Das ist zumindest die Aussage von EA und meine eigene Erfahrung. Was sagst du zum code. sollte das passen? Ich bin notorischer Assemblerprogrammierer. Allerdings macht mich dieser Kommentar stutzig: > /* Set MOSI and SCK output, all others input */ Lies dir mal das Kapitel 'SS Pin Functionality' im Datenblatt durch. MfG Spess
Wir hatten vor einiger Zeit mal ein DOGXL160 Shield für den Arduino entwickelt. Vielleicht hilft der Schaltplan weiter: http://code.google.com/p/dogm128/wiki/dogxl160 Dort gibt es auch eine Graphic-Lib zum Runterladen (auch für nicht Arduino), die den DOGXL160 unterstützt. Die Lib enthält sowohl HW als auch SW SPI (soweit ich mich erinnere), was das Problem mit dem Slave-Select-Pin etwas entschäfen könnte. Grüße, Oliver
@spess: also im Datenblatt steht das SS als input festgelegt werden soll. Wenn ich das mache geht die LED nach der Initialisierung nicht an. Ich vermute das Programm bleibt irgendwo hängen. Hast du eventuell die Initialisierung als asm code. Damit könnte ich zumindest testen ob es überhaupt geht. @oliver: danke für den tip aber ich möchte es erstmal per hand machen.
>@spess: also im Datenblatt steht das SS als input festgelegt werden >soll. Wenn ich das mache geht die LED nach der Initialisierung nicht an. Genau das Gegenteil ist der Fall. SS muss ein Ausgang sein. Oder wenigstens ein Eingang mit Pullup, den du nicht als Eingang verwenden darfst!
Hi >@spess: also im Datenblatt steht das SS als input festgelegt werden >soll. Da steht auf S.125: 'If SS is configured as an output, the pin is a general output pin which does not affect the SPI system. Typically, the pin will be driving the SS pin of the SPI Slave.' Wenn du /SS als Eingang konfigurierst muss es auf H bleiben. Bei L an /SS schaltet das SPI in den Slave-Mode. >Hast du eventuell die Initialisierung als asm code. Damit könnte ich >zumindest testen ob es überhaupt geht. Das DOGXL habe ich vor längerer Zeit nur mal kurz getestet. Also noch keine richtige Lib erstellt. Die Initialisierung von SPI und LCD habe ich dir mal in den Anhang kopiert. Ein Beispiel für die Initialisierung in C findest du auch bei EA: http://www.lcd-module.de/support.html MfG Spess
habe jetzt den elko an VLCD durch einen aus keramik ersetzt und den 10M Widerstand hinzugefügt der nach neuerem datenblatt hinzugefügt werden soll. Auch nach vielem vielem probieren bekomme ich den doxl nicht zum laufen. Keine spannung an VLCD. Werde es jetzt morgen mal mit dem tip von oliver probieren. hab langsam das gefühl, das der display kaputt ist. naja mal schauen...
So ich habe jetzt nochmal den C quelltext auf das allernotwendigste runtergebrochen um eventuell fehler auszuschließen. ich bin mir fast sicher das der code richtig ist. Nochmal zum display: durch ändereung des pegels an PB2 wird wird der Bitzähler des displays zurückgesetzt, der pegel muss während der übertragung unverändert bleiben >> ist gewährleistet. Dann werden 8 Bits übertragen mit MSB zuerst >> ist gewährleistet. SCK max. 8 Mhz (der atmega läuft mit internem 1 Mhz) >> gewährleistet Hat jemand noch eine ideeoder findet jemand einen fehler?? Hier nochmal der Code: #define F_CPU 1000000UL //Controller Taktfrequenz #include <avr/io.h> #include <stdint.h> #include <util/delay.h> #define Set_Com_End_H 0xF1 #define Set_Com_End_L 0x67 #define Set_LCD_Mapping_Control 0xC0 #define Set_Scroll_Line_LSB 0x40 #define Set_Scroll_Line_MSB 0x50 #define Set_Panel_Loading 0x2B #define Set_LCD_Bias_Ratio 0xEB #define Set_Vbias_Potentiometer_H 0x81 #define Set_Vbias_Potentiometer_L 0x5F #define Set_RAM_Address_Control 0x89 #define Set_Display_Enable 0xAF #define System_Reset 0xE2 void waitus(void) //warten Fkt { _delay_us(10); } void SPI_Master_Init(void) //ISP Initialisierungs Funktion { SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR1)|(1<<CPOL)|(1<<CPHA); } void SPI_Senden(unsigned char cData) //SPI Senden Funktion { PORTB &= ~(1<<PB2); //LOW SPDR = cData; while(!(SPSR & (1<<SPIF))); PORTB |= (1<<PB2); //HIGH } void DOGXL160_Init(void) { SPI_Senden(Set_Com_End_H); waitus(); SPI_Senden(Set_Com_End_L); waitus(); SPI_Senden(Set_LCD_Mapping_Control); waitus(); SPI_Senden(Set_Scroll_Line_LSB); waitus(); SPI_Senden(Set_Scroll_Line_MSB); waitus(); SPI_Senden(Set_Panel_Loading); waitus(); SPI_Senden(Set_LCD_Bias_Ratio); waitus(); SPI_Senden(Set_Vbias_Potentiometer_H); waitus(); SPI_Senden(Set_Vbias_Potentiometer_L); waitus(); SPI_Senden(Set_RAM_Address_Control); waitus(); SPI_Senden(Set_Display_Enable); } //Hauptprogramm int main (void) { _delay_ms(500); DDRB = 0b00101100; //PB3 --> SCK, PB2 --> CD, PB5 --> MOSI SPI_Master_Init(); //SPI initialisieren PORTB |= (1<<PB2); //CD --> high (Data) waitus(); //CD --> low (Command) SPI_Senden(System_Reset); //CD --> high (Data) waitus(); DOGXL160_Init(); //Display initialisieren //Hauptschleife while(1) { DDRC = 0xff; //AUSGANG PORTC=0b11111111; //LED } return 0; }
stimmt, hab es geändert. es hat jedoch keine auswirkung auf das display.
achso meinst du das. Ne den reset Pin vom dogxl hab ich mit VDD verbunden ( also 3,3V).
"Die Verschaltung ist wie laut Datenblatt." wahrscheinlich zu trivial, aber: GOGXL /CS0 an GND ??? Gruß Holger Sch. heisst natürlich DOGXL :)
ja das war falsch.hab ich dann die letzten Tage noch berichtigt in der Schaltung.
Ich betreibe das DOGXL im 4wire-Mode; sollte eigentlich (wenn's richtig umgesetzt ist) egal sein. Straff mal Deine Initialisierung, die meisten Parameter werden eh per default gesetzt. Bei mir sieht's so aus.
1 | void Init_DOGXL(void){ |
2 | |
3 | volatile uint8_t i; |
4 | |
5 | INIT_DOGXL_PINS; // CMD u. RST für's LCD setzen. |
6 | for(i=200; i>0; i--){;}; // delay a little bit... |
7 | DOGXL_RELEASE_RST; // ... |
8 | Set_Vbias_Pot(0x9C); // VBIAS Cmd & Value(hier 0x9C !!!) |
9 | Clear_Screen(); // RAM mit 0x00 beschreiben |
10 | Send_Display_Cmd(DISPLAY_ENABLE); |
11 | }
|
Mann erkennt dann flächig einen Hauch von Pixel. Wie sieht denn Dein Display nach der INIT aus? Gruß Holger Sch ps: Deine: waitus(); kannste vergessen!
ziehst du den CD nach der Übertragung ohne Verzögerung wieder auf High? die waitus() war dafür gedacht da noch ein bischen zeit zu geben. meinst das macht probleme?
Das ganze ist jetzt so übersichtlich das man es gut nachvollziehen kann: #define F_CPU 1000000UL //Controller Taktfrequenz #include <avr/io.h> #include <stdint.h> #include <util/delay.h> #define Set_Com_End_H 0xF1 #define Set_Com_End_L 0x67 #define Set_LCD_Mapping_Control 0xC0 #define Set_Scroll_Line_LSB 0x40 #define Set_Scroll_Line_MSB 0x50 #define Set_Panel_Loading 0x2B #define Set_LCD_Bias_Ratio 0xEB #define Set_Vbias_Potentiometer_H 0x81 #define Set_Vbias_Potentiometer_L 0x5F #define Set_RAM_Address_Control 0x89 #define Set_Display_Enable 0xAF #define System_Reset 0xE2 void waitus(void) //warten Fkt { _delay_us(10); } void SPI_Master_Init(void) //ISP Initialisierungs Funktion { SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR1)|(1<<CPOL)|(1<<CPHA); } void SPI_Senden(char cData) //SPI Senden Funktion { PORTB &= ~(1<<PB2); //LOW = command (High=data) waitus(); SPDR = cData; while(!(SPSR & (1<<SPIF))); waitus(); PORTB |= (1<<PB2); //HIGH waitus(); } void DOGXL160_Init(void) { SPI_Senden(Set_Com_End_H); SPI_Senden(Set_Com_End_L); SPI_Senden(Set_LCD_Mapping_Control); SPI_Senden(Set_Scroll_Line_LSB); SPI_Senden(Set_Scroll_Line_MSB); SPI_Senden(Set_Panel_Loading); SPI_Senden(Set_LCD_Bias_Ratio); SPI_Senden(Set_Vbias_Potentiometer_H); SPI_Senden(Set_Vbias_Potentiometer_L); SPI_Senden(Set_RAM_Address_Control); SPI_Senden(Set_Display_Enable); } //Hauptprogramm int main (void) { _delay_ms(10); DDRB = 0b00101100; //PB3 --> SCK, PB2 --> CD, PB5 --> MOSI (alle Ausgang) SPI_Master_Init(); //SPI initialisieren SPI_Senden(System_Reset); _delay_ms(10); DOGXL160_Init(); //Display initialisieren //Hauptschleife while(1) { DDRC = 0xff; //AUSGANG PORTC=0b10111111; //LED } return 0; } Muss ich vielleicht MOSI oder SCK noch auf high ziehen?
Nach der init sehe ich garnichts hab aber auch den "FSTN neg. transmissiv". Allerdings kann ich an VLCD auch keine Spannung messen. Immer 0V.
ok, mit dem Befehl "Display_Enable" müsste sich eigentlich Vlcd
einstellen.
>Muss ich vielleicht MOSI oder SCK noch auf high ziehen?
Nein, Deine SPI-Initialisierung sollte richtig sein und die
entsprechenden Zustände nach einem Datentransfer herstellen.
Initialisiere nur mal "Vbias-pot", nix anderes, und spiele mit dem
Parameter rum.
Du initialisierst mit 0x5F, ich(FSTN pos. transflective) mit 0x9C.
Wenn's nix bring, klekker mal die Hardware zu Papier;
so wie'se ist, nicht so wie Du denkst.
Gruß Holger Sch
Nur vbias potentiometer zu intiliasieren bringt keine änderung. die schaltung ist wirklich wie nach datenblatt (ausnahme reset auf VDD). Werde dann morgen mal nen schaltplan basteln... PB2 schaltet auch den CD, habs nachgemessen. die spannungsteiler bringen auch schöne 3V an den dogxl. SCK und MOSI sind ja dann zwangsläufig durch die SPI init funktionstüchtig.
So das Dislay funktiniert!!! Es ist mir fast ein bischen peinlich aber als ich heute den schaltplan erstellt habe ist mir aufgefallen das SCK und SDA vertauscht sind...ggrrrr Jetzt habe ich 13,6 V an VLCD und überall auf dem display verteilt PIXEL (normal)???? Für alle die den dogxl mit einem atmega8 betreiben wollen, stelle ich mal hier den Schalplan und Quelltext mit rein.....
Hi >...habe ist mir aufgefallen das SCK und SDA vertauscht sind...ggrrrr Stimmt, das führt manchmal zu einem Fehlverhalten. >Für alle die den dogxl mit einem atmega8 betreiben wollen, stelle ich >mal hier den Schalplan und Quelltext mit rein..... Der ATMega8 bei einem solchen Display etwas schwach auf der Brust. Ein Bild in der Displaygröße hat schon über 4K. Einen oder mehrere Fonts möchtest du vielleicht auch. Übrigens kann das Display, im Gegensatz zu der Datenblattangabe, auch Grautöne. EA hat das, lt. eigener Aussage, aus Kontrastgründen nur als SW-Display beworben. MfG Spess
ja das mit den grautönen sehe ich auch grad. nach der init sind auf dem ganzen display pixel in verschiendenen tönen verteilt. Bin grad ein bischen am probieren mal ein paar pixel zu steuern.
Hallo Felix, na, hat dann ja doch geklappt. > und überall auf dem display verteilt PIXEL > (normal)???? Das Display-RAM ist undefiniert, wenn Du alles mal mit 0x00 beschreibst erhälst Du eine gleichmäßige Fläche. Dann noch mit den Displayparametern rumspielen und gut isses. Wenn Du dann mit der Frequenz hochgehen solltest währe es angebracht, die Spannungsteiler für's DOGXL um den Faktor 10 zu verkleinern. Gruß Holger Sch
also wenn ich alles mit 0 beschreibe bekomme ich einen fast schwarzen display. wenn man genau hinguckt sieht man aber vertikale streifen. ich schreibe die 0 mit der schleife: for(p=0; p < 26; p++) // 26 Pages { for(c=0; c < 160; c++) // 160 Columns { // SPI_Senden(0x00 + p); // SPI_Senden(0x00 + c); // SPI_Pixel(0b00000000); } }
So natürlich: for(p=0; p < 26; p++) // 26 Pages */ { for(c=0; c < 160; c++) // 160 Columns */ { SPI_Senden(0x00 + p); SPI_Senden(0x00 + c); SPI_Pixel(0b00000000); } }
Hi >also wenn ich alles mit 0 beschreibe bekomme ich einen fast schwarzen >display. Dann hasst du ein 'negatives' Display. Dann zum Löschen halt mit $FF beschreiben. MfG Spess
jetzt gehts. Man sollte in c die variablen deklarieren. sonst fängt die schleife irgendwo an :) genau, da ich ein negatives habe kann ich den display mit FF leer machen. Wenn ich alles mit 00 beschreibe wird der display ganz kurz hell, dann aber sofort wieder dunkel. kann der dogxl das nicht ab?
Hi >Wenn ich alles mit 00 beschreibe wird der display ganz kurz >hell, dann aber sofort wieder dunkel. kann der dogxl das nicht ab? Mach mal den Kondensator an VLCD größer. 100n stehen zwar im aktuellen Datenblatt, sind aber nach meiner Erfahrung zu klein. Beitrag "Re: Probleme Kontrast DOGXL160 - Graphik-LCD" MfG Spess
also ich habe jetzt mal ein bischen rumprobiert. aber ich verstehe die Adresszuweisung von Page und Column nicht. Im Datenblatt steht z.b "set page adress 011 PA(4-0) mit PA=0-25 Soll ich dann mit den ersten 5 Bit eine Zahl zwischen 0 und 25 darstellen??
Hi >Soll ich dann mit den ersten 5 Bit eine Zahl zwischen 0 und 25 >darstellen?? Die oberen 3 Bit (011) spezifizieren den Befehl 'Set Page Adress' und die unteren 5 Bit die Pagenummer. >Im Datenblatt steht z.b "set page adress 011 PA(4-0) mit PA=0-25 Du meinst hoffentlich das Datenblatt vom Displaycontroller (UC1610). MfG Spess
ah ok das habe ich verstanden. also die pixel kann ich jetzt schon relativ gut und gekonnt setzen. das einzige Problem was ich jetzt noch habe ist das wenn ich den display komplett dunkel mache mit: for(p=0; p < 26; p++) // 26 Pages */ { for(c=0; c < 160; c++) // 160 Columns */ { SPI_Senden(0x00 + p); SPI_Senden(0x00 + c); SPI_Pixel(0b00000000); } } Dann kann ich die pixel nicht mehr ansteuern. Wenn ich hingegen den Pixelsalat vom start beibehalte und dort drin rumwurschtel geht alles.
Hi >Dann kann ich die pixel nicht mehr ansteuern. >Wenn ich hingegen den Pixelsalat vom start beibehalte und dort drin >rumwurschtel geht alles. Du kannst kein einzelnes Pixel ansteuern. Um ein Byte (4 Pixel) gezielt zu Beschreiben gehst du wie folgt vor: Kommando Page setzen Kommando Low(Spalte) setzen Kommando High(Spalte) setzen Datenbyte setzen MfG Spess
was meinst du mit Low spalte bzw high spalt? den cs zieh ich bei Kommandos für die Übertragung immer nach low.
Hi >was meinst du mit Low spalte bzw high spalt? den cs zieh ich bei >Kommandos für die Übertragung immer nach low. Mal angenommen du willst in Page5 das Byte 53 adressieren dann sendest du 1. Kommando 0b01100101 = 0b01100000 (Set Page Adress) + 0b00000101 (5) 2. Die Spalte in 2 Befehlen. Einmal für das untere Nibble und dann für das obere Nibble. 53 = 0b00110101 | ||__|__Unteres Nibble |__|______Oberes Nibble Daraus ergeben sich die beiden Befehle: 0b00000101 = 0b00000000 (Set Column Address LSB) + 0b00000101 0B00010011 = 0b00010000 (Set Column Address MSB) + 0b00000011 MfG Spess
ok Ich habe es bis jetzt wie folgt gemacht. 1. Page senden: 0b01100000 2. column senden: 0b00000000 damit wäre die Position ganz oben links am Display. 3. Daten für Pixel senden womit ich dann bestimmen kann welche der 4 Pixel an oder aus sind. war das so komplett falsch? es hat zumindest meist funktioniert.
Hi >war das so komplett falsch? Nicht komplett. >2. column senden: 0b00000000 >damit wäre die Position ganz oben links am Display. Aber was ist so schwer zu verstehen, das die Column Adresse nicht in einem Stück gesendet wird? Dein Befehl setzt die Colunm Adresse auf einen Wert 0bxxxx0000. Tu dir bitte einen Gefallen und lies das Datenblatt vom Displaycontroller. Mit dem Datenblatt vom Display kommst du in Puncto Programmierung nicht weit. Die Befehlsliste ist unvollständig und nicht erläutert. Und mit deinem Trial&Error-Dediller wirst du nicht weit kommen. MfG Spess
ja das werde ich mir mal genauer ansehen. auf jedenfalls vielen dank an alle für die Unterstützung! Gruß Felix
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.