PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Interrupt mit PCF8574



Tido
19.11.2008, 18:44
Hallo,

ich will 6 Taster an einen PCF8574 anschließen. Da ich aber auf Änderungen des Zustandes möglichst schnell reagieren muss, würde ich gerne den Interrupt-Ausgang zum ATmega führen. Leider werde ich aus dem Datenblatt des PCF nicht ganz schlau; da steht:

An interrupt is generated by any rising or falling edge of the port inputs in the input mode. After
time, tiv, INT is valid. Resetting and reactivating the interrupt circuit is achieved when data on the port is changed
to the original setting or data is read from, or written to, the port that generated the interrupt.

1. Wie versetze ich den PCF denn dann in den Input-Mode? Indem ich einmalig lesend auf ihn zugreife?
2. Ich würde gerne die 2 verbleibenden Ports als Ausgang nutzen, funktioniert dann der Interrupt noch? Müsste ich dann also erst die beiden Ports setzen und danach einmal lesend auf den PCF zugreifen?

Hat da jemand Erfahrungen gesammelt?

Neutro
19.11.2008, 19:22
Hallo Tido,

vielleicht kann dir das weiterhelfen, ist zwar englisch, aber gut zu verstehen
http://www.qsl.net/pa3ckr/bascom%20and%20avr/i2c/index.html

MfG

Neutro

stromflo
20.11.2008, 08:24
Hallo Tido,

soweit ich mich erinnern kann, wird eine Pegelädnerung an den Eingängen des PCF8574 mit einem LOW Pegel am INT Ausgang des PCF8574 signalisiert. Da es lange her ist, bin ich mir aber nicht mehr ganz sicher....

Gruß Flo

Tido
20.11.2008, 09:27
Danke,

@Neutro: Leider wird dort der PCF8574 nur als Eingang genutzt.
@stromflo: Das ist richtig, das weiß ich auch schon.

Werde wohl um einen Testaufbau nicht herum kommen...

Yossarian
20.11.2008, 16:40
Hallo
Der Interrupt Ausgang des 8574 wird bei jeder Änderung des Eingangports gesetzt. Wenn die Änderung des Ports rückgängig gemacht wird oder der Port gelesen wird, wird die Int Leitung wieder zurückgesetzt.

Mit freundlichen Grüßen
Benno

Neutro
20.11.2008, 18:32
Hallo Tido,

unter dem Beispielprogramm für den Eingangstaster befindet sich ein Beispielprogramm für Taster und Interrupt.
Falls du das jedoch meintest und dir das nicht weiterhilft muss ich auch passen, ich arbeite mich auch gerade erst in die I2C Materie ein.

MfG

Neutro

stromflo
20.11.2008, 19:24
Der Interrupt Ausgang des 8574 wird bei jeder Änderung des Eingangports gesetzt. Wenn die Änderung des Ports rückgängig gemacht wird oder der Port gelesen wird, wird die Int Leitung wieder zurückgesetzt.

Müsste so passen.
Aber auch wenn der PCF8574 beschrieben wird, wird der Interrupt wieder zurückgesetzt, soweit ich das in Erinnerung hab.

Gruß Flo

edit:
hab gerade noch diesen Link (http://www.goblack.de/desy/digitalt/i2c/pcf8574.html) in meinen Lesezeichen gefunden....