-
Thread
LCD an I²C per IO-Expander
Hallo! Ich mochte mein LCD an einen IO-Expander (TI PCF8574) hängen, jedoch weiß ich nicht, wie ich die Library (von P. Fleury) umschreiben muss, damit das geht. Falls das jemand schon gemacht hat kann er mir bitte den C source posten - Danke! gruß,
downloaden. wolfgang back (vom wdr computer club) hat sowas auch auf seiner hp veröffentlicht. have a lot of fun, alex
-
Thread
2 AVRs über I2C verbinden?
BASCOM-Leute sind jedoch einige bug's bereinigt worden; Ich hab's soeben ausprobiert (für einen PCF8574): M162 als Master mit den bekannten BASCOM-Statements I2CSTART, I2CWRBYTE, etc. 2313 als Slave mit den zusätzlichen I2C-Routinen von BASCOM Es funktioniert ... Die EUR 4,95 lohnen sich m.E
TWIE); } /** Behandelt die INT's des TWI */ SIGNAL(SIG_2WIRE_SERIAL) { if(TWSR==0xA8) { TWDR=i2c_pwmf; TWCR=(1<<TWEN)|(1<<TWINT)|(1<<TWEA)|(1<<TWIE); } else if((TWSR==0xB8)||(TWSR==0xB0)) { TWDR=i2c_speed; TWCR=(1<<TWEN)|(1<<TWINT)|(1<<TWIE); }
-
Thread
Mehr digitale Ports
Ja gibt es: pcf8574A (8 I/O's) bzw. pcf8574AP (8 IO's) es können von beiden Bausteien jeweils 8 Devices angschlossen werden Datenblatt besorgen und loslegen Günter
Hi, PCF8574 = 8 Pins in/out PCF8575 = 16 Pins in/out Die Dinger sind sau teuer, da kann man schon ueberlegen sich nen paar 4433 zukaufen und diese per I2C einzubinden. Mfg Dirk
-
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
PCF8574 8Bit I/O Expander
Adresse bei I2C ist 7 Bittig (xxxxxxx) und besteht aus nem Festen Teil und einem Variablen. Beim 8574 ist das also 0100xxx wobei die drei "x" den Adressleitungen A0-A2 entsprechen. Am Ende kommt noch das 8. Bit was dann angibt ob mal Lesen oder Schreiben will (R/W) Ergibt also beim 8574 einen
ja das R/W-Bit eigentlich nicht zur Adresse gehöhrt sind es also 8 Mögliche Adressen so das man 8 8574er mit unterschidlichen Adressen an einem Bus betreiben kann. Wer mehr braucht der greift zum 8574A. Das ist der Selbe Chip nur das der Feste Adressteil auf 0111 steht was dann nochmal 8 Chips
-
Thread
Suche getestetes ADC + UART Programm für 4433
Hallo, weil ich erhebliche Probleme mit den 6 A/D-Wandlern im 4433 habe, möchte ich hier eine Anfrage machen. Ich bräuchte ein garantiert, auf einen AVR 4433 getestetes Programm was 2 oder mehr Wandler abfragt und mir den Wert über UART ausgibt. Ich
Programmiere. Habe auch schon die UART Routinen gegen LCD ausgetauscht. Habe als Anzeige auch schon PCF8574 benutzt. Alles funktioniert solange ich nur einen Wandler, egal welchen abfrage. Bei 2 oder mehr kein Wandlerwert mehr. Hoffentlich kann mir jemand helfen. Ich benutze avr-gcc 3.3 oder tavrasm,
-
Thread
AVR-Controller Eignung
mal nen Eindruck bekomme welche Befehle mir da zur verfügung stehen.) Bei der CC1 hab ich mit nem PCF8574 (8-Bit Port einfach mit LED's dahinter)ne einfache Schleife volzogen. hie mal der Wesentliche Teil. ------------------ for N = 0 to 255 step 1 gosub I2C_INIT SCHREIBEN = 64 gosub I2C_START
Hi I2C ist auf dem AVR durch den BUS und nicht durch den AVBR begrenzt. Der PCF8574 sollte sich also mit maximaler Geschwindigkeit (100kHz) ansteuern lassen. Damit lassen sich dann grob über den Daumen 5000 Ausgaben pro Sekunde realisieren. Matthias
-
Thread
Probleme mit lesen von EEPROM auf IIC BUS
jürgen! Ich hab mal unten kommentiert. Hatte auch lang Probleme mit manchen Bedingungen im I2C-Bus (PCF 8574 und m242456-32KByte EERPOM benötigen unterschiedliches Master-ACK). Wenns nicht weiter hilft, dann schau mal nochmal ins Datenblatt und in die I2C-Bus-Spezifikation von Philips. #Start Bedingung
> falsch: SCL auf High, Bit von SDA einlesen (mov c,SDA), SCL wieder LOW. C (carry) sichern (rlc a). Das ganze acht mal. #Nach 8 x TAKTEN kommt ein NO ACK vom MAster. > OK #Stop Bedingung > OK Oder mail mich mal an, habe fertige I2c-Routinen abgestimmt auf 100 KHz Busfrequenz mit 8051.
-
Thread
Hab mal ein Bild von meinem Testboard gemacht
die sich das selbst zusammen, also wählen einen Core und die benötigte Peripherie wie UART, PWM, D/A, A/D-Wandler, erweiterte Adressierung, etc. selbst aus. Das ist dann ein Teil, wie man es nicht im Laden bekommt. Atmel bietet so etwas halt nicht.
ich mit I2C Arbeite. Die kleinen Baragraph bzw. die Relaisplatinen oder LCD usw. bekommen noch nen PCF 8574 dazugesteckt. So kann ich das alles auslagern und belege nur 5 Pinne. Das ganze ist nur eine Möglichkeit. Jeder baut sich da sein eigenes System zusammen. Die Beispiele hier sollen nur
-
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
Tasten entprellen - Bulletproof
() ? als I2C Lib nutze ich die von Peter Fleury könnte dafür etwas Erkennungscode für PCF8574 (0x40) oder PCF8574A beisteuern (0x70), hat mich einen halben Tag Fehlersuche gekostet, ich dachte der Unterschied ist N zu AP aber auch N mit A ist 0x70 und dann wieder das richtiige Datenblatt
, ich war unsicher wegen CLI() und SEI() , klappt aber fein: if(_i2c_key) { if(_i2c_key=='A') { if(!i2c_start(PCF8574A_0+I2C_READ)) //; // set device address and write mode i = key_state ^ ( ( ~(unsigned char)i2c_readNak() << 1) ); } else { if(!i2c_start(PCF8574
-
Thread
PCF8547A
8547, bist Du Dir sicher? Finde ich bei Philips nichts. Einen PCF8574 habe ich, allerdings habe ich jetzt aus dem Stegreif nichts da für Software-I²C, ich habe das bislang nur mit Hardware-I²C auf'm ATmega128 probiert.
Sorry das war ein Zahlendreher. es handelt sich um denn PCF8574A. aber es geht immer noch nicht.
-
Thread
Tips für i2c?
PCF 8574 oder PCF 8574A
Sensoren sind an Telefonkabel 8 x 0,6 mm auf ca. 5 Meter angeschlossen. Zur Porterweiterung kann der PCF 8574 genutz werden. Achtung Lowaktiver Ausgang an dem LEDs direkt angeschlossen werden können (30 mA Ausgangsstrom). Es gibt den PCF 8574 und PCF 8574 A somit hat man an einem Bus 128 Ein- bzw. Ausgänge
-
Thread
Microcontrollerboard mit 16Bit-Controller
Out. Es gibt ja I2C, SPI und Konsorten, womit man bequem beliebige IO-Erweiterungen machen kann (PCF8574, 74HC595, 74HC165). Auch geht der Trend weg von einem Zentral-MC hin zu mehreren kleinen. Ein MC mit internem Flash ist bedeutend unempfindlicher bezüglich EMV und daher leichter zu zertifizieren
ist, haut doch vielfach nicht mehr hin. Wenn man eine Filterung (gleitender Mittelwert) von 16 Bit A/D-Werten braucht, muß man long-Variablen (32 Bit) verwenden - bei Skalierungen/Umrechnungen z.B. mm->inch oder kPa->psi oder 'printf' ebenso. Schnelle A/D-Samples kann ein DMA-Controller im Hintergrund
-
Thread
PCF 8574 + Treiberbaustein
Datenwort reingeschrieben hat, werden die Ausgänge enabled. Die sind auch wesentlich billiger als die PCF8574 und die Anzahl ist nicht auf 8 begrenzt. Es gibt dann noch den TPIC6B595N (z.B. Segor), der hat die Leistungsstufen gleich mit drin (50V / 0,5A). Peter
Du ja 2 Leitungen gemeinsam verwenden, d.h. Du brauchst nur noch 1 zusätzlich. Wenns aber der PCF8574 sein muß, nimm doch als Treiber den 74LS07, der ist nicht invertierend. Peter
-
Thread
Leistungsschalter für MC
Hallo, suche nach einem Leistungsschalter für AVR-Mikrocontroller. Ich möchte 12V= /ca.0,5-2 A schalten. Ein ULN-Treiber fällt aus weil ich nicht gegen GND schalten kann. Wer hat Erfahrung mit MOSFET oder Treiber-ICS (L293D). Die Schaltung sollte so einfach wie möglich sein.
Logigbaustein ersetzen (siehe Zeichnung). Weil mein AVR schon ziemlich voll ist möchte ich einen PCF8574 I/O-Baustein verwenden.
-
Thread
8255 - wie programmieren
Hallo, oder Du benutzt die I2C Schnittstelle der AVR's und pro 8 I/O Leitungen einen PCF8574 (kostet 2 Pins SLC/SDA). Da der PCF8574 auch noch einen INT-Ausgang hat kannst Du bei Eingangsänderungen einen Interrupt am AVR auslösen. Gruß Jörg
; ********************** Initialisierung *********************************** init: mvi a,80h ; 8255/1 in Betriebsart 0, alle Ports Ausgaenge out str1 ; Port A und C fuer LCD, Port B fuer Tastatur mvi a,83h ; 8255/2 Port A, obere 4
-
Thread
I/O Erweiterung
Eine Möglichkeit wäre auch noch ein PCF8574. Es gibt auch eine Variante mit 16 Bit, aber die Nummer fällt mir gerade nicht ein. Wenn Du willst kann ich mal schauen, aber den 16 Bitter gibt es nur in SMD
, von der Standard 4000-Serie würde ich abraten: 1. Die können nicht so viel Strom (nur 0,51mA statt 4mA) 2. Die sind langsamer (1,25MHz), da muß ein ATtiny26 bei 16MHz schon ne Menge NOPs einfügen, um soweit runter zu kommen Den 4094 gibt es aber auch als 74HC4094, dann ist er auch zu gebrauchen
-
Thread
I/O-Port-Erweiterung
Hallo, arbeite doch einfach mit einem I2C-System, z.B. PCF 8574, mit 2 leitungen bis zu 90 E/A-Ports. Gruss Alexander
-
Thread
I/O Pins benoetigt
Hi, schon mal an I2C-Bus gedacht? Da gibt es z.B. eine 8bit Porterweiterung (PCF8574) oder 16bit (PCF8575). Die Bits lassen sich einzeln als Ein- oder Ausgang verwenden.... Müsste es auch bei Reichelt geben. Bis dann, Ingo.
und Richtungen aufschreiben, evtl. laesst sich da doch noch einiges einsparen. @Ingo: Danke, den PCF8574 habe ich bei Reichelt gefunden, den PCF8575 leider nicht. Ich werde mir mal das Datenblatt durchlesen --- das scheint mir bisher aber die geschickteste Loesung zu sein. Zumal ich zur I2C Ansteuerung
-
Thread
Compiler-Fehler?
t minor; }; struct dirs dir[NO_DIRE] = { { "tty" , 0, 0 }, // UART 0 { "ram" , 1, 0 }, // PCF8570, address 0 { "par1", 2, 0 }, // PCF8574, address 0 { "par2", 2, 1 }, // PCF8574, address 1 { "ad0" , 3, 0 }, // PCF8591, address 0, 1. A/D-converter { "ad1" , 3, 1 }, // PCF8591, address 0, 2. A/D-converter { "ad2" , 3, 2 }, // PCF8591, address 0, 3. A/D-converter { "ad3" , 3, 3 }, // PCF8591, address 0, 4. A/D-converter { "da0" , 3,32 }, // PCF8591, address 0, D/A-converter };
-
Thread
kostenlose muster
Das mit Maxim is gut, ich brauch eh gleich a paar IC's...aber ich kann das Formular auf der HP nirgens anfinden...wo finde ich das? Was heisst übrigens + eigentlich "Musterexemplar" auf englisch? niki
HI Also ich hab am samstag mal samples von ti bestellt 2xL293d und 2xPCF8574 die bausteien kammen gestern aus america alle gehäuse richtig ich muss schon sagen absulute spitze :) auf jeden fall ein tip. cu knirps
-
Thread
maximale unabhängige Ausgänge
68HC68 P1E verwenden, der hat die SPI üblichen Bezeichnungen. Ist ein SPI-8bit Port kann aber nur 10 mA treiben. Gruß Holger
Hi, oder wie wäre es mit einer I2C-Porterweiterung (PCF 8574P bzw. AP). Damit hast Du pro Baustein je 8 Ein-/Ausgänge. Man kann leicht kleine Module bauen, die direkt neben den Verbrauchern plaziert werden können. Als Verbindung ist nur der 2-Draht-Bus