INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
PCF8574 im Interrupt abfragen
06.07.2018, 16:09
Beitrag #1
PCF8574 im Interrupt abfragen
Hallo,
ich habe jetzt vergeblich versucht mit dem Mega 2560 einen Portexpander in der ISR zu steuern.
Funktioniert das evt. mit einen Duo oder ist das grundsätzlich nicht möglich beim Arduino?
Diese Nachricht in einer Antwort zitieren
06.07.2018, 17:04 (Dieser Beitrag wurde zuletzt bearbeitet: 06.07.2018 17:22 von MicroBahner.)
Beitrag #2
RE: PCF8574 im Interrupt abfragen
(06.07.2018 16:09)daneie schrieb:  Hallo,
ich habe jetzt vergeblich versucht mit dem Mega 2560 einen Portexpander in der ISR zu steuern.
Funktioniert das evt. mit einen Duo oder ist das grundsätzlich nicht möglich beim Arduino?

EIn PCF8574 wird über I2C angesteuert. Und I2C ist eine - aus Sicht des Prozessors - ziemlich langsame serielle Schnittstelle. Das kannst Du nicht komplett in einer ISR abfragen, das dauert zu lange dafür. Wenn die I2C-Schnittstelle selbst mit Interrupts arbeitet ( was die Standard Arduino-Lib meines Wissens aber nicht tut ), geht es schon prinzipiell nicht, da innerhalb einer ISR normalerweise keine weiteren Interrupts abgearbeitet werden. Z.B. auch der Arduino-interne Timer ISR nicht, der Basis für micros() und millis() ist.

P.S. hab nochmal nachgeschaut. So wie es aussieht nutzt die wire-Lib intern doch einen ISR. Damit geht es prinzipiell nicht.

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.07.2018, 17:16
Beitrag #3
RE: PCF8574 im Interrupt abfragen
(06.07.2018 17:04)MicroBahner schrieb:  EIn PCF8574 wird über I2C angesteuert. Und I2C ist eine - aus Sicht des Prozessors - ziemlich langsame serielle Schnittstelle. Das kannst Du nicht komplett in einer ISR abfragen, das dauert zu lange dafür.

Beim C-Control AVR32 funktioniert es einwandfrei. Und der arbeitet mit einen Interpreter.
Diese Nachricht in einer Antwort zitieren
06.07.2018, 17:16
Beitrag #4
RE: PCF8574 im Interrupt abfragen
(06.07.2018 16:09)daneie schrieb:  Hallo,
ich habe jetzt vergeblich versucht mit dem Mega 2560 einen Portexpander in der ISR zu steuern.
Funktioniert das evt. mit einen Duo oder ist das grundsätzlich nicht möglich beim Arduino?

Und warum soll das in der ISR gesteuert werden ?
Wenn ein Interrupt auftritt, springst du aus der ISR inden I2C-Steuercode für den Portexpander.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.07.2018, 17:30
Beitrag #5
RE: PCF8574 im Interrupt abfragen
(06.07.2018 17:16)daneie schrieb:  Beim C-Control AVR32 funktioniert es einwandfrei. Und der arbeitet mit einen Interpreter.
Deshalb sind die Interrupts dort auch keine 'echten' HW Interrupts. Da bedeutet 'Interrupt' dann, dass der Interpreter zwischen 2 Pseudo-Befehlen einen anderen Interpreter-Code abarbeitet. Das ist aber was ganz was anderes als ein echter HW-Interrupt des Prozessors.
Beim Arduino arbeitest Du deutlich anders ( viel HW-näher ) als bei der C-Control. Da muss man manchmal etwas umdenken.

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Adressen PCF8574 / 8575 SOFTHARD 22 2.725 13.06.2018 19:11
Letzter Beitrag: hotsystems
  Sensor an Arduino über IP abfragen/steuern kubinek 5 4.504 03.08.2015 21:14
Letzter Beitrag: Haustechno
  Frage zu PCF8574 HaWe 32 8.321 31.07.2015 09:55
Letzter Beitrag: hotsystems
  Sinus an Interrupt Pin? DaniDD 9 2.672 23.06.2015 08:23
Letzter Beitrag: DaniDD
  Attiny, Power-down-mode und der Interrupt mitch_m 0 1.726 12.03.2015 21:20
Letzter Beitrag: mitch_m
  Wasserstand abfragen querkopf71 2 2.725 18.01.2015 14:28
Letzter Beitrag: querkopf71

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste