-
Thread
16x Relais Initialzustand - wie Umsetzen
anzuschliessen um zu sehen, dass unterschiedliche Relais schalten. Um das Problem zu lösen habe ich 2x PCF8574 Pins an alle 16 Relais pins angeschlosen. Da Relais geschaltet werden, wenn Pin an Relais LOW ist, schalten jetzt alle Relais kurz am Anfang, bis ESP32 sich initialisiert und 2x PCF8574 über i2C
2) ESP32 durch etwas schnelleres (ATTINY) ersetzen... Leider habe ich nicht gefunden, dass man PCF8574 so konfigurieren kann, dass es beim Einschalten alle Pins auf HIGH hat...
-
Thread
I2C Bus empfindlich gegen Einschaltimpulse - wie schützen ?
Die Störungen erzeugen zufällig exakt die Adresse des PCF8574? Kommt mir etwas komisch vor. Fehlen vielleicht einfach nur Superessor Dioden an VCC, SDA und SCL?
Bus liegt auf meinem Labortisch (mit RASPERRY Pi und PCF8574 auf Boards angeschlossen). Buslänge zwischen 20 und 30 cm - aufaddiert! Direkt darüber die Leuchtstoffröhre (1 Meter Abstand)!
-
Thread
Software-TWI: enge Clock-Frequenz oder beliebige Zeiten?
Vorsicht, es gibt zwei Versionen vom PCF8574, die sich in ihrer Adresse unterscheiden. PCF8574 und PCF8574A!
Rudolf schrieb im Beitrag #2479327: > Vorsicht, es gibt zwei Versionen vom PCF8574, die sich in ihrer Adresse > unterscheiden. PCF8574 und PCF8574A! Ja, ich weiß, ich habe beide. Ich hatte in meiner Verzweiflung schon mal eine Programmversion geschrieben, wo die Adressen
-
Thread
AM312 am KC868-A8
Optokopplers, 3.3V und dann drehe die Strombegrenzung immer weiter runter und schau mal ob und bis wann der PCF8574 durchschaltet.
das. Zeichne einen zusammenhängenden Schaltplan mit dem Signalfluss angefangen beim AM312 bis zum PCF8574, auch mit den Versorgungsspannungen.
-
Thread
TWI mehrfach Initialisierung
found { return !i2c_start(addr); // return 0 if OK otherwise 1 } uint8_t LCD_I2C_DEVICE = I2C_PCF8574; void i2c_detectPCF8574() { bool i2cFound_PCF8574 = I2C_Detect(I2C_PCF8574); bool i2cFound_PCF8574A = I2C_Detect(I2C_PCF8574A); if (!i2cFound_PCF8574 && i2cFound_PCF8574A) { LCD_I2C_DEVICE = I2C_PCF8574A; } } [/code] und mache ein: [code] void lcd_init(void) { lcd_light(false); _delay_ms(15); //- Wait for more than 15ms after VDD rises to 4.5V lcd_write
-
Thread
I2C Relaiskarte wird gestört beim Schalten von 230V
zum PCF8574 sind sie auch. fchk
Der PCF8574 hat vom Prinzip her Open Collektor Ausgänge, die nur mit 100uA nach VCC gezogen werden. Dadurch kann mann sie auch als Eingänge verwenden. Wenn du damit solide schalten willst, brauchst du umgekehrte
-
Thread
PCF8583 Uhr mit I2C ansteuern
Hi Frank, merci, aber genau das ist ja das Verrückte. Ich habe ein Board mit dem PCF8574A (Portexpander), da läuft alles perfekt. Dann habe ich ein gleiches Board mit dem PCF8591 (A/D-Wandler). Das läuft nicht, obwohl ich die gleichen Routinen (übrigens von Dr Rathlev Uni Kiel) benutze
#2251218: > Hi Frank, > merci, aber genau das ist ja das Verrückte. Ich habe ein Board mit dem > PCF8574A (Portexpander), da läuft alles perfekt. Dann habe ich ein > gleiches Board mit dem PCF8591 (A/D-Wandler). Das läuft nicht, obwohl > ich die gleichen Routinen (übrigens von Dr Rathlev Uni Kiel
-
Thread
Merkwürdiges Verhalten 74HC4066
paul schrieb im Beitrag #6551113: > Genau, wenn ich den PCF8574 raus nehme und jeden Eingang des 74HC4066 > mit Masse belege sind beim Einschalten wunderbar alle LEDs OFF. Ziehe > ich einen Eingang auf +5V schaltet die LED zuverlässig. Naja, wenn du die
Eingang der 4066 Low ist. Sie leuchten also nicht, wenn der Eingang High ist. Der initiale Status eines PCF8574 ist High an allen IOs. Damit ist nach einem PowerOn erstmal der Zustand erreicht, dass alles aus ist. Noch ohne jeden Beitrag des ESP8266.
-
Thread
PIC 18LF4550: Diskussion über Konzept: Eure Meinung, bitte!
genauer auf den Punkt einzugehen: Wie in dem Artikel beschrieben, schließt man den Encoder an einen PCF8574 an (I²C Port - Expander mit Interrupt). bei einer Änderung des Zustandes liegt am /Int - Augang des PCF8574 ein [Edit] LOW an. Damit brauche ich nicht dauernd den Encoder über den I²C - Bus zu
@ Markus J. (doc_database) >Wie in dem Artikel beschrieben, schließt man den Encoder an einen >PCF8574 an (I²C Port - Expander mit Interrupt). >bei einer Änderung des Zustandes liegt am /Int - Augang des PCF8574 ein >HIGH an. >Damit brauche ich nicht dauernd den Encoder über den I²C - Bus zu
-
Thread
24 Relais über 3 I²C-Portexpander
Guten Tag, Können 24 Relais über 3 I²C-Portexpander zum Beispiel PCF8574 schalten ? wenn ja. wie werden die mit Atmega verbunden und wie wird das Programm aussehen? MfG SB
http://www.mikrocontroller.net/articles/Port-Expander_PCF8574
-
Thread
bistabiles Relais für AVR/Arduino
Joachim B. schrieb im Beitrag #5007200: > da halte ich mich lieber an meine Datenblätter Das vom PCF8574/PCF8574A ist da wohl nicht dabei.
einen PCF8574(a) für 4 Relais + Treiber. Bei 50 Relais reicht nur der Mix PCF8574 (8x8) + PCF8574a (8x8) also 128/2 max. 64 Relais. oder man nimmt einen MCP mit 16 Kanäle (oder mehrere)
-
Thread
IIC Bus, Knöpche
gemacht, mit 5V versorgt, 2 Taster die bei drücken die 5V auf den MC14504BCP geben der über einen PCF8574P dann an den IIC Bus geht. Wie mache ich das dann mit den Adressen, gibt es Taster mit Adressen oder brauche ich dann für jeden Tasster einen PCF8574P? Wenn ihr mir sagt das soetwas humbug
gemacht, mit 5V versorgt, 2 > Taster die bei drücken die 5V auf den MC14504BCP geben der über einen > PCF8574P dann an den IIC Bus geht. Wenn Dein MC zu wenig Anschlüsse hat, kannst Du ihn über I2C oder SPI erweitern. PCF8574 geht (8 Tasten direkt oder 16 Tasten als Matrix). Was aber der 4504 dabei
-
Thread
Meine erste Platine - bitte um Feedback
GND Verbindung) stellt dem IC eine weitgehend konstante Spannung zur Verfügung. Der hier verwendete PCF8574 ist sehr gutmütig (und langsam). Daher wird die Schaltung wahrscheinlich auch ohne Kondensatoren funktionieren, zumal alle IOs des PCF nur als Eingang benutzt werden. Das ist seine Grundeinstellung
Hallo Mir ist auch etwas aufgefallen. Es sind 2 I2C-Expander(PCF8574) verbaut und hängen am gleichen I2C-Bus. Hier muss dann aber die Chip-Hardware-Adresse (A2,A1,A0) unterschiedlich sein, wennst du sie getrennt ansprechen möchtest. mfg Mike
-
Thread
Austausch IC mit DIP gegen SMD
://www.mouser.de/ProductDetail/Texas-Instruments/PCF8574N/ Digikey: http://www.digikey.de/product-detail/de/texas-instruments/PCF8574N/296-13109-5-ND/484957
Klars schrieb im Beitrag #4920439: > PCF 8574 PCF8574AN Conrad: Bestell-Nr.: 1047948 - 62 RS-Components >660 im Lager Farnell Best.Nr 1703443 (> 1935 Stck. im Lager) Mouser > 1500 ...
-
Thread
Brauche Eagle Hilfe / Elektroniker
überall mit konstanter Spannung (12V, 24V) arbeitet. Das Schaltungskonzept für die Eingänge der PCF8574 ist unbrauchbar, denn die Dinger haben einen internen Pull-Up Widerstand. Also muss der Optokoppler, so man ihn denn verwendet, nach GND schalten. https://www.mikrocontroller.net/articles/Port-Expander_PCF8574
zwischen dem PCF8574 Pin und GND geschaltet werden, nicht wie jetzt zwischen 3V3 und Eingangspin.
-
Thread
Bessere Lösung um 8 Öffner am Arduino auszulesen gesucht
Falk B. schrieb im Beitrag #6503152: > Ein IO-Expander ala PCF8574 braucht nur 2 IOs für I2C. Und da das ein Bus ist, sind die nicht wirklich belegt. Da können auch noch andere Mitfahren. z.b. ein 2.ten PCF8574 (nur andere Adresse) und damit dann die Funktionen
Lenkradtasten nach 4 Jahren auch bemerkt, nur kam ich an die Kontakte zum Putzen. Hier würde ich auch PCF8574(a) vorziehen.
-
Thread
Mehrere BCD-Codierschalter pinsparend abfragen
letzten paar Minuten schon die Dioden reingelötet :-). Ich machs nun ausserdem mit einem Portexpander PCF8574. Wahrscheinlich mit externen Pullups an den Eingängen (Schleifern), die dann auf low gezogen werden, weil ich mir nicht sicher bin, ob das bisschen Saft, das die PCFs abegeben können, für eine sichere
Warum nimmst Du nicht einfach 2 * PCF8574 und sparst Dir die 16 Dioden ? Peter
-
Thread
ESP8266 Deep Sleep Hardware Wakeup
(wahrscheinlich nicht, da der Ausgang des 74LS32 immer "definiert" ist?) 3. PINs 1-3 (A0-A2) des PCF8574 müssten wohl gegen GND geschaltet werden (oder gegen Vcc, je nach gewünschter Adresse) 4. Brauchen die PINs 4-7 (P0-P3) des PCF8574 Pull-Ups oder hat der Expander interne PullUps? Das ist mir auch
schrieb im Beitrag #6302707: > Sebastian L. schrieb im Beitrag #6302671: >> PINs 1-3 (A0-A2) des PCF8574 müssten wohl gegen GND geschaltet werden > Nicht zwingend, die haben einen internen Pull-Up Widerstand. Betrifft das dann auch P0-P3 des PCF8574, an denen die Taster angeschlossen sind (in der
-
Thread
PCF8563 Uhrzeit läuft nicht weiter.
(PCF8574A_WRITE); i2c_write(0x00); i2c_write(0b00000000); i2c_write(0b00010001); i2c_stop(); i2c_start(PCF8574A_WRITE); i2c_write(0x0E); i2c_write(0b10000010); i2c_stop(); return 0; } void getTime(void) { int ret=0; int sekunde; i2c_start_wait(PCF8574A_WRITE); // set device address and write mode i2c_write(0x02); // write address = 5 i2c_rep_start(PCF8574A_READ); // set device address and read
-
Thread
I2C SCL multiplexen mit 7409?
mir die Rückseite noch nicht genau angeschaut. Ich taste mich da so langsam heran. Habe zunächst die PCF8574 Karten genauer untersucht. Dort ist eine 4-fach Jumper Konfigurations-Möglichkeit mit der SCL Leitung wohl um mehr PCF8574 Bausteine Adressieren zu können.
#4495154: > Dort ist eine 4-fach Jumper Konfigurations-Möglichkeit mit der SCL > Leitung wohl um mehr PCF8574 Bausteine Adressieren zu können. Der PCF8574 hat aber nur drei Adresseingänge. Da muss wohl noch mehr dahinter stecken.
-
Thread
Bascom LCD an I2C AN118
Bei allen das gleiche. Die Hardware scheint zu funktioneren, Messungen an den Portausgängen des PCF8574A zeigen aktivität. Was mache ich verkehrt, oder stimmt irgendetwas mit der Library nicht? Gruß Karl-Walter
sondern nur das Demoprogramm aus der AN118 von MCS und dort die Adresse von &H40 auf &H70 für den PCF8574A angepasst. Gruß Karl-Walter
-
Thread
LCD an ATmega644 (später ATmega8) mittels TWI/I2C (Anfängergerecht)
habe ich ja bereits die Komponenten. Im Prototyp den meine Gruppe dann vorstellen wird, wird der PCF8574 zwar auf einer eigenen Lochrasterplatine zusammen mit den anderen Komponenten verbaut sein, aber die Ansteuerung sollte ja die selbe bleiben.
würdest... was macht gerne mal Ärger was ich nicht bedacht haben könnte? Wo ist dein Beispiel mit PCF8574? In dem Projekt hier ist nur was mit 24LC02, ein EEPROM. Falsches Projekt erwischt?
-
Thread
Stromaufnahme eines ULN2803 am Input
Jobst Q. schrieb im Beitrag #4859040: > Ich bevorzuge > die Ansteuerung über I2C mit PCF8574 Na DAS bestimmt nicht! Der PCF8574 gibt an High max. 100μA aus, ausserdem sind die Ausgänge nach Reset High! Wolltest Du sagen, dass Du zwischen PCF8574 und ULN2803 noch den 74HC540 reinmachst
einige sind ja schon vorbelegt/verplant, TxRx I2C 1w ich würde ja bei 3x ULN -> 3 I2C Expander PCF8574 nehmen, das entschärft den GPIO Strom dramatisch anreihbar bis 8 Stück http://www.ebay.de/itm/PCF8574-I2C-8-bit-IO-GPIO-expander-module-Works-with-Arduino-Raspberry-Pi-/291491757822 Jobst
-
Thread
Problem mit Ansteuerung TWI LCD Textdisplay (HD44780)
Hätte ich ja direkt dazuschreiben können. Ich benutze auch das 16 Pol. i2C Modul mit dem PCF8574. Zwischenzeitlich habe ich mal die HD44780_PCF8574 aus dem Forum geladen und getestet. Die funktioniert richtig. Also liegt der Fehler in meinem Programm. Aber wo??
POSR abwarten rcall twistart ldi temp, 0x70 ; Slave Startadresse + RW-Bit rcall twiout ; PCF8574->0x40; PCF8574A->0x70 rcall lcd_achtbitinit ; LCD-Init: acht Bit rcall lcd_acht_vier ; LCD-Init: acht zu vier Bit rcall lcd_vier_zwei_z ; LCD-Init: vier Bit, 2 Zeilen rcall lcd_on_off
-
Thread
7 Segment Anzeige auf verschiedenen Ports
Bus erfolgen. Da nur dieser Code darauf laufen soll ist die Grösse des Codes eigentlich egal. Einen PCF8574 benutze ich bereits an einem Display mit 2x16
Da geb ich dir Recht. Mit dem PCF8574 kann viel machen. Es ist immer der I2C Bus mit dabei. Finde diesen Bus eigentlich sehr gut. Was machst du aber wenn es den 8574 nicht mehr gibt und es nur noch den MCP23017 gibt. Ist im Grunde das
-
Thread
Relaisansteuerung mit MOSFET
Zitat NXP: "... needs a strong pull-up.". Jedenfalls der 8574.
[[Port-Expander PCF8574]] [[Relais mit Logik ansteuern]] Der 8575 ist der grosse Bruder vom 8574. Man schaue auf Seite 8 des Dateblattes. Bei HIGH bringt der IC nur ca. 100uA. u=I*r = 100uA * 100k = 10V OK, reicht
-
Thread
I2C Display Problem
steht auf dem Portexpander IC drauf? mit oder ohne A. Die Adressen sind dann unterschiedlich. PCF8574->0x40...4E; PCF8574A->0x70...7E ciao gustav
LED ENA R|W RS ; A0,A1,A2 -> left open e.g =H -> 3F to be added to portdaptor's address e.g. PCF8574->0x40...4E; PCF8574A->0x70...7E Die Steuerbits, Enable und RS sind im Achtbitformat gekapselt zu senden. R/W ist standardmäßig auf Low. Denn eine "Rückwärtsübertragung" ist beim Portadater
-
Thread
Codevision CodeWizardAVR TWI Probleme
TWI_MASTER_RIEN_bm | TWI_MASTER_WIEN_bm; twi->MASTER.STATUS = TWI_MASTER_BUSSTATE_IDLE_gc; } PCF-Schreiben void PCF8574_send_byte(TWI_t *twi, char Adresse, char byte) { twi->MASTER.ADDR = (Adresse << 1) + 0; delay_us(500); twi->MASTER.DATA = byte; } Main aufruf PCF8574_send_byte(&TWIC, 0x38, 0x55); delay_ms(500); PCF8574_send_byte(&TWIC, 0x38, 0xAA); delay_ms(500); Habe ich wo nen Fehler?
-
Thread
LCD (Funduino) ansteuern mit Bascom
Adresse des I2C-LCDs (orginal 78) Na Klasse, im Datenblatt von Texas Instruments S.13 gibt es den PCF8574 tatsächlich mit der Adresse 78 / 0x4E :-( Wie gehabt: Scanner!
mat-sche schrieb im Beitrag #4876186: > Schau mal wie die Adresspins A0-2 vom PCF beschalten sind und um welchen > PCF (A oder nicht) es sich handelt. Es ist ein PCF 8574T und die Kontakte bei A0-2 sind offen Funker Fritz schrieb im Beitrag #4876188: > Beide Ansteuerungen
-
Thread
I²C Portbaustein nur von Philips?
außer von Philips? Vieleicht erfüllt ja z.B. ein 74HCx die selben aufgaben wie der doch recht teure PCF 8574 von Philips? Ich möchte mir nämlich eine Led Matrix aufbauen und aus diesem Grund brauche ich ein paar mehr Portbausteine, was allerdings mit den PCF8574 ein doch recht teures unterfangen würde
= 8µs, da hat der I2C ja noch nicht mal das Startbit gesendet. Vom PCF8574/A kann man max 16 Stück an einen Bus hängen. Beim 74HC595 wirkt nur die Pinkapazität als Begrenzung. Z.B. 100 * 74HC595 haben 100*10pF=1nF, da geht man dann mit der Frequenz etwas runter oder
-
Thread
Suche Schieberegister mit 6 Ausgängen und 2 Eingängen, ähnlich 74HCxxx
Hallo! PCF 8574.
20 mA sind nahe der absoluten Grenze des PCF 8574.
-
Thread
32 Kanal Relaiskarte (seriell)
eine DIL bauform bevorzuge. den atmega128 gibt es ja nur als smd form oder? >@hans kann ich den PCF8574 über den tiny direkt ansteuern? und wie funktioniert die programmierung des PCF8574? was genau ist der unterschied zum HC595?
Gast) >bevorzuge. den atmega128 gibt es ja nur als smd form oder? Ja, nur SMD. >kann ich den PCF8574 über den tiny direkt ansteuern? Ja. [[Port-Expander PCF8574]]. Für ein paar Relais ist ein 74HC595 aber einfacher und billiger. MFG Falk
-
Thread
LCD am I2C Bus
Auf welche Adresse ist der PCF8574 mit den 3 Jumpern eingestellt? Und welche Adresse verwendest Du in der Software?
) { //write the high nibble first... char nibble = mask | ((data & 0xF0) >> 4); write_to_pcf8574(nibble); //...then the low nibble nibble = mask | (data & 0x0F); write_to_pcf8574(nibble); } void write_command(char data) { write_byte(data, COMMAND_MASK); } void write_data
-
Thread
I2C: verschiedene Geschwindigkeit
ICs SCL in so einem Fall auf low, um den Master zu bremsen. (Nach der Antwort von Dieter gehört das PCF8574 offenbar aber nicht dazu) Gruß, DetlevT
Nimm noch den PCA9554, den gibt's auch bei Reichelt. Der hat in einer meiner Schaltungen auch den PCF8574 ersetzt :)
-
Thread
Am PC mehr als 8 Ein- bzw. Ausgänge schalten und lesen
Eine andere Möglichkeit wäre die Realisierung über I2C-Bus. Dazu könntest du den PCF8574A und PCF8574B nehmen. Jeder hat 3 Bits, um die eigene Adresse einzustellen: Das heisst bei Verwendung von A und B Typ kannst du 16 von diesen ICs an einem Bus betreiben. Macht 128 Ein- und Ausgänge
: das sind ISA-Boards. Also nichts für supermoderne PCs. IIC-Bus. Ich habe mehrfach erfolgreich PCF8574 am LPT-Port betrieben. Mit dem entsprechenden Adapter kann man 4 seperate Busse an einem LPT betreiben. Jeder PCF8574 hat 8 I/Os. Relaistreiber sind aber wohl auch hier nötig. Das IC kann zwar 25mA
-
Thread
Wozu dient solch eine #ifndef -Anweisung?
[c] #ifndef _PCF8574_H #define _PCF8574_H #include <avr/io.h> void pcf8574_init (void); void pcf8574_send_stop (void); #endif [/c] ...wenn doch jede .c Datei einzeln kompiliert wird? Wird das "definiert-sein
-)Bibliothek. In einem von einem Anwender gezimmerten Headerfile hat also ein Bezeichner wie _PCF8574_H nichts verloren. Stattdessen wählt man besser die (offenbar zu einfach anmutende :) Variante PCF8574_H.
-
Thread
Twi hängt in der while Schleife..
Kuba schrieb im Beitrag #3709783: > PCF8574 Kuba schrieb im Beitrag #3709833: > i2c_start(0b01110000); <-----Adresse + Start Die Adresse wäre passend für einen PCF8574A, du hast aber angeblich die Version ohne "A". Überprüf das nochmal
PCF8574P steht drauf.
-
Thread
I2C programmierung lernen
suchst, sind I2C Port Expander. zb sowas hier http://www.mikrocontroller.net/articles/Port-Expander_PCF8574
Aber zusammenfassend: 1. PCF8574 mit nachfolgend 2x L293 wäre zum schalten der Relais möglich(?) bzw. 2. AVR mit nachfolgend 2x L293 als Alternative? ZU 1. Dann müsste ich mehrere PCF8574 zusammenhängen um auf die Anzahl
-
Thread
2 Netzteile - gemeinsame Masse?
IO-Expander verwenden, > der 5V hat ??? wieso, ESP 3,3V I2C -> Pegelwandler 3,3/5V -> I2C PCF8574(a) mit 5V -> Relaisplatine von den PCF8574(a) können je 8 Stk. addressiert werden
Hallo, > Bodo R. schrieb im Beitrag #5219731: > Wie auch immer, den PCF8574(a) schau ich mir auf jeden Fall einmal > genauer an. Momentan ist ein MCP23017 verbaut. Und da geht der I2C nur, > wenn ich einen Pegelwandler verwende (3,3V auf 5V). Eventuell geht der > PCF8574
-
Thread
Porterweiterung für I/O
beiden, also ein Schieberegister, das ich auf Input oder Output schalten kann. Ich habe jetzt den PCF8574 gefunden, aber bevor ich die Dinger bestell, würde ich gern auf Nummer sicher gehen, da ich noch nicht wirklich lang in dem ganzen Thema drin steck: Kann ich den PCF8574 wirklich aktiv auf I/O
@ t.animal (Gast) >Kann ich den PCF8574 wirklich aktiv auf I/O umschalten? Dazu habe ich >nämlich im Datenblatt nichts gefunden. Wenn nicht, wie geht das dann? Siehe [[Port-Expander PCF8574]] >Oder hat jemand vielleicht Alternativen
-
Thread
Standard LCD über nur 3 Drähte
@Dominik, Z.B. Segor: 74HC164: 0,45 74HC595: 0,60 PCF8574: 3,30 ! Wenn man da also noch weitere Aus- oder Eingänge ranpappen will, gehts mit dem PCF8574 ganz schön ins Geld. Peter
Nen PCF8574 würde dann 10 Cent kosten, aber nen Pentium 4 10000 Euro... ;) MfG, DSH
-
Thread
Problem mit I2C EEPROM
Kann es sein, dass der PCF8574 spiegelverkehrt im Layout ist? Hast Du mal ohne das EEPROM und den PCF, Clock und Data gemessen? Gruß John
John schrieb: > PCF8574 spiegelverkehrt im Layout ist? Genau. www.nxp.com/documents/data_sheet/PCF8574.pdf
-
Thread
I2C-LCD von sainsmart - keine Anzeige
wurden bei TWI vermutlich nicht benötigt, weil die Ports das intern erledigen. Die Adressbits am PCF8574T (NXP/Philips) habe ich geprüft und das Datenblatt bestätigt mir auch die eingetragene Hardwareadresse 27h. Auszug: [code] Pin conn. | |Addr. of PCF8574| A0 A1 A2
switch(address<<1) { case 0x40: i2c_test_flags|=(1<<I2C_TASTATUR_8574); _i2c_key=' '; DEBUG_PRINTLN(F(" PCF8574 Tastatur")); break; case 0x70: i2c_test_flags|=(1<<I2C_TASTATUR_8574A); _i2c_key='A';
-
Thread
einfachstmögliche Fehlerbehandlung I2C gesucht
wieder hochgeht müsste reichen. > > Darum geht es nicht. Angenommen Du machst ein Reset während ein PCF8574 > gerade gelesen wird, dessen 8 Eingänge auf low liegen, d.h. der zieht > SDA 8 SCL-Takte lang auf low. ich sehe grad das "Problem" nicht, wer soll denn nun abstürzen? der PCF8574 oder der Atmel? Wenn ich feststellen würde der PCF8574 hängt sich auf (was ich noch NIE sah) würde ich den PCF8574 resetten, d.h. den seine VCC an einen Atmel Port hängen und toggeln dann sollte der PCF8574 wieder resettet sein.
-
Thread
ATtiny85 - bei 3.5kB ist Schluss
0b00111, 0b00010, 0b00110, 0b00000, 0b00110, 0b00100, 0b00110 }; // Buttons & PCF8574 0x20 byte PCF0_ADDR = 0x20; byte b_left = 0b10000000; // 128 byte b_right = 0b01000000; // 64 byte b_up = 0b00100000; // 32 byte b_down = 0b00010000; // 16 byte
0b00111, 0b00010, 0b00110, 0b00000, 0b00110, 0b00100, 0b00110 }; // Buttons & PCF8574 0x20 byte PCF0_ADDR = 0x20; byte b_left = 0b10000000; // 128 byte b_right = 0b01000000; // 64 byte b_up = 0b00100000; // 32 byte b_down = 0b00010000; // 16 byte
-
Thread
TWI-Master für ATMEGA in C (ohne TWI-Start/Stop, ACK/NACK)
Ergänzungen vornehmen - und die Arbeit läuft fast von selbst. Als Beispiel: Um ein "0x55" an einen PCF8574 mit der TWI-Adresse "0x40" zu senden: twi_buffer[0] = 0x40; twi_buffer[1] = 0x55; TWI_MA_write(twi_buffer, 2); Um den Status des PCF8574 anschließend zur Kontrolle wieder auszulesen:
aus Sicht des Anwenders identisch mit dem des TWI-Masters. Als Beispiel: Um ein "0x55" an einen PCF8574 mit der TWI-Adresse "0x40" zu senden: twi_buffer[0] = 0x40; twi_buffer[1] = 0x55; USI_MA_write(twi_buffer, 2); Um den Status des PCF8574 anschließend zur Kontrolle wieder auszulesen:
-
Thread
Oled Display Arduino Zeilen fehlen
Philipp K. schrieb im Beitrag #4140620: > naja du brauchst ja dann eher eine Lib die dann über den PCF8574 > indirekt anfährt oder klappt das auch schon alleine? > > Welches OLED ? > > U8G -> i2c -> ssd1306 ? > U8G -> i2c -> PCF8574 -> SSD1306 ? also noch mal RTC3231 + AT24C32 EEPROM und
arduino ohne weiteres funktioniert U8G -> i2c -> ssd1306 ! am PCF8574 hängen nur Tasten und ich frage auch nur in ab Tasten eben. und wenn ich PCF8574 abklemme gehts, ergo muss es ein Problem mit U8G sein der den PCF8574 als LCD Treiber identifiziert?
-
Thread
LCD Display 4x20 zu Graphik Display 128x64
Hallo LCD Displays mit 16 Pins können ja mit einem PCF8574 einfach an einen I2C Bus angeschlossen werden. Der Vergleich zu Graphik Displays ist z.B. mit den KS0180 oder andere DEM.. aber mit 20 Pins. Nach einigen Herstellerangaben soll es auch dazu Adapter
Graphikdisplays an den I2C Bus anschliessen? Mit einem IC, das ausreichend Ausgänge anbietet, z.B. PCF8475, das ist der große Bruder vom PCF8574 mit 16 Bit. > Esibt diese Displays früher mit dem KS0180 Prozessor, jetz wird der > SBN6400G verwendet. > Das Display nennt sich DEM128064. Ein Link
-
Thread
Drehencoder auswerten
nun jedoch ein Display und Drehegber über I²C bzw. TWI ansprechen. Als Portexpander nutze ich einen PCF8574. Einen vorgefertigten Code um das Display anzusprechen sowie grundlegende I²C/TWI Funktionen nutze ich von Peter fleury.(http://homepage.hispeed.ch/peterfleury/avr-software.html ) Das Display
was ich nun habe ist das sich der Drehgeber nicht auswerten lässt bzw. ich nicht weiß wie ich den PCF8574 richtig nutzen kann. Ich hatte mir das so vorgestellt das ich den PCF ganz normal abfragen kann wie eben beim Prozessor. Ansonsten gab es im restlichen Internet auch nicht wirklich viele Infos
-
Thread
PWM MSP430 an beliebigen Port
LOW werden dann als 0% und 100% PWM ausgegeben... Und wo ist da jetzt der Vorteil wenn er einen PCF8574 bereits drauf hat? Du reißt einen Digital Baustein raus, machst einen PWM Baustein rein und benutzt dann den PWM Baustein als Digitalbaustein? Also da fällt mir wenig zu ein. Es geht bergab.
für verschiedene Gräte. Also eher sowas wie Wellenpaketsteuerung. Wie gesagt: 1 Hz direkt über PCF8574 sollte locker gehen. Musst halt die SW entsprechend stricken und oft genug den I2C Zyklus fahren.