Hallo! Ich möchte mir mit einem PIC16F84 ein Miniatur-"Lichtpult" mit 8 Kanälen bauen. (LED-PWM Ansteuerung) Mit Hilfe von acht Variablen kann ich die PWM für jeden Kanal separat steuern (z.B. 0 = LED aus und 100 = LED-Helligkeit 100%). Dieser Programmteil funktioniert bereits. Ich bräuchte jetzt einen Denkansatz wie ich folgendes lösen könnte: Ich möchte im µC-Programm eine festgelegte "Lichtshow" programmieren. Ich möchte also für jeden Kanal getrennt die Ein- und Ausblendzeiten usw. vorgeben können. Wie könnte ich soetwas realisieren? Gruß, Martin
Als ersten Tip: Nimm' den 16f628, der ist günstiger und kann mehr. Insbesondere hat der 16f628 einen UART. Damit könntest Du die Konfiguration (Ein-/Auszeiten usw.) bequem am PC erstellen und dann in den PIC übertragen - sofern die Show nicht zu komplex wird und die Zeiten in den RAM passen. Ansonnsten: Über einen Timer im Sekundentakt prüfen, ob eine LED an oder ausgehen soll und dann die Software PWMs entprechend steuern.
Hi, du musst dir Gedanken machen, ob du das ganze Zeit oder Eventorientiert betreiben willst. Entweder hast du ein Zeitmuster in denen die Daten zykisch abgearbeitet werden, zB. alle 100ms wird eine Adresse mit Lichtdaten ausgelesen und bearbeitet. Oder du arbeitest Zeitunabhängig und im Programm steht nur: 1.sek. Licht10%; 3.Sek. Licht80%; 12.sek. Licht 50%; Wenn du das Dimmen unabhängig haben willst wär es auch genial eine automatische Dimmfunktion zu haben, der nur noch übergeben wird: Licht inerhalb 3sek von 10% auf 80% hochfahren. Dann kann das Programm parallel dazu weitere Funktionen ausführen, während der Timerinterrupt die gewünschte Helligkeit ändert. Marc989
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.