- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 28

Thema: Mit PCF8574P eine Led dimmen?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    27.07.2010
    Ort
    Aachen ---- NRW
    Beiträge
    251
    Verwendest jedoch du die PCF... dann musst du ständig ein- und ausschalt- Befehle senden, solange der Portexpander keine weitere Intelligenz hat.
    Das wäre ja dann auch wieder belastung des µC, deswegen wäre es ja besser einen andern µC bzw. PCF zu verwenden.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.01.2006
    Beiträge
    4.555
    Zitat Zitat von AsuroPhilip Beitrag anzeigen
    Das wäre ja dann auch wieder belastung des µC, deswegen wäre es ja besser einen andern µC bzw. PCF zu verwenden.
    Genau, oder eben einen 8 Bit Port und 8 Widerstände vom I²C Chip "opfern", nicht elegant aber in der Not frisst der Teufel Fliegen.

    Gruß Richard

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.255
    Und warum dann nicht gleich einen ATMEGA 8 als PWM Quelle verwenden ?
    Der kann dann die PWM Signale für die LED's erzeugen. Eventuell könnte man noch einen ULN2803 als Treiber nachschalten.
    Letztlich dürfte dasauch die preiswertese Lösung sein.
    Als Verbindung zwischen dem Steuercontroller und dem Dimm- Controller würde ich SPI verwenden, weil das einfacher zu handeln ist als TWI ( I²C ).
    Beide Schnittstellen sind als Hardware in den ATMEGA Controllern eingebaut.
    Das Protokoll kann man sich dann selber ausdenken. Also entweder alle 8 Dimmwerte nacheinander übertragen, oder ein Kanalbyte gefolgt von einem Wertbyte bei Bedarf senden.
    Eine weitere Möglichkeit wäre Dich am DMX 512 Protokoll ( serielle Schnittstelle ) zu orientieren.
    Dadurch wäre dann die Ansteuerung von 512 Kanälen möglich und die Dimm Controller wären auch als abgesetzte Einheit über größere Entfernungen ( mehrere Hunder Meter ) ansteuerbar.

    Es gibt da also eine Menge möglicher Lösungen.

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.01.2006
    Beiträge
    4.555
    Zitat Zitat von wkrug Beitrag anzeigen
    Und warum dann nicht gleich einen ATMEGA 8 als PWM Quelle verwenden ?
    Einfach weil explizit nach dem 8574 gefragt wurde. Natürlich gibt es andere möglicher Weise bessere Methoden, keine Frage! Ich habe hier auch schon von LED Treiber für bis zu 256 LED's !einzeln dimmbar! gelesen. Fragt sich was die Teile kosten und wer das noch Löten kann...

    Grüße Richard

  5. #5
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    27.07.2010
    Ort
    Aachen ---- NRW
    Beiträge
    251
    Natürlich gibt es andere möglicher Weise bessere Methoden, keine Frage!
    Was wäre den eine bessere Lösung?

    256 LED's !einzeln dimmbar!
    2-4 reichen


    mfG
    Philip

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    27.07.2010
    Ort
    Aachen ---- NRW
    Beiträge
    251
    so... habe jetzt ein paar Ports der m32 frei gemacht ;-> Welche sind jetzt genau PWM-Ports (ohne software-pwm?) ? Wie kann man von da aus eine Led dimmen?

    mfG
    Philip
    Geändert von AsuroPhilip (16.07.2011 um 19:40 Uhr)

  7. #7
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.255
    Beim ATMEGA 8 Dil Variante sind das.
    OC1A = PIN 15
    OC1B = PIN 16
    OC2 = PIN 17

    Diese 3 Pins können als PWM arbeiten.
    OC1A und OC1B laufen mit dem Timer 1
    OC2 mit Timer 2

    Bei einem anderen Controller nach OC Pins suchen.

    Die Timer werden für den entsprechenden PWM Mode konfiguriert und die OCx Pins aktiviert und ein passender Prescaler gewählt.
    Je nach dem Wert den man ins Comparematch Register schreibt kommt dann eine entsprechende Pulsweite raus.
    Man kann gerade Timer 1 sehr vielseitig PWM- mässig programmieren. Vom 8Bit PWM bis 16Bit PWM ( 9 und 10Bit gehen auch soweit ich weiss ) ist da einiges möglich. Auch ein Ausgangssignal mit 50% Duty Cycle und änderbarer Frequenz.
    Fast PWM solltest Du nicht machen, weil da keine Werte mit 0 ( = kein Signal ) möglich ist.
    Initialisierungsstrings müsste ich jetzt zusammensuchen, da ich jetzt nicht ganz genau weiss was Du konkret brauchst hilft Dir das auch wenig.
    Alles läuft dann in Hardware und benötigt deshalb keine zusätzliche Rechenleistung mehr, ausser zum Schreiben der Comparematch Register.

Ähnliche Themen

  1. RP6 M32 und noch ein PCF8574P?
    Von AsuroPhilip im Forum Robby RP6
    Antworten: 14
    Letzter Beitrag: 27.06.2011, 22:19
  2. LCD über Pcf8574P an Rn mega128funk
    Von Kalli01 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 8
    Letzter Beitrag: 16.08.2010, 18:16
  3. Nochmal I2C PCF8574P
    Von Cruser12 im Forum Asuro
    Antworten: 10
    Letzter Beitrag: 23.06.2010, 21:09
  4. Schalter an den PCF8574P anschließen
    Von Cruser12 im Forum Asuro
    Antworten: 7
    Letzter Beitrag: 11.05.2010, 21:17
  5. LCD an PCF8574P im I2C-Mode
    Von Vector3 im Forum Sensoren / Sensorik
    Antworten: 5
    Letzter Beitrag: 30.03.2009, 08:02

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen