Gast
#640273
Jau! Aber eine zu der ich keine Antwort fand. Problem: Ich möchte mir 2 Funktionen schreiben. Fadein() und Fadeout(). der Takt für die PWN wird von einem Timer generiert (leider alle 8 Takte!). Dieser Timer löst, wenn Fadein oder Fadeout aktiv sind, einen Interrupt aus, der einen Zähler hoch bzw runterzählt und damit die Pulsweite zwischen 1/255 tel und 254/255tel bestimmt. Was der Routine fehlt, ist eine Möglichkeit den Port der ein- oder ausgeblendet wird, zu übergeben. Meine Alternative ist ein Bit in einem char, das gesetzt oder gelöscht wird und dann über eine if-Abfrage den entsprechend zugeordneten Port bedient, das ist aber sehr umständlich und dauert bei mehreren If-Abfragen länger als der Impuls lang sein soll und eine If-Schleife für 8 Ports in einer ISR scheint mir auch nicht so optimal. Gibt es dafür eine "professionelle" Lösung?