Forum: Mikrocontroller und Digitale Elektronik PCF 8574 vs attiny


von tassilo (Gast)


Lesenswert?

Hallo

Normalerweise nutze ich o.g. pcf8574 als Portexpander für meine
C-Control. jaja wieso nicht gleich was vernünftiges, aber hab mich
nunmal daran gewöhnt und ich find das Teil recht "einfach".

Nun habe ich das problem das ich für ein kleines Projekt viele
(jedenfalls mehr als die max 8*8 Stück des i2c Steins) Ports brauche
und die Kabellänge auch zu lange wird.

Meine Idee währ nun kleine avr's (attiny) per rs232 anzusprechen.
Der Attiny 26L hat z.b. 16 Ports damit sollte das doch klappen oder ?
Und es würde endlich ein einstieg in die Welt der AVR's sein.

Irgendwelche Kommentare ? Schlechte / Gute Idee ?

gruss

Tassilo

von Manfred (Gast)


Lesenswert?

Hallo,

mit RS232 kannst du nicht mehrere Empfänger ansprechen. Außer du
treibst einen gewissen Aufwand, verschiedene Baudraten,
Mulitcontrollerkommunikation (Siehe 8051).
Warum bleibst du nicht beim I²C-Bus? Prgrammiere doch deine eigenen
Portexpander.

Gruß

Manfred

von A.K. (Gast)


Lesenswert?

Mehrere Empfänger anzusprechen ist trivial. So man nur senden will.

von Dominik T. (dom) Benutzerseite


Lesenswert?

Nimm einfach ein paar Schieberegister... ist eh billiger.

von johnny.m (Gast)


Lesenswert?

Geht aber auch nur dann, wenn nur geschrieben werden soll. Sonst wirds
kompliziert.

Was imho möglich wäre (und preislich sogar noch günstiger [zumindest
bei Angelika]) wäre der Tiny2313. Der hat ein USI, mit dem es möglich
sein sollte, I²C zu implementieren. Dann brauchts noch nicht mal ein
anderes Protokoll seitens der C-Control im Vergleich zum PCF8574. Naja,
und wenn das läuft, wirst Du eh irgendwann die teure und langsame
C-Control direkt durch einen AVR ersetzen...;-)

von one (Gast)


Lesenswert?

Hallo,
ich schreib grad so einen Portexpander für den Atmega325 (hat bisschen
mehr Ports). Das Projekt ist in der Warteschlange (fange sobald wie
moeglich an..), wenn du nicht weiterkommst kann ich dir da helfen
(werde auch das USI verwenden)

one

von Oliver _. (verleihnix)


Lesenswert?

Moin tassilo,

wieso nur 8x8 ? Nimm noch 8x PCF8574P und 8x PCF8574AP, der hat eine
andere Anfangsadresse, macht also 16x 8 Pins, reicht das auch nicht ?
Ist natürlich ein IC Grab :-)

mfg
Oliver

von tassilo (Gast)


Lesenswert?

Hallo

Danke erst mal für die Antworten.

@Manfred : Ja da hast du Recht, aber ich dachte das jeder
"Portexpander" ne eigene rs232 bekommt. Überleg grad ob rs485 sinn
macht. Wieso ich nicht bei i2c bleibe ist die kabellänge von 2m was bei
geplanten 16 Expandern dann ja bei 32m liegt und da denke ich mal macht
i2c schlapp.
Ne rs232 hab ich scho mal mit nem 40m Kabel betrieben (2400 baud).
Auch wird ja bei der rs232 nid alle an einem Kabel betrieben.

@A.K. ja ich will -theoretisch- nur senden.

@Dominik Tewiele : hmm das ist auch eine Idee, an das habe ich gar
nicht gedacht.

@johnny.m: Auch eine gute Idee leider halt das problem mit der
Kabellänge. Werde mir aber mal das Datenblatt angucken.

@one : danke auf dein Angebot komm ich gerne bei bedarf (hab ich
sicher) zurück.

@Oliver M. : ja, aber dann gibts noch das problem mit der Kabellänge
wie ich ja auch geschrieben hab.

danke nochmals an alle und gute nacht

Tassilo

von DL4MCV (Gast)


Lesenswert?

Kann sich keiner mehr an den 82c55 erinnern? Der hat 24 I/O's, die man
in verschiedenen Modi betreiben kann.

Wenn's nur um Ausgänge geht, würde ich Schieberegister verwenden.

von tassilo (Gast)


Lesenswert?

Hallo

Der 8255 ist schon ein bischen betagt und auch -im Verhältniss- recht
teuer. (zumindest bei reichelt)

Tassilo

von DL4MCV (Gast)


Lesenswert?

Betagt, aber bewährt. Und preiswerter als 8x PCF8574P und 8x PCF8574AP
allemal.

von tassilo (Gast)


Lesenswert?

Hallo

Hmm grad mal bei Reichelt geguckt da kostet er 2,10 Euro.. das ist ja
nicht mal so viel und ja viel billiger als 8*PCF8574P (etc).. hatte da
doch was von 7 oder 8 euro im kopf. Vielleicht liegts ja an der
vortgeschrittenen Stunde.

Da stellt sich mir gerade die Frage wie lang kann eigentlich die
Verbindung von z.b. Attiny-Portpin (oder 82c55) und dem zu schaltenten
sein (z.b. Relais) ?

gruss

Tassilo

von Egon (Gast)


Lesenswert?

"Und es würde endlich ein einstieg in die Welt der AVR's sein."

Für Deine Anforderung wäre das ein guter Einstieg; nicht zu einfach und
nicht zu schwierig. Über RS232 ist alles kein Problem: ein Sender -
mehrere Empfänger - größere Entfernungen (bei Bedarf) und funktionale
Erweiterbarkeit.
Würde ich so machen !

von Manfred (Gast)


Lesenswert?

Hallo,

das Problem mit der Leitungslänge beim I²C-Bus bekommst du mit einem
Treiber 82B715 in den Griff.

Gruß Manfred

von Tim O. (Gast)


Lesenswert?

Moin ..

bedenkt kurz beim 8255, das der bei jedem Umschalten
der I/O-Richtung alle seine Register auf 0 setzt.
Wenn man also die ersten 8 Ports auf Ausgabe hat und
dann die nächsten 8 Ports von Ausgabe nach Eingabe
schaltet, stehen die ersten 8 Ports (und alle anderen)
bei 0 - egal was vorher war.
Das Verhalten wird im Datenblatt nicht ganz so prominent
dargestellt, ich persönlich habs aus dem eigentlich
recht bekannten ide.txt (Beschreibung 8 Bit Controller
an IDE-Festplatte) ..

Je nachdem, was für Anwendungen man bastelt, muss man das
beim 8255 einfach bedenken..

So long,
Tim

von Peter D. (peda)


Lesenswert?

"Je nachdem, was für Anwendungen man bastelt, muss man das beim 8255
einfach bedenken.."


Ich würde beim 8255 garnichts bedenken, er ist schlichtweg zu alt und
zu groß und zu teuer, um überhaupt noch einen Gedanken daran zu
verschwenden.

Außerdem ist ja hier von 32m Kabellänge die Rede, da verbieten sich eh
parallele Datenbusse, ganz abgesehen von den Kabelkosten.


Ein MC ist durchaus nicht abwegig, der kann nebenbei auch noch
Fehlererkennung machen (CRC-check). Bei langen Leitungen streut sich ja
gerne mal was ein (Staubsauger, Bohrmaschine nebens Kabel halten).

RS-485 mit differentieller Leitung ist sehr störsicher.
Will man sich den RS-485 Empfangs-IC sparen, nimmt man einfach den
internen Analog-Komparator mit SW-UART.


Peter

von tassilo (Gast)


Lesenswert?

Hallo

@Egon : sehe ich auch so :))

@Manfred : hmm den 82B715 kannte ich gar nicht, ist aber auch ein
bischen teuer da ich ja immer 2 pro "station" brauch. Ich werd mir
den aber auch mal genauer ansehen da ich das bestimmt später mal wo
anders brauchen kann..

gruss

tassilo

von Jadeclaw D. (jadeclaw)


Lesenswert?

Warum eigentlich nicht ein Paar ATMega8515 oder ATMega128 dafür
verwenden? Ein 8515 hat 35 I/O-Leitungen, ein ATMega128 sogar 53
Leitungen. Dazu kommt, jeder I/O kann 20mA, man darf nur das Maximum
pro Chip von 200mA nicht überschreiten. Ein 8515 kostet derzeit beim
Reichelt 1.95 und ist damit billiger als ein PCF8574. Auf den einzelnen
I/O-Pin umgerechnet ist der PCF 5 mal teurer.

Gruss
Jadeclaw.

von tassilo (Gast)


Lesenswert?

Hi

die idee ist auch gut, nur brauch ich pro station nur 8 io's insofern
isses ja egal ob 35 oder 53 oder noch mehr leitungen.

geht vielleicht ein bischen vom thema vorbei aber kann man mit dem 8515
auch mehr ram ansprechen als in dem chip ist ? naja mal das datenblatt
zurate ziehen.

gruss

Tassilo

von Jadeclaw D. (jadeclaw)


Lesenswert?

In dem Falle reichen Attiny2313. Mit 1.25 immer noch billiger als der
PCF.
ATMega8515 kann bis 64kB externes Ram ansprechen.

Gruss
Jadeclaw.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.