Forum: Analoge Elektronik und Schaltungstechnik Pulse LED via Software PWM


von Chris (Gast)


Angehängte Dateien:

Lesenswert?

Hallo.
Vielleicht könnt ihr mir ja helfen.
Ich verzweifel solangsam.
Ich habe einen Code geschrieben, mit dem ich eine RGB Led ansteuern 
kann.
Mittels einem Taster kann ich die verschiedenen Farben einstellen.
Jetzt möchte ich aber das diese auch noch Pulsieren.
Sie dürfen nicht ganz ausgehen...nur von 100% - 70% und wieder zurück.
Habe schon etwas rumprobiert ohne PWM aber da bekomme ich nur blitzen 
hin.
Ich hoffe ihr könnt mir helfen.

Der Code ist als anhang dabei.

Danke im vorraus.

Christian

von Tip (Gast)


Lesenswert?

Die ganzen IF-Abfragerei in der ISR könntest du dir sparen, wenn du die 
Werte für PortB in einem 2-Dimensionalen Array ablegst, dass über Modus 
und Status indiziert ist.

So in der Art
DIM BitMuster (10,6) as BYTE
'hier muß das Array mit den Werten belegt werden
...
Portb = BitMuster (Status+1,Modus+1)

Das "+1" bei der Indizierung kannst du einsparen, wenn du die gleich 
passend zu den BASCOM Array Eigenheiten mit 1 loslaufen läßt.

von Chris (Gast)


Lesenswert?

schonwieder den ganzen code neu aufbauen...
wollte ich eigentlich nicht

von Karl (Gast)


Lesenswert?

Tip schrieb:
> 2-Dimensionalen Array

Er hat das in BASCOM programmiert, da ist so etwas nur auf Umwegen 
möglich. Man könnte es in einer Tabelle ablegen und mit Lookup 
operieren. Im Endeffekt läuft es auf das Gleiche hinaus. Wenn wir schon 
dabei sind, man könnte auch SELECT CASE statt Elseif verwenden.

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.