PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : XMEGA-Board mit OLED-Display



sdz55
13.11.2008, 21:13
Hi Leute,

Ich entwerfe gerade ein neues Mikrocontrollerboard mit dem XMEGA128A1 und dabei will ich ein OLED-Display von Densitron verwenden.
Jetzt habe ich mir einige Gedanken dazu gemacht, und wollte mal fragen ob jemand schon etwas mit einem OLED-Display zu tun hatte, und ob die Geschwindigkeit der SPI Schnittstelle ausreicht um ein 96x64Pixel Display anzusteuern? Denn ich möchte nicht, dass man 2 Minuten auf den Bildaufbau warten muss.

Oder hat sonst einer Erfahrung mit Grafik-Farb-Displays mit SPI?

Vielen Dank erstmal.

PS: Vielleicht gibts ja bald mal Bilder vom Projekt... ^^
Der Prototyp ist jedenfalls schon fertig, und alles funktioniert tadellos!
Soviel zum thema DAC und Eventsystem.
Falls ihr dazu Fragen habt könnt ihr mir die gerne stellen!

sdz55
14.11.2008, 18:16
So, Jetzt habe ich mal ein paar Bilder gemacht.
Das erste ist eine Übersicht vom Prototyp vom XMEGA-Board.
Auf dem zweiten Bild könnt ihr einen Sinus vom DAC sehen.

dremler
14.11.2008, 18:30
wäre schön wenn du üer deine weiteren fortschritte berichtest;) interssiert mich sehr..

rideyourstyle
14.11.2008, 22:55
Boaa XMEGA??? Dann möchte ich einmal höflich fragen, wo du diesen gekauft hast! Habe die dinger nähmlich noch nirgends gesehen...

sdz55
15.11.2008, 07:39
^^ ok, ich habe atmel höflichst gefragt, ob sie mir ein oder zwei Samples zusenden könnten.

@dremler
Ich werde auf jeden Fall weiterberichten.

sdz55
15.11.2008, 08:19
So, ich stelle euch jetzt mal vor, was alles aufs Board kommen wird.
Allerdings kann ich nicht ganz alles erwähnen, denn es braucht ja noch etwas Überraschung =P~

Folgende Bauteile, und Schnittstellen werden vorhanden sein:

-ATXMega128A1
-USB
-RS232
-8x LED
-8x Taster/Schalter
-1x Inkrementalgeber (mit Quadrature Decoder des XMega)
-1x Buzzer
-SPI
-TWI (I2C)
-Speicher (Flash EEPROM)
-OLED-Display

wer weiss, vielleicht noch mehr...

Dazu werde ich ein Headerfile mit den wichtigsten Funktionen erstellen.

chr-mt
20.11.2008, 13:06
Hi,
wie weit bist du denn mit dem Board ?
Externes Ram wäre auch ganz nett.
Ich wollte eigentlich auch ein Board für den 128A1 machen.
Das STK600 plus dem Board für den 128A1 kostet ja immerhin etwa 300€,
wenn ich das recht gesehen habe. Das ist mir doch zu teuer.

Nutzt du Eagle ? Wenn ja, hast du schon eine Library für den Chip ?
Ich hatte mal angefangen eine 128A1 Lib für Eagle zu machen.

Gruß
Christopher

sdz55
20.11.2008, 16:04
hi,
Das Board wird in nächster Zeit fertig.
Das Schema ist fertig gestellt, jetzt gehts noch ans Layouten und dann ist es fertig.
also ich habe externes EEPROM drauf, so an die 64k
Ja, das mit dem STK600 würde ich lassen, ich habe eins aber das ist nicht grad das tollste ;)
Ich benutze Altium Designer 6.0

chr-mt
20.11.2008, 16:10
Ja, das mit dem STK600 würde ich lassen, ich habe eins aber das ist nicht grad das tollste
Was gibt es an dem Ding denn auszusetzen ?
(Außer dem Preis ;) )

Gruß
Christopher

sdz55
20.11.2008, 16:21
Naja, du hast zwar ziemlich viele Möglichkeiten, allerdings ist es viel zu gross, und unhantlich, wenn du weisst was ich meine...
Ausserdem ist es auf keinen Fall geeignet irgend als Einsteigerboard, als Eval-Board ok aber sonst auf keinen Fall.
Denn du brauchst ja nicht nur das STK600 sondern auch noch AVRJTAGMKII und das kostet nochmal eine Stange Geld!
Daher nichts für "Normalverbraucher".

chr-mt
20.11.2008, 18:23
Hi,

Denn du brauchst ja nicht nur das STK600 sondern auch noch AVRJTAGMKII und das kostet nochmal eine Stange Geld!
Daher nichts für "Normalverbraucher".

Das mit dem JTAG ICE MKII stimmt wohl.
Ich finde das Board auch etwas "oversized", aber das ist wohl der Preis dafür, daß es so universell für viele Controllertypen geeignet ist.

Gruß
Christopher

sdz55
20.11.2008, 18:59
Ja stimmt auch wieder!

dremler
20.11.2008, 19:10
hast du eigentlich schon ein oled? bzw welches nimmst du un woher hast dus?

sdz55
20.11.2008, 19:43
ja ich habe schon eines.
Ich nehme das OLED von DENSITRON 96x64 bei Distrelec zu kaufen.

dremler
20.11.2008, 19:48
was ist da denn für ein controller drinne?

sdz55
20.11.2008, 20:01
Du kannst dich selber erkundigen, dann bekommst du mit Sicherheit eine Antwort des Herstellers.

sdz55
22.11.2008, 07:47
Hallo Leute,

Gestern haben wir begonnen, das OLED anzusteuern.
Jedoch hatten wir weder über die serielle Schnittstelle (SPI), noch über die parallele Erfolg.
Es war erstaunlich, den wir hatten laut Datenblatt alles korrekt angeschlossen und programmiert. Aber das Display wollte einfach nicht...
Das ist sehr schade, denn dadurch wird sich unser Projekt wieder um einige Tage verzögern.

Falls jemand schon etwas mit OLEDs gemacht hat, soll er sich bitte melden!

mfg Severin

sdz55
24.11.2008, 16:56
Hi Leute,

So, nun habe ich das OLED erfolgreich ansteuern können.
Allerdings brauchte es viel Geduld, und etwas "Know-How".

Ich verwende nun doch die Parallele Schnittstelle 8080 zum Übertragen der Daten.
Das Programm bekommt ihr nur auf Anfrage, und erst in ein paar Tagen ^^
Da ich es erst noch bearbeiten und fertigstellen muss.

Hier seht ihr ein paar Bilder des Displays.
Zu Oberst seht ihr noch mal ein Bild des in der zwischenzeit komplexeren Prototyps. Sorry für die Schärfe der Bilder ^^

dremler
24.11.2008, 17:07
*anfrage anmeld*

un was bezeichnest du als know how;)?

ansonsten siehts doch super aus:)

sdz55
24.11.2008, 17:12
ja, ich meine einfach gute Englisch Kenntnisse wegen der Datenblätter; Elektronik-Kenntnisse; und dann noch Glück ^^

Ok merk ich mir :)

EDIT: Es lag übrigens nur an einem einzelnen Jumper :-k

dremler
24.11.2008, 19:38
wieviel strom brauch denn das ganze noch?


kannst was drüber sagen was es später noch können wir bzw wo es eingesetzt wird?

sdz55
24.11.2008, 19:53
Das Display braucht jetzt im Vollbetrieb OLED (weiss) da, (0xFF, 0xFF, 0xFF, R,G,B)
ca. 20-25mA

Ehm zum gebrauch, ich weiss noch nicht genau für was ich es alles brauchen werde, eins steht aber fest, ganz sicher einmal in einem Roboter ;)

dremler
24.11.2008, 20:06
un gesamtverbrauch?

sdz55
24.11.2008, 20:10
uC und alles? ca. 40mA

dremler
24.11.2008, 20:25
ah na das hält sich ja noch in grenzen..

hast du da schon diverse stromverbrauchsoptimierungen durchgeführt?

sdz55
24.11.2008, 20:27
nöö, wie meinste das im Detail?
Also ich habe zum Beispiel die Display Helligkeit etwas runtergedreht, da ein OLED eh schon ein Kontrast hat, dass du blind wirst ^^

sdz55
25.11.2008, 20:32
Hier noch ein weiteres Foto des OLEDs, nun habe ich es erfolgreich kalibriert. Allerdings stimmt der Kontrast noch nicht ganz.

Es gibt nun Funktionen wie SetPixel(uint16_t color) usw.

sdz55
29.11.2008, 13:31
Hi Leute!

Wieder ein neuer Erfolg!
Die Initialisierung klappt jetzt endlich, so das man einzelne Pixel setzen kann.
Ebenfalls wurden die PWM-Linien enfernt, so dass die Farbtreue gesteigert werden konnte.

Dazu habe ich einen einfachen Schriftsatz geschrieben, mit dem man jetzt endlich textanzeigen kann. Allerdings ist diese Funktion vorerst noch im Bau.

Der Kontrast ist so stark, dass man auf den Bildern kaum etwas erkennen kann. Es ist sehr schwierig gute Fotos zu machen, wenn man nur die iPhone-Kamera zur verfügung hat ^^

Es ist nun auch bekannt welches Display wir am Ende verwenden.
Es ist das DD-160128FC-2A von Densitron.
Die Auflösung beträgt dann 160x128 Pixel, und zusätzlich gibts eine Farbkameraschnittstelle, mit welcher Live-Bilder angezeigt werden können.
Allerdings wird das etwas kompliziert, wenn jemand gerade einen Kamerachip kennt, der mit 6-Bit RGB funktioniert, sagt Bescheid!
Im neuen Display gibt es nun auch einen Bildschirmschonermodus.

EDIT: Habe jetzt ne Page auf welcher ich eine Art Blog eröffnet habe!
http://tunex.aoh.ch

Greez Severin

sdz55
03.12.2008, 17:02
Das nächste was noch kommen wird ist SD-Karten-Leser...

dremler
03.12.2008, 18:05
interessant interessant;)

sdz55
04.12.2008, 20:22
interessant interessant;)
Musst dich leider noch etwas gedulden, aber ich werde auf jedenfall Bescheid geben wenn das Mainboard fertig ist, dann werde ich auch neue Bilder reinstellen ^^

Morgen werde ich das grosse OLED-Display ansteuern.
Und diverse Funktionen schreiben.
Dazu versuche ich noch ein kleines JPEG auf dem Display auszugeben.

PS: kleines OLED hat ESD Schaden :oops:

sdz55
21.01.2009, 18:37
Hi all,

Es ist schon eine Weile her, seit ich das letzte Mal berichtet habe.
Nun habe ich zwei sehr erfreuliche Nachrichten zu überbringen:

1. Das tuneX-Board wurde fertiggestellt und befindet sich momentan in der Testphase!

2. Das grosse OLED-Display funktioniert ebenfalls!

Bald werde ich hier ein paar Software-Beispiele posten. Jetzt gibts aber erstmal noch ein schönes Bild!

dremler
15.03.2009, 14:22
hey ho..gibts hier noch paar neuigkeiten?

pestrong
16.04.2009, 13:59
Hi, ich hab jetzt das DD-160128FC-2A an einer SPI eines AVR32 hängen, krieg es aber nicht in Gang. Offensichtlich hattest du das gleiche Problem wie ich (denke alles richtig angeschlossen und programmiert aber nichts tut sich). Du steuerst das Display jetzt parallel und nicht mit der SPI. Gibt es dafür einen bestimmtzen Grund? Wärst du so nett mir deine Displaysourcen zur Verfügung zu stellen? Ok, ist nicht gleich der SPI-Ansteuerung aber vielleicht finde ich ja durch Analayse einen Hinweis auf meinen Fehler? Oder um welchen "Jumper-Trick" handelte es sich bei dir oder welche "geheimen Botschaften" verstecken sich in den Datenblättern ;)?

Hilfe wäre höchst wilkommen

sdz55
03.05.2009, 10:46
hi all!

Sry, hatte grad viel zu tun!
Ehm also erstens: Es gibt ein paar Neuigkeiten und zwar gibts schon bald ne Version 2 des Boards, und ich hab den Klassiker (Snake-Handyspiel) für das OLED geschrieben. Funktioniert ziemlich gut.

@pestrong
Der Grund warum ich von SPI auf parallel gewechselt habe, ist, dass mit SPI der Bildaufbau viel zu langsam dauert.
Leider kann ich dir somit nicht genau weiterhelfen...
Wie hast du denn das Display angeschlossen? Versorgungsspannung, Pins etc. Hast du eventuell ein eval-Board zur Ansteuerung benutzt? Ich hatte erst das Eval-Board von Farnell mit welchem das Display nie funktionierte..

Wenn ihr noch weitere, spezifische Fragen habt schaut mal unter http://tunex.aoh.ch rein.

PS: Letztens habe ich mal den Xmega übertaktet, war schön was rauskam: Er lief mit ca. 120MHz :D

sechsrad
03.05.2009, 17:06
Und was kann man mit dem Ding noch anstellen?

sdz55
03.05.2009, 18:14
Und was kann man mit dem Ding noch anstellen?Alles? :D

ikarus_177
03.05.2009, 18:32
Hi sdz55,

kennst du Bezugsquellen für die XMegas? Gibts die überhaupt schon im "freien" Handel?

Wäre sicherlich mal interessant, mit der "neuen" Architektur herumzuspielen ;-)

Viele Grüße

sdz55
03.05.2009, 18:38
Hi ikarus

Ja die Bezugsquellen... ^^
Ab und zu kann man bei mouser.com, digikey.com und farnell.com welche beziehen. Allerdings sind die bereits nach kurzer Zeit schon ausverkauft und man muss mit Lieferfristen von ca. 4 Wochen rechnen.
Ich habe meine jedoch direkt von Atmel beziehen können. (Samples)

Gruss Severin

PS: Mit denen "herumzuspielen" ist nicht sehr einfach ;-) ausser du kannst gut SMD löten oder hast zuviel Geld für ein STK600 und ein JTAGICEmkII^^

sdz55
02.06.2009, 17:15
So, Nun ist auch der Bootloader fertig, und damit das Projekt abgeschlossen.
Ich werde bald noch ein paar Bilder von der Version 2.0 posten.

Gruss Severin

Thomas$
02.06.2009, 20:28
wenn ich smd lese. schade eigentlich :-( sonst bin ich immer wieder fasziniert von den controlern und vor allem vor den programieren . tolle sache

dremler
03.06.2009, 00:06
schön das es hier weitergeht:)


was machst du mit dem board grad so?

sdz55
05.06.2009, 14:43
Ich baue im Moment noch mein Terminal in C# damit ich dann die Programme per Bootloader laden kann. Die Programmierzeiten + Übertragung, betragen durchschnittlich 300ms pro KB-Daten. Was einer ziemlich hohen Geschwindigkeit entspricht.
Die Baudrate ist auf 128000 eingestellt.

Mit dem Board etwas zu machen liegt für mich leider momentan nicht drinn. Da ich mich für die Teilprüfungen und die Berufsmaturität vorbereiten muss.
Sobald ich etwas neues weiss, werde ich es hier oder auf http://www.tune-x.ch posten.

X-917
09.08.2009, 20:56
Hallo zusammen,



PS: Letztens habe ich mal den Xmega übertaktet, war schön was rauskam: Er lief mit ca. 120MHz :D

Also du meinst die "clock x 4" peripherie, nicht den controller? Obwohl dann ja 120Mhz nichtmal übertaktet wäre...
Ich verstehe nicht ganz, was du meinst, die XMEGAs gehen doch bis 32Mhz, das wäre ja ungeheuerlich, wenn du die bis 120Mhz übertakten kannst?!

Marco

sdz55
10.08.2009, 19:14
du kannst sie mittels PLL übertakten. Sie funktionieren in der Theorie bis 990MHz allerdings wäre die Kühlung nicht mehr ausreichend, deshalb ist laut Angabe im Datenblatt eine Übertaktung von mehr als 380MHz nicht zulässig.

X-917
10.08.2009, 21:08
0_0
hab ich noch gar nicht gewusst, wie geil!!
Klar erhöht sich der Stromverbrauch ins Gigantische, aber rein die Möglichkeit...
Aber ich habe noch eine Frage:
Du sagtest, rein theoretisch bis 990Mhz. Ich nehme an, damit ist 31xPLL mal 32Mhz gemeint. Aber der höchstmögliche Quarz ist doch 16Mhz? Das wären dann 496Mhz maximal. Oder gibt es eine weitere obligatorische PLL für den Quarztakt?
Und was ich auch nicht verstehe: Wenn man den XMEGA soweit übertakten kann, wieso schreibt dann ATMEL am Beginn des Datenblatts "nur" 32Mhz??
Das mit dem Overclocking könnten die doch super vermarkten, was is da faul?
greetz Marco

X-917
10.08.2009, 21:38
Nachtrag: Ich habe 2 Datenblätter durchsucht, und keine Angaben dazu gefunden. Könntest du mir den Link für das richtige Datenblatt und die Seitenzahl nennen? Danke

sdz55
10.08.2009, 21:46
Nachtrag: Ich habe 2 Datenblätter durchsucht, und keine Angaben dazu gefunden. Könntest du mir den Link für das richtige Datenblatt und die Seitenzahl nennen? DankeJaa das liegt daran das du am falschen Ort gesucht hast.
Sorry ich habe leider gerade keine Zeit das Sheet zu suchen. Aber es sollte unter atmel.com application notes und danach unter PLL zu finden sein. Es ist nämlich kein richtiges Datenblatt. Sondern eher eine Konfiguration.
Im Hauptdatenblatt des Xmega wäre es auch zu finden, aber da musst du genaustens wissen unter was du suchen musst. Und ich weiss nicht wie es mit deinen Englisch-Kenntnissen steht (soll kein Vorwurf sein, sondern eine Erklärung=))

X-917
10.08.2009, 22:05
hmm, ich habe diese "Konfiguration" gefunden.
http://www.atmel.com/dyn/resources/prod_documents/doc8072.pdf
Und DA steht auf Seite 6 zur PLL:

"The user is responsible for providing a minimum input clock frequency of 0.44 MHz to
the PLL and make sure that the output [highlight=red:b34b317820]never exceeds 200 MHz[/highlight:b34b317820]."

Also wie jetzt?

sdz55
11.08.2009, 20:39
jaa der Prozessor wird sonst zuu heiss, wenn man die limite überschreitet. aber man kann den inneren 32MHz Quarz gebrauchen.

X-917
11.08.2009, 21:04
Aber kommt es denn nicht auf die Endfrequenz an? Was macht es für einen Unterschied, ob du einen externen Quarz mit 16mhz und den PLL-Faktor 8 nimmst oder den internen 32mhz-Oszillator mit PLL-Faktor 4?? Oder was meinst du mit "den internen Oszillator brauchen"?

Wenn ich einen ATxmega HÄTTE würde ich gerne einmal mithilfe meines Radiallüfters ausprobieren, wo wirklich Schluss ist...

Und, äähm: wenn ihr 15Jahre alt wärt, und ihr hättet gerne 2-3 Atxmega Controller von ATMEL (sample), was sollte ich wohl bei "company" schreiben?
Meine Lehrfirma ja wohl nicht, denn die controller sind ja für mich privat...

sdz55
12.08.2009, 16:02
Wenn du einen externen 16MHz Quarz nimmst ist das mit Sicherheit viel genauer als mit dem internen 32MHz, aber dann brauchst du noch 2 Kondensatoren. Bei manchen Anwendungen wünscht man sich natürlich möglichst wenig Peripherie-Bausteine.

An deiner Stelle würde ich auch nicht gleich einen XMEGA nehmen, denn beachte er ist in SMD-Bauform von den winzigen Pins des TQFP-100 Gehäuses mal abgesehen. Dann musst du dir auch klar darüber werden, wie du ihn programmieren willst. Du brauchst irgendein Programmiergerät mit JTAG, kostet auch recht viel. Also mit dem Xmega alleine ists ja nicht gemacht. Aber um dir die Freude nicht ganz zu nehmen, kannst du ja mit deinem Vorgesetzten reden. Oder was meintest du mit Lehrfirma?

X-917
17.08.2009, 20:26
Entschuldige für die späte Antwort, war in den Ferien...

Also, Lehrmeister fragen ist sicher eine gute Idee! Vielleicht kann ich so ein paar chips bekommen. Das löten ist dann aber auch noch das einzige Problem, obwohl ich denke, dass ein TQFP-Gehäuse noch lötbar ist, auch mit einem normalen Lötkolben, was meinst du?
Programmieren ist kein Problem, ich habe ein JTAG ICE MkII und ein AVR Dragon. (jaja, Beziehungen ;-) ) In die AVR habe ich mich inzwischen auch recht gut eingearbeitet, so dass mir der Umstieg wahrscheinlich nicht schwerfallen würde.

sdz55
17.08.2009, 21:18
jaa das kriegst du problemlos mit einem normalen lötkolben hin ^^
viel spass! und erfolg!

X-917
18.08.2009, 20:36
danke für die Hilfe!

sdz55
18.08.2009, 20:57
Kein Problem.
Falls du noch eine Frage dazu hast, sag mir Bescheid.