Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: PCF 8591P read/write Kategorie: Open-Micro/Open-Mini/Open-Midi/Open-Macro/Open-Maxi (von Jens - 12.12.2007 20:18)
 Als Antwort auf Re: PCF 8591P read/write von Peter - 11.12.2007 23:36
Jens nutzt:  Open-Micro, Open-Mini, Open-Midi, Open-Macro
Hallo Peter!

> Der m├╝sste eigentlich ├Ąhnlich den 9531 sein oder?

Jo, der ist so ├Ąhnlich und wird mehr oder weniger auch genau so angesteuert. Allerdings hat der PCA9531 auch nur an zwei PWM Register und kann daher auch nur zwei PWM Ausg├Ąnge ansteuern. Die anderen sechs Ausg├Ąnge kannst Du entwerder auf die PWM Register legen oder eben nur EIN und AUS schalten. Dass ist in meinen Augen reine Verschwendung, daher auch der PCA9530.

> Weil der 9530 ja nur einen Adresspin hat. Also kann man nur 2 im Bus haben.

Jo, Du kannst nur zwei Bausteine an einem Bus betreiben. Aber es hindert Dich keiner daran einen "Neuen" I2C-Bus auf zu bauen. Ansonsten bleibt ja noch der PCA9531.

> Macht der eine sch├Âne Analogspannung oder PWM?

Die beiden Bausteine machen nur PWM. Wenn Du m├Âchtest kannst Du aber auch noch den dazugeh├Ârigen Schaltplan von meiner L├╝ftersteuerung haben (dass jetzige Projekt mit PCA9530), da kommt zum Schluss eine "sch├Âne Analogspannung" heraus.

Im angeh├Ąngten Demo werden beide Register vom PCA9530 mit der maximalen PWM Frequenz betrieben, dass hei├čt die PWM Frequenz liegt bei 160Hz. An der RS232 wird ein Terminalprogramm ben├Âtigt, damit lassen sich dann neue PWM Werte einstellen. Viel Spa├č beim testen...

LG Jens

' ---------------------------------------------------------------------------
' --- PCA9530 Demo - f├╝r OCBASIC --------------------------------------------
' ---------------------------------------------------------------------------

' Hardware:
' Serielle Schnittstelle an Port[1] (mit Terminal Programm)
' I2C-Bus SCL an Port[5] (fals nicht anders festgelegt)
' I2C_Bus SDA an Port[6] (fals nicht anders festgelegt)

' --- Betriebssystem konfigurieren ------------------------------------------
include "om.def"          ' Betriebssystem Daten der Open-Micro laden
'include "omid.def"        ' Betriebssystem Daten der Open-Midi laden

' --- definition der Variablen ----------------------------------------------
define adresse    byte    ' I2C-Bus Adresse
define ACK        byte    ' I2C-Bus "ACK" vom Slave
define PWM1       byte    ' PWM 1 an LED 0
define PWM2       byte    ' PWM 2 an LED 1

' --- Voreinstellung und Initialisierung ------------------------------------
End2Host=ON               ' Bei Programmende in den HOST-Modus wechseln
i2c_init                  ' Initialisirung I2C-Bus
' ---------------------------------------------------------------------------


' ---------------------------------------------------------------------------
' --- Hauptprogramm ---------------------------------------------------------
' ---------------------------------------------------------------------------
adresse = 192                       ' Adresse PCA9530 (A0 = Low)
PWM1 = 128                          ' PWM 1 - Wert einstellen
PWM2 = 128                          ' PWM 2 - Wert einstellen
print                               ' Leerzeile
print "Programmstart..."           ' Text Ausgabe

#anfang

i2c_start                           ' I2C-Bus starten
  ACK = i2c_write(adresse)          ' Adresse senden, ACK empfangen
  if ACK <> 255 then                ' Wenn "ACK" vom Slave nicht empfangen, dann Fehlerausgabe
    print                           ' Leerzeile
    print "PCA9530 antwortet nicht - Fehler - Prg. Ende..." ' Text Ausgabe
    end                             ' Programmabbruch
  end if
  i2c_write(17)                     ' PSC0 Subadresse + auto-increment
  i2c_write(0)                      ' PSC0 maximum Frequenz (160Hz)
  i2c_write(PWM1)                   ' PSC0 PWM 1 Rate ├╝bergeben
  i2c_write(0)                      ' PSC1 maximum Frequenz (160Hz)
  i2c_write(PWM2)                   ' PSC1 PWM 2 Rate ├╝bergeben
  i2c_write(14)                     ' Register setzen - PSC0 = LED0 / PSC1 = LED1
i2c_stop                            ' I2C-Bus stoppen

print                               ' Leerzeile
print "PWM1 Daten = "; PWM1         ' Text Ausbabe
print "neue Eingabe: ";             ' Text Ausgabe
input PWM1                          ' Neue Eingabe PWM1
print "PWM2 Daten = "; PWM2         ' Text Ausbabe
print "neue Eingabe: ";             ' Text Ausgabe
input PWM2                          ' Neue Eingabe PWM2

goto anfang                         ' zur├╝ck zum Programmanfang
end                                 ' Programmende
' ---------------------------------------------------------------------------


' ---------------------------------------------------------------------------
' Die I2C-Routinen einbinden
' ---------------------------------------------------------------------------

INCLUDE "om_i2c.pro"

' ---------------------------------------------------------------------------
' Die Firmware-Routinen einbinden
' ---------------------------------------------------------------------------

INCLUDE "om_fw.pro"

 Antwort schreiben

Bisherige Antworten:

Re: PCF 8591P read/write (von Peter - 13.12.2007 19:54)
    Re: PCF 8591P read/write (von Jens - 14.12.2007 0:46)
        Re: PCF 8591P read/write (von Peter - 14.12.2007 10:48)
            Re: PCF 8591P read/write (von Peter - 14.12.2007 12:00)
                Re: PCF 8591P read/write (von Jens - 14.12.2007 13:11)
                    Re: PCF 8591P read/write (von Peter - 14.12.2007 23:38)
                    Re: PCF 8591P read/write (von Jens - 14.12.2007 20:59)
                       Re: PCF 8591P read/write (von Peter - 14.12.2007 23:55)
                          Re: PCF 8591P read/write (von Jens - 15.12.2007 19:15)
                             Re: PCF 8591P read/write (von Peter - 16.12.2007 11:55)
                                Re: PCF 8591P read/write (von Peter - 12.10.2008 0:46)
                                   Re: PCF 8591P read/write (von Gerhard - 13.10.2008 12:35)