Forum: Mikrocontroller und Digitale Elektronik Suche Ideen für Wortuhr


von Mike M. (mikeii)



Lesenswert?

Hi,

ich habe mir gerade eine Wortuhr gebastelt.

Die Übergänge zwischen den Zeiten habe ich bisher mir folgenden Effekten 
gemacht.

Nach links,rechts,oben,unten die "alte" Zeit rausschieben und die "neue" 
reinschieben.
Oder die alte Zeit ausfaden, und die neue anfaden lassen.

Zudem habe ich mal zum Gag eine "Matrix-Animation" programmiert, also 
fallende Buchstaben die einen Schweif hinter sich herziehen (wie eine 
Sternschnuppe).

Neben den Spielereien, will ich noch ein 10x10 Jump'n'Run Spiel 
einbauen, also statt einer Figur nur ein Pixel der durch ein Welt 
springt.
Hier ein Video wie ich das meine 
http://www.youtube.com/watch?v=9ZcxFSu2_6k


Da mir das vom Funktionsumfang aber noch nicht reicht, wollte ich mal 
fragen ob ihr noch ein paar Ideen habt, die das ganze noch einen 
besonderen Touch verleiht.


Im Anhang ein paar Bilder vom Prototypen, die Plexiglasfront ist leider 
noch nicht da, von daher gibts nur schäbiges Papier.

Danke euch :)

von Johannes T. (johnsn)


Lesenswert?

Coole Idee mit den Übergängen, sieht sicher toll aus.
Den Artikel kennst du bestimmt schon 
[[http://www.mikrocontroller.net/articles/Word_Clock]] - da sind auch 
ein paar innovative Ideen aufgelistet.

von Achim M. (minifloat)


Lesenswert?

Warum schiebst du nicht den alten Thread wieder hoch?
Beitrag "10x10 Matrix Spiele"

MoarGames:
Käsekästchen:
statt striche zu machen gibts eben Kästchen, eingeschlossene Bereiche 
gehören dem, der sie zugemacht hat, geht ja auch farbig
TicTacToe: X/O durch Farben.
Reversi oder wie heißt das?
Mühle:Eventuell eine verkleinerte Version?
Towers of Hanoi?
Das-Gute-Alte-Kistenschieber-spiel

MoarNützliches:
Thermometer
Eieruhr
Sylvestercountdown 59...0
Wetteranzeige
Verpixelte Analoguhr
Lärmpegelmesser
Visualisierung von Musik(Lichtorgel)
mfg mf

von Mike M. (mikeii)


Lesenswert?

Boa! Das sind geile Ideen!

Das Übernehme ich direkt:


TicTacToe: X/O durch Farben.
Reversi oder wie heißt das? (Ja heißt so ;))

Thermometer
Sylvestercountdown 59...0
Visualisierung von Musik(Lichtorgel)

Danke dir :)

von Mike M. (mikeii)


Lesenswert?

Allerdings stehe ich immernoch vor einem Großen Problem, dank diesem 
HL1606 Controller der kein echtes PWM kann.

Die Uhr zu Dimmen ist kein Problem, solange ich nicht gleichzeitig ein 
Wort anfaden lassen will, und das andere ausfaden.
Irgendwie schade :(

Wenn jemand noch eine Idee hat, wie ich das ganze im Gesamten dimmen 
kann, bitte her damit.

von Achim M. (minifloat)


Lesenswert?

Mike Mike schrieb:
> diesem
> HL1606 Controller der kein echtes PWM kann.

Inwiefern? Kann der nur eine PWM über alles? und die Farbe steht fest?
Wenn ein Wort ein- und ein anderes ausgefadet werden soll, wrum nicht 
so:

do
{
  PWMneu++;
  PWMalt--;
}
while(PWMalt)

mfg mf

von Mike M. (mikeii)


Lesenswert?

Die PWM das der Chip benutzt ist von außen nicht zugänglich.

Ich habe 4 Zustände für jeweils eine Farbe:
EIN
AUS
ANFADEN
AUSFADEN

für das An und Ausfaden wird das PWM benutzt.
Und mit einem externen Takt, wird der Dutycycle vom PWM verändert (je 
nach dem ob an oder aus gefadet wird).


Die einzige Möglichkeit, alle LEDs gleichermaßen zu bedienen, ist eben
die komplette Bild Information in den Strip zu schicken und dann wieder 
alles ausmachen (im entsprechendem Zeitverhältnis eben).
So kann ich aber leider nicht mehr die eingebaute Fadefunktion nutzen, 
da der Chip jedes mal seinen PWM Startwert wieder bekommt...

von Achim M. (minifloat)


Lesenswert?

Du kannst aber den Dingern verschiedene Befehle geben oder?

Dann sollte sowas hier doch gehen oder?
1
//Pseudocode
2
3
//Kommandos geben
4
for(i=ID_old_Begin, i<=ID_old_End, i++)
5
   GibKommandoAUSFaden((id) i);
6
for(i=ID_new_Begin, i<=ID_new_End, i++)
7
   GibKommandoEINFaden((id) i);
8
9
//das hier vllt in interrupt eines Timers
10
for(i=0, i<=AnzahlTakte, i++)
11
   Takte();
mfg mf

von Mike M. (mikeii)


Lesenswert?

Ich glaube verstanden zu haben was du meinst, aber es gibt ein Problem:

Wenn ich ausfaden will, sende ich das Kommando zum Ausfaden.
Je nach dem wie schnell der externe Takt ist, fadet der Chip die LED 
schneller oder langsamer.
Sende ich direkt im Anschluss nochmal das Kommando zum Ausfaden, fängt 
er wieder bei der vollen Helligkeit an, auszufaden.



Aber theoretisch kann ich mit hohem Programmier-Aufwand mein Ziel schon 
erreichen, nur kann ich das laut meinen Berechnungen nicht mehr 
flackerfrei darfstellen, es sei den ich nehme maximal 3 
Helligkeitsstufen.
Und dann müsste ich selber das an und ausfaden Übernehmen, wobei das 
dann nur über die 3 Helligkeitsstufen geht :(

Ich überlege mir gerade ob ich die 100 Leds nicht mit einer extra 
Stromversorgung versorge.

Ich habe jetzt zwar das Datenblatt nicht da, aber wenn alle Positiven 
Pins der LED auf einer Seite liegen, könnte ich diese entlöten, und zum 
Flexboard hin isolieren. Dann ziehe ich eine Leitung durch, die an alle 
100 LEDs geht, und steuere diese Leitung über PWM an. Wobei ich das PWM 
um einiges schneller sein sollte, als das im Chip implementierte, nicht 
dass die beiden sich in die Haare kommen.

Gruß Mike

von Mike M. (mikeii)


Lesenswert?

Als Behelfslösung werde ich jetzt einfach folgendes machen:

Die Uhr ist nicht dimmbar. Aber sobald der Helligkeitssensor erkennt, 
dass das Zimmer sehr dunkel ist, stelle ich einen anderen Anzeigemodus 
ein, der wie folgt aussieht.

Soll eine LED etwas anzeigen, stelle ich diese auf einfaden.
Da man zwischen 64 und 128 Schritte wählen kann (ich wähle hier 128),
werde ich diese LED einfach anfaden und sagen wir nach 40 Schritten 
einfach so den zustand halten lassen.
Komm die nächste Urzeit, schalte ich die LED einfach wieder ab, und das 
Spiel beginnt von neuem.

Dann ist es nachts zwar nicht so schön, wenn die Wörter einfach 
ausgehen, aber wenigstens erleuchtet sie dann nicht das ganze Zimmer.

Später ersetzte ich einfach das LED Board durch eines mit dem neueren 
Controller der PWM beherrscht.

Gruß Mike

von Mike M. (mikeii)


Lesenswert?

Soweit ist die Uhr jetzt fertig, allerdings werde ich erst in den 
Semesterferien die Spiele einprogrammieren.

Hier sind einige Bilder und Texte zur Uhr zu finden: http://jarvic.de

von Heiner G. (Gast)


Lesenswert?

Mike Mike schrieb:
> Nach links,rechts,oben,unten die "alte" Zeit rausschieben und die "neue"
> reinschieben.

Wie geht das denn, die Wörter stehen doch an festen Positionen. Oder 
habe ich da was falsch verstanden?

von mike (Gast)


Lesenswert?

Ich schiebe nur die pixel nach unten und schiebe neue pixel rein. Also 
nicht die tatsächliche uhrzeit wird gescrollt, sondern das pixelmuster, 
siehe video,

von Erich (Gast)


Lesenswert?

Hi,

habe mir deine Seite angesehen,  http://jarvic.de

Respekt !

Saubere Arbeit.

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
Noch kein Account? Hier anmelden.