Hallo, anbei ein Routine, die ich irgendwo im Netz gefunden habe. Da ich ziemlich lange suchen durfte, hilft es vielleicht auch anderen. Das Ding erzeugt Pseudo-Zufallszahlen, als Seed sollte man irgendwie mit einem zufälligen Wert <> 0 laden, ADC auslesen oder sowas, sonst bekommt man immer die gleiche Folge. Ich brauchte das für eine hochwichtige Sache: meine Frau hat ein Modell-Puppenhaus. Das hat einen Kamin. Der sollte "brennen". Das, was man als Flackerlicht im Modellhandel bekommt, war ein Witz. Nun flackern 15 LED und 3 sind ständig an, 6x gelb, 6x rot und 6x orange. Angtrieben von einem ATiny2313, der gerade rumlag. Sieht jetzt sowas von echt aus. :-)) Kann ich jetzt in Ruhe den Logikanalyzer/Oszi/was-weiß-ich weitermachen... Gruß aus Berlin Michael
Hallo, tolle sache, suche auch schon ne weile nach so etwas.. kannst du mir fotos vom fertigen teil, bzw. auch schaltpläne schicken. wäre sehr nett. gruß aus österreich Florian
Hier ne C-Variante eines ganz ordentlichen Zufallszahlengenerators. SINT32 ist ein 32Bit signed-integer Typ. Cheers Detlef #define IA ((SINT32)16807) #define IM ((SINT32)2147483647) #define IQ ((SINT32)127773) #define IR ((SINT32)2836) #define MASK ((SINT32)123459876) /*********************************************************************** *******/ SINT32 zufall() { /*********************************************************************** *******/ static SINT32 idum=2; SINT32 k; idum ^= MASK; k=(idum)/IQ; idum=IA*(idum-k*IQ)-IR*k; if (idum < 0) idum += IM; k=(idum); idum ^= MASK; return k; }
Hallo, naja, die Verteilung der Schieberegistervariante ist durchaus brauchbar. Problem ist bei anderer Anwendung nur, eine zufällige Seed zu erzeugen. Wenn es unabhängige Ereignisse von außen gibt (Tastendruck z.B) ist es weiter kein Problem, Zähler laufen lassen und beim ersten Tastendruck den Zählerstand als Seed und erledigt. Bei meiner Flackerei soielt das weiter keine Rolle, es bemerkt niemand, daß die Flackerfolge nach jedem Einschalten identisch ist, Wiederholungen gibt es nicht, durch die relativ große Anzahl LEDs und die Geschwindigkeit fällt es auch nicht auf, wenn er mal 5 Sechsen hintereinander würfelt. ;) Schaltplan und Bilder mach ich mal fertig, gibt es bis jetzt nicht. 3 LEDs fest an Spannung, der Rest an alle Portpins. Jeweils 1k davor, ich hatte LowCurrent-LEDs. Aufgelötet sind die 3mm LEDs auf ein kleines Stück Lochraster, je 4,3,4,3,4 als Karo so eng es geht, Hosenträger direkt rangelötet, Atmel, Vorwiderstände, ein 7805 und DIL-Brückengleichricher mit 220µ auch auf einem kleinen Stück Lochraster hinten außen an der Puppenhaushauswand. Muß sowiso noch ein zweites zusammenlöten....... Gruß aus Berlin Michael
Hallo Michael, ich habe mal versucht nach meinem Verständnis einen Schaltplan zu erstellen. Hoffe es sollte so funktionieren. Gruss Marcel (auch aus Berlin)
Hallo, danke, so sieht es aus. :) Ich habe mal schnell 2 Sachen verändert, den 2313 habe ich nur in ATiny umbenannt. Bei mir ist ein ATiny2313 drauf, der läuft mit internem Clock, spart Quarz usw. Eigentlich sollte erst ein AT90S1200 rauf, der machte aber Probleme beim Reset und dann wurden es mir zuviel Teile... Gruß aus Berlin Michael
Ob der Michael hier noch mitliest nach über 2 Jahren? ;) Auch wenn ein sporadischer Reset bei dieser Anwendung nicht groß auffällt trotzdem drei kleine Hinweise: 1. Anscheinend fehlt am Controller der 100nF Blockkondensator. 2. Am Reset-Pin würde ich einen Pull-Up vorsehen. Hatte schon ein paar ATtinys die sich ohne ihn manchmal spontan selbst Resetet haben. 3. Als Regler muss es unbedingt ein 7005 sein, die kleinen 78L05 packen die knapp 200mA Durchschnittslast nicht. Vielleicht auch hier ein etwas größerer Puffer-Elko dran. Ansonsten: Schönes Projekt, wäre was für meine Freundin ;) Hast du schon ein Video davon aufgenommen? Ist ja bald WIEDER Weihnachten...
Hallo, ja, lese und schreibe hier immernoch mit. Zu 1. den 100n gibt es im Original, den Schaltplan gab es aber erst hier für das Forum. Zu 2. ist eine schon uralte Diskussion dazu auch hier im Forum. Meine AVR haben bis jetzt immer 100n gegen GND bekommen und nie Probleme gemacht. Das kann aber jeder halten, wie er will... zu 3. ist auch dem Ermessen der Bastlers überlassen. Bei mir wohnt ein 7805 drin, Lade-C ist bei mir mit 220µ ausreichend, die Eingangsspannung ist ohnehin mit fast 14V ziemlich hoch (9V aus einem Universalnetzteil, daß auch andere Beleuchtung im Puppenhaus bersorgt. Ich mach nachher mal ein Video und stell es hier rein. :-) Gruß aus Berlin Michael
Hallo, mal ein kurzes Video vom Kamin. http://www.roehres-home.de/kamin.avi Das Al*i-Spielzeug hat leider etwas eigene Ansichten zur Farbe. ;-) Gruß aus Berlin Michael
Du mußt die Szene mehr ausleuchten damit die Farben besser zur geltung kommen sosnt überstrahlen die LEDs alles (gabs irgenwo schonmal ne Diskussion zu)
Hallo, @Läubi Mail@laeubi.de: das ist mir schon klar. :-) War mir aber zugegebenermaßen den Aufwand nicht wert, ich denke, das Muster kommt auch so rüber und die Farbe kann man ja durch Auswahl der LEDs noch beeinflussen. Meine ganz am Anfang angegebene Mischung passt ganz gut. Nachtrag: wer jetzt programmierwütig ist, könnte sicher auch 3 PWM-Kanäle und nur 3 LEDs nehmen und dann die PWM passend verknüpfen. Dann reicht ein kleiner Tiny. Aber dann ist der Schattenwurf durch die Holzscheite im Kamin nicht so abwechsungsreich... Gruß aus Berlin Michael
...dafür darsft du unter Garantie mindest eine Woche machen, was DU willst. Sieht gut aus, sehr hoher "WAF" vermutlich! Klaus.
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.