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: Wie HS-REL5 am IIC BUS ansteuern Kategorie: Programmierung Basic (von Fritz Treber - 9.03.2009 10:31)
 Als Antwort auf Re: Wie HS-REL5 am IIC BUS ansteuern von joergm6 - 8.03.2009 20:05
OK, so geht es jetzt.
Ich fasse noch einmal zusammen wie man das HSREL5 von der C-Control Station 2.0 ansteuert.

Hier ein Beispiel mit zeitversetztem Schalten zweier Antriebe, wie es jetzt bei mir funktioniert:
Die Adresse des HSREL5 ist auf 000 gesteckt (defaulteinstellung)

'#####################################################

' definiere die IIC Ports
define SDA as port[9]
define SCL as port[10]
define EXTPORT as byteport[4]

' Relaisadressen des externen IIC Module HS-REL5:
' Normal Typ
' PCF8574 bei Adresseinstellung A2,A1,A0 = 000 gilt: Port 17-24
' PCF8574 bei Adresseinstellung A2,A1,A0 = 111 gilt: Port 73-80
' A Typ:
' PCF8574A bei Adresseinstellung  A2,A1,A0=000 gilt Port 81-88
' PCF8574A  bei Adresseinstellung A2,A1,A0=111 gilt Port 137-144

' Adressen von Relais 1 und 2 definieren
define RuehrMotor as port[17]     ' Relais 1
define SaugMotor as port[18]    ' Relais 2

'Initialisiere IIC (Ist normalerweise mit Benutzung des LCD bereits geschehen)
LCD.INIT
SDA=on
SCL=on
EXTPORT=off
.
.
.

' Die Relais zeitversetzt schalten

 RuehrMotor = on
 pause 250
 SaugMotor = on
 pause 750
 RuehrMotor = off
 pause 250
 SaugMotor = off


'#############################################


> Ich noch mal, habe mich verschrieben. In meiner Auflistung heist es nicht
> PCF 8574P sondern PCF 8574A [Asche streu]
>
> Du hast den PCF ohne A also gilt
> define EXTPORT   as byteport[10]
> define Saugmotor  as port[74]
>
> Gruß Jörg
>
> > Hallo Fritz,
> >
> > aJa, du hast eine Station. Da muss man bisschen anders herangehen, Vor allem muss I2c-Bus und LCD initialisiert werden.
> >
> > define SDA         as port[9]
> > define SCL          as port[10]
> >
> > define EXTPORT   as byteport[18]
> > define Saugmotor  as port[138]
> >
> > LCD.INIT
> > LCD.OFF
> > SDA=on
> > SCL=on
> > EXTPORT=off
> > #loop
> >  SaugMotor = on
> >  pause 500
> >  SaugMotor = off
> >  pause 500
> > goto loop
> >
> > Gruß Jörg
> > > Jörg,
> > > das geht auch nicht wenn ich das SaugMotor Bit als Port definiere.
> > >
> > >
> > >
> > >
> > >
> > > > Hallo Fritz,
> > > > tja, so auch nicht :-) es heißt nicht "bit" sondern "port"!!
> > > > define SaugMotor as port[138]
> > > >
> > > > Gruß Jörg
> > > >
> > > > > Hallo Jörg,
> > > > >
> > > > > danke, dann müsste es ja ganz einfach sein.
> > > > >
> > > > > Ich habe den PCF8574P, Spannung liegt an, Relais schalten manuell, die Adresse des Bausteines steht auf 111 und ich habe folgendes codiert:
> > > > >
> > > > > define SaugMotor as bit [138]
> > > > > ...
> > > > > SaugMotor = on
> > > > > pause 500
> > > > > SaugMotor = off
> > > > >
> > > > > Es tut sich aber nichts. Muss ich noch was initialisieren?
> > > > >
> > > > >

 Antwort schreiben

Bisherige Antworten: