Hallo Zusammen, habe ein Nokia Display vom 3510 am STK500 hängen. Es kommen aber nur Balken. Zwischen den Pins des AVR und des Dislay sind 3 Dioden in Reihe ( für 2,9V). Habe die Hardware kontrolliert kein fehler gefunden. Habt ihr ne Ahnung? Achso nicht schimpfen, habe das in nem Anderen Thread geschriben möchte diesen aber nicht auf mich lenken. Motto: Eigenes Problem, eigener Thread ;-)
Wer die Bilder in etwas größer sehen will, soll sie sich doch bitte beim Crossposting hier Beitrag "Re: LCD Nokia 5510 Initialisierungsproblem" ansehen. Nein, 2.5MB sind wirklich völlig übertrieben ---> http://www.mikrocontroller.net/articles/Bildformate Durchlesen!
oh sorry hab ich in der eile heut morgen übersehen. kommt nicht wieder vor
Gast
#2880007
Hallo, > Pin1 _Reset > Pin2 _Cs > Pin3 Gnd > Pin4 Sdata > Pin5 Sclk > Pin6 Vio 1.8V > Pin7 Vbooster in 2.7V > Pin8 Vlcd max.12V >das habe ich auch grad wieder gefunden, ist wieder anders zudem was ich >angeschloßen habe Am besten alle mit einem Multi-Z mal "durchpiepsen". -> hast du ja bereits gemacht. Die richtige Pinbelegung fuer deinen Code siehst du in Nokia_3310.h, bzw. musst du dort festlegen. Verwirrend ist das fuer CS (ChipSelect) zwei verschiedene Pins in Software definiert sind, obwohl in Hardware nur einer (SS) angeschlossen sein kann. Die Hardware macht die Vorgaben. Wichtig, der Code den du verwendest macht HW-Spi, also(ATmega8): | LCD3310 | ATmega8 | -------------------------------------------- | SCLK (Pin5) | SCK | | SDATA (Pin4) | MOSI | | CS (Pin2) | SS | Den Pin1 Reset kannst ueberall anschliessen, wichtig nach startup ein Reset N3310_InitDisplay ausfuehren und am besten den Reset lange halten also das delay aendern auf min. 200ms.
1 | |
2 | |
3 | |
4 | |
5 | |
Was bei deiner LCD Pin Belegung fehlt ist der D/C - Data / Control Pin. Dieser ist wichtig, er steuert den Typ der Daten die ueber Hardware SPI zum LCD gesendet werden. Wo ist dieser? Wie nun die Versorgungsspannungen fuer den Controller und den LCD selber sind, kann ich dir nicht genau sagen, wichtig ist dass die Versorgungspannung fuer den Controller das selbe Spannungsnievau wie der Mikrocontroller ist. Ich sehe du brauchst nicht soviel loeten, aber immer schoen die Verbindungen pruefen, dann klappts auch. Viel Spass! Gruss daniel
also egal was ich mach, des bleibt den den mustern.... hat noch wer ne idee?
Gast
#2882494
Hallo, kennst du den schon? Beitrag "Re: Nokia 3310 Lcd Ansteuerung in AVR-GCC" kannst ja den User mal eine PN schicken. Was ist den nun mit dem D/C Pin? Gruss daniel
Gast
#2882633
mit dem D/C pin habe ich ohne erfolg rumgespielt. habs so defined gelassen und am lcd gebrückt, den hw-pin gebrückt, nix, joa habs auf den selben pin defined, nix. alle anderen möglichkeiten habe ich auch durch. das lcd kann mich langsam mal ;-) werde ihm mal schreiben, nein den link kannte ich noch nicht, danke
yast schrieb: > mit dem D/C pin habe ich ohne erfolg rumgespielt. > habs so defined gelassen und am lcd gebrückt, den hw-pin > gebrückt, nix, joa habs auf den selben pin defined, nix. An der Vorgehensweise solltest Du noch arbeiten. Das Display hat seine Anschlüsse nicht aus Jux und Dollerei, die haben eine Bedeutung. Auf http://www.jtronics.de/avr-projekte/display-nokia3310.html ist die Beschriftung der Pinbelegung etwas verrutscht, deswegen hier nochmal: 1 - VCC 2,7 bis 3,3V 1 - SCK Clock 2 - SDIN Data in 3 - D/C Data=1/Command=0 4 - SS Chip select - low aktiv 5 - GND GND 6 - VOUT Contrast LCD(~10µF to GND) 7 - RES Reset LCD - low aktiv Vielleicht funktioniert die ganze Angelegenheit bei Dir auch nicht, weil das Frickelboard Kontaktprobleme hat; das wäre nicht das erste Mal in diesem Forum.
Gast
#2882728
genau so hatte ich es angeschlossen. das tauschen war nur noch ein verzweiflungsakt.... das pinout habe ich von der seite. habe vom avr-pin pis zum displaypin gemessen, immer durchgang. kann mir einer die defines erklären(also das doppelte wie oben beschrieben)?
yast schrieb: > (also das doppelte wie oben beschrieben)? Was magst Du damit meinen?
Gast
#2882855
daniel schrieb: > Die richtige Pinbelegung fuer deinen Code siehst du in Nokia_3310.h, > bzw. musst du dort festlegen. Verwirrend ist das fuer CS (ChipSelect) > zwei verschiedene Pins in Software definiert sind, obwohl in Hardware > nur einer (SS) angeschlossen sein kann. Die Hardware macht die Vorgaben. > Gruss daniel das meinte ich damit. Gruß
Gast
#2885622
Hallo in Nokia_3310.h ist es wie folgt definiert:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
Also wenn du
>Please define in Nokia_3310.h the hardware pins for your device !
beim compilieren erscheint, hast du weder ATmega8, noch ATmega128, oder
vielleicht gar nicht mcu definiert(-Dmcu= und #include <avr/io.h>
setzen die richtigen defines).
Ich nehme mal an du hast ein ATmega8 dann ist fuer dich nur folgender
Code interresant.1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
Der Author der Bibliothek arbeitet mit Hardware SPI und initialisiert entsprechend alle am N3310_SER_DDR dafuer. Jedoch kontrolliert er den CS Pin selbst, welche mittel N3310_CTRL_DDR initialisiert werden. Da nun CS am N3310_SER_DDR nicht gleich dem am N3310_CTRL_DDR ist, kann es nicht gehen. Variante 1: Headerfile an die Hardware anpassen. Fuer einen Atmega8 wuerde ich es wie folgt abaendern:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
Wie du siehst habe ich alle Pins an PortB gelegt, so ist auch N3310_CS_ gleich N3310_CS, werden aber beide initialisiert. Variante 2: Hardware an das Headerfile anpassen. Fuer einen ATmega8 DIP wie folgt: (oben sind die Ziffern verrutscht, ich beziehe mich auf korrigierte Ziffern, Pin 1 am Display musst du selber finden) PIN LCD3310 - PIN ATmega8-DIP 2 - SCK - 19 (PB5) Clock (HW SPI) 3 - SDIN - 17 (PB3) Data in (HW SPI) 4 - D/C - 11 (PD5) Data=1/Command=0 5 - SS - 12 (PD6) Chip select - low aktiv 8 - RES - 13 (PD7) Reset LCD - low aktiv Spannungsversorgung musst du selber wissen. Bei 5V eben 3 Dioden in die Hauptzuleitung fuer Controller UND Display und mal messen. 1 - VCC 2,7 bis 3,3V 6 - GND GND 7 - VOUT Contrast LCD(~10µF to GND) Wenns immer noch nicht geht mal eine Bibliothek ohne HW SPI versuchen oder das Display auseinander bauen :). Gruss daniel
Gast
#2885642
Hallo, wie ich beim nochmaligen anschauen der Routinen sehe, wird die Helligkeit (Vout) ueber den OC1B gesteuert. Also mittels PWM ein eine Spannung fuer den Contrast erzeugt.
1 | |
Damit kann man Vout LCD pin 7 direkt an uC pin 16 anschliessen und den Contrast per Software steuern. Aus diesem Grund ist N3310_CS_ - PB2 (SS) aus meiner Variante 1 oben nicht verwendbar und muesste auf ein anderen freien Pin (PB6, PB7) am Port B gelegt werden. Das geht aber auch nur wenn kein externer Quarz verwendet wird. Andernfalls eben die Init nicht aufrufen in main.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
Gruss daniel
Gast
#2885648
Hallo, >Damit kann man Vout LCD pin 7 direkt an uC pin 16 anschliessen und den >Contrast per Software steuern. Das sollte man auf keinen Fall, den Vout bedeutet sicherlich Spannungsausgang. Gruss daniel
Gast
#2885833
jetzt hab ichs gerafft mit der pindefinition.(Habe einen At88 ist aber pinkompatibel...) das heißt die unteren defines sind dann für software spi? werde das heut mal ausprobieren und dann berichten. kontrast mach ich über ein C.geht wunderbar. lasse also den pwmpin einfach frei.
Gast
#2885839
mit dem At88 ist quatsch der ist in nem anderen projekt verbaut.. aber wenns mit dem At8 läuft, dann werde ich das auch angehen. du siehst daniel, wirst nicht arbeitslos ;-) Vielen dank für die Hilfe( und geopferte Zeit)
Gast
#2885932
Hallo, >die unteren defines sind dann für software spi? Teils. So wird das CS in den unteren Defines definiert und das obere define fuer CS hat gar keine bedeutung, das es in der Software sogar ueberschrieben wird mit dem OC1B. Also auf keinen Fall als CS nehmen. Aber wichtig ist es, deswegen in den unteren defines definieren. Probier erstmal die Variante2 mit eine ATmega8. >Vielen dank für die Hilfe( und geopferte Zeit) Gut Ding will Weile haben. Gruss daniel
Hast du es jetzt hin bekommen? Die Lib habe ich erst letzte Woche mit einem Atmega128 getestet und anschließend auf einen Xmega portiert. Hat alles super geklappt. Der Ausgangspin für das Hintergrundlicht ist nur optional und soll über PWM die LEDs für das Hintergrundlicht schalten. Natürlich über einen externen Transistor oder Mosfet. Grüße martin
Gast
#2886865
nein leider hatte ich gestern keine zeit. heute wirds aber was denke ich. achso was mir aufgefallen ist das display oben im bild hat nur 8pins ,wie oben beschrieben, nichts weiter. das andere display, auch angeblich 3510 hat neben den 8 pins noch 4 stück an denen kondensatoren sitzten. Die pins sind aber nicht an die federkontakte angeschlossen. was sind das für welche (hab leider kein bild da).
Gast
#2887167
Hallo, > auch angeblich 3510 hat neben den 8 pins noch 4 stück an denen > kondensatoren sitzten. > was sind das für welche Kann es sein das es ein 3510i ist, dann ist diese nicht monochrom. Das 3510(ohne i) ist monochrom. So hab ich es hier im forum mal gelesen. Einfach mal nach 3510 suchen. Gruss daniel
Gast
#2887171
Hallo, schau mal hier, veilleicht findest du ja eins was deinem unbekannten aehnelt. http://www.module.ro/nokia_3510.html Gruss daniel
Gast
#2887179
ist schwer da es nur zeichnungen sind. danke den link kenne ich;-) beim 6310 sind noch 3 "knubbel" gezeichnet, das könnten die c´s sein. ich mach heut abend mal nen foto. komisch ist nur, das sie die gleichen plexiglasträger haben wie das mit dem ich grad kämpfe.
Gast
#2887812
also beide varianten funktionieren nicht. vlt hat das display auch ne macke?! keine ahnung. hab alles durchgeklingelt, passt. spannung gemessen, passt. keine ahnung vlt fuses? habe alles standart. nur den quarz intern auf 8 Mhz, extern hängt natürlich keiner dran. noch ne idee? sonst wandert das die aufm direkten weg in de müll :D
Hab grad gesehen, dass das ja kein N3310 ist, daher wird das nicht gehn. Die Displays sehen zwar ähnlich aus, haben aber komplett andere Initialisierungsroutinen.
such lieber ein richtiges N3310 da kannst du sicher sein, dass es auch geht
Gast
#2888330
Hallo, >noch ne idee? Bist du auch sicher das der HW-SPI aktiv ist? Ansonsten SW-SPI mal probieren der muss dann funktionieren. Gibts in dem Code Beitrag "LCD Nokia 5510 Initialisierungsproblem" ein paar Ansaetze, musst eben die Defines anpassen.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
Hast du mal den User Meik http://www.mikrocontroller.net/user/show/meik eine Private Nachricht geschickt und gefragt wie er es gemacht hat? > dass das ja kein N3310 ist, daher wird das nicht gehn. Da gab es hier irgendwo im Forum mal den Mythos das es geht, aber wir sind ja alle Mythbusters. >sonst wandert das die aufm direkten weg in de müll Auf keinen Fall ! Vorher AUS EINNANDER NEHMEN und hier Fotos posten. Wir wollen ja nicht dumm sterben und sind alle neugirieg wie es in drin aussieht. Dann kannst es ja als jPad mini auf Ebay verticken :). Gruss daniel
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.

