Guten Morgen, Ich würd gerne mit dem Pic 12F529 eine kleine LED Steuerung realisieren und Zwar benutze ich 3 Ausgänge an denen Jeweils eine LED ,mit 180ohm Vorwiderstand, hängt (1ne rote, 1ne grüne, 1ne blaue). Ich würde Gerne die LEDs in einer unterschiedlichen Helligkeit haben so das es Verschiedene Farbverläufe gibt zum Beispiel: Am Anfang 3 Sek nur die Rote LED mit 100% Helligkeit dann nimmt die rote LED auf ca. 70% ab und zusätzlich wird die grüne Led auf 30% hoch gefahren. Danach die rote auf 30% die grüne auf 60% und die blaue auf 30%. Ich hoffe ihr versteht was ich mit dem Beispiel meine :). So, nur wie schaffe ich es das die LEDs in einer versch. Helligkeit leuchten ? Spannung am Ausgang kann ich ja nicht ändern, da es Digitale Ausgänge sind. Eine Puls-Weiten-Mudulation hat der 629 nicht. Den Storm am Ausgang verändern geht auch nicht. Das einzigste was ich mir vorstellen könnte sowas zu Programmieren wäre mehrer Schleifen. Wenn ich z.B. Annehme das wenn eine LED mit einer Schleife 1sek lang für 100% an ist das das die maximale Helligkeit wäre und ich sie dann 500ms an und dann 500 ms aus schalte das sie dann nur 50% Helligkeit hat. Könnte das klappen ? Hättet ihr vieleicht andere Lösungsvorschläge ?
>> und ich sie dann 500ms an und dann 500 ms aus schalte das sie dann >> nur 50% Helligkeit hat. Nein, Sebastian... dann blinkt sie!
Stimmt hab das irgentwie von der PWM genommen aber da sind die ja mit ner Frequenz von 10khz angesteuert da merkt man das ja nicht mehr ob die nur 10% davon leuchtet. Mhm wie könnte man es denn noch realiesieren ? oder gehts überhaupt oder dann doch lieber nen 16F84A der kleine wäre nur so schön klein gewesen. Vieleicht Hat ja noch jmd ne Antwort :)
also ich könnte mir vorstellen dass das mit einem IR2E27A (IC) geht. das ist ein LED Treiber der bei verschiedenen spannungen auch LEDs dimmen kann (soweit ich weiß). du könntest dann einen kleinen addierer davor bauen der dir verschiedene spannungen liefert. Aber warum nicht einfach nen chip nehmen der PWM hat ;)?
Man kann auch gewisse Hardwaremodule mit Software simulieren ;-). In deinem Fall würde ich auch nicht mal aufs PWM-Modul zugreife, wenn eines vorhanden wäre. ISt ja zu umständlich. Wie Magnus schon gesagt hat, 500ms sind zu lang.. versuchs mit 5ms oder so.. Probieren geht über studieren ;-) Ich würds mal so versuchen: while(1) { LEDrot=1; delay_ms(3000); for(i=0;i<=??;i++){// ?? steht für eine Zahl die du errechnen musst.. //??=(Gewünschte Leuchtdauer)/(Dauer des SChleifendurchlaufes) LEDrot=1; LEDgruen=0; delay_ms(7); LEDrot=0; LEDgruen=1; delay_ms(3); } for(i=0;i<=??;i++){// ?? steht für eine Zahl die du errechnen musst.. //??=(Gewünschte Leuchtdauer)/(Dauer des SChleifendurchlaufes) LEDrot=0; LEDblau=0; LEDgruen=1; delay_ms(7); LEDblau=1; LEDrot=1; LEDgruen=0; delay_ms(3); } } In der letzten schleife habe ich etwas geschummelt.. die grüne LED würde mit ca 70PRozent leuchten. Was natürlich auch noch eine verfälschung bringt, ist die if Abfrage die etwas zeit braucht.dH du müsstest den Wert des letzten delay_ms in den schleifen dem entsprechend anpassen. mfg Schoasch PS.: Der code soll eher als Inspiration dienen ;-) Er wurde nicht überprüft.
@Simon Ja so eine Software PWM Könnte evtl die Lösung sein. Kannst du mir auch sagen wie man sowas realisiert ? @Schoasch Ist das ne C Programmierung ? damit kenn ich mich nicht so aus kenen nur die Assembler sprache direkt vom PIC @Philipp Ich hab den 629 genommen weil ich ihn Grad da hab und er sehr klein ist mit seinen 8 Pins Ich hab aber auch den 16F84A da auf den würde ich wenn alles Platzt ausweichen. Aber so klein wie möglich wäre am besten
http://www.emanator.demon.co.uk/bigclive/rgb.htm Der hat sowas ins Netz gestellt. Früher (bevor er die Chips fertig verkauft hatte) war sogar ein Hex-File vorhanden. Vielleicht einfach mal anfragen, ob er das noch rausrückt. Eventuell hat ja auch noch Jemand die alte Version der Seite (inklusive der Files) aufm Rechner... bye Frank
im Zweifelsfall sogar ich selbst... Eins der ASM Files häng ich einfach mal an, vielleicht ists ja ne Hilfe. bye Frank
Hi Ja, es ist in C-geschrieben. Aber ich glaube schon, dass du ungefähr verstehen kannst was ich meine. Das gnaze sollte sich recht einfach in ASM umschreiben lasse.
hallo, ich weiß der thread ist schon etwas älter. wollte mal fragen ob jemand das asm file von frank zum laufen bekommen hat. welche mikroprozessor hat denn der typ auf der http://www.emanator.demon.co.uk/bigclive/rgbcont.htm seite verwendet? und gibt es nen einfachen brenner für diesen chip wenn ja wo ? wäre nett wenn mir einer helfen würde. (oder gibt es gar einen einfacherern weg zu einem rgb controller zu kommen ) mfg kevin
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.