Potrzebuje wielu wyjsc w swoim projekcie i tak sobie myslalem ze moze zamiast kupowac kontroler z duza iloscia portow I/O moze istnieja uklady interfejow laczace sie przez SPI z kontrolerem i udostepniajace wiele portow. Ktos moze slyszal cos o tym? Jezeli tak to bardzo prosilbym o wskazowke ( producent, kod ) oraz ewentualnie jakiegos dystrybutora w Polsce.
Pozdrawiam Artur
Didn't find your answer? Ask the community — no account required.
A
Artur
W sumie lepsze bylaby komunikacja przez i2c, jak myslicie? czy sa takie uklady interfejsu?
Pozdrowienia Artur
D
Darek R.
Artur napisa³:
S± - PCF8574 - ale kosztuj± powy¿ej 10 z³. Mo¿e lepiej u¿yæ stary dobry
74HC164 (8-bit rejestr przesuwaj±cy, wej¶cie szeregowe, wyj¶cia równoleg³e), do kupienia w ka¿dym sklepie, w detalu poni¿ej 1 z³ za sztukê. Albo inny rejestr z wej¶ciem szeregowym i wyj¶ciami równoleg³ymi. Pod³±czenie do procka jest proste - jednym pinem szeregowo wpisujesz to co ma byæ na wyjsciach, bit po bicie, taktuj±c drugim pinem.
S
SJ
Ja uzywam tych ponizej - sa wrecz idealne (i tanie):
- CD4094 - 8 wyj¶æ
- CD4021 - 8 wej¶æ
Mozna je laczyc kaskadowo i sterowac z uC zaledwie kilkoma liniami.
SJ
M
Marcin E. Hamerla
Artur napisal(a):
To jest zly, bo drogi, pomysl. Lepiej kup 595 / 597 do realizacji I/O. Sa tanie jak barszcz.
P
Pablo C
expandery phillipsa i2c mozna zakupic w cenie do¶æ konkurencyjnej np w allegro:
formatting link
te¿ w wersji przewlekanej
formatting link
pozdrawiam PC
A
Andrzej Ekiert
Microchip produkuje taki "ekspander" portów: MCP23016 - 16 portów IO, na I2C, obudowa 28 pin.
formatting link
Pozdrawiam, Andrzej
M
Marcin E. Hamerla
Andrzej Ekiert napisal(a):
Drogi gips.
A
Andrzej Ekiert
Zalezy od ktorej strony spojrzec. Czasem nie da sie wziac wiekszego procesora (bo albo nie ma, albo wyszloby jeszcze drozej), a portow po prostu brakuje.
Czasem tez mozna sobie ulatwic czyms takim prowadzenie sciezek - na przyklad jak masz procesor po jednej stronie plytki, a na drugim koncu musisz czyms posterowac. Zamiast prowadzic 16 sciezek, prosciej puscic I2C z ekspanderem na koncu.
Pozdrowienia, Andrzej
M
Marcin E. Hamerla
Andrzej Ekiert napisal(a):
Alez ja patrze z tej samej strony. 2 kosci 595 kosztuja w sumie 82 grosze. Powiedzmy, ze 1.5 zlotego jesli sie kupuje w detalu. Linii sterujacych niewiele wiecej trzeba, bo 3.
Nie chce mi sie teraz sprawdzac jakiej wielkosci sa te kosci Microchipa, ale ekspandery Philipsa sa w obudowie WSO. 595 sa w SO.
A
Adam Dybkowski
Interfejs I2C wcale nie jest lepszy. To, ze nie wymaga chip selectu oddzielnie dla kazdego urzadzenia i ma tylko 1 linie danych (zamiast 2), okupuje znaczaco nizsza predkoscia transmisji: zegar 100/400 kHz w porownaniu do 20-30 MHz (zalezy od mozliwosci konkretnego scalaka) przy SPI.
- jesli nie masz hardwareowego portu, a mowa byla o prostym procku, to predkosc jest w sam raz na programowa realizacje,
- adresowanie zaoszczedza czas przy zmianie jednego wyjscia,
- 20MHz ... to naprawde tak szybko dziala ? I dziala czy zrodlem wiecznych klopotow ?
J.
A
Adam Dybkowski
Szybciej niz 400 kHz? OK - no to liczmy nawet i 500 kHz. Malutko. :( Z pamieci zewnetrznej odczytasz z ta predkoscia tylko 62 KB/s.
? Srednio popedzany AVR (16MHz) moze taktowac sprzetowy interfejs SPI z polowa zegara czyli 8 MHz. Jezeli chcesz zrobic SPI na piechote, bit-po-bicie, to da sie osiagnac spokojnie okolo 1 MHz.
A sprzetowy SPI maja na prawde proste procki, wiecej niz sprzetowy I2C.
Ale musisz wypchac przez I2C adres urzadzenia - a to jest znacznie wolniej niz wyzerowac jedna linie I/O.
Just try. Moge potwierdzic jednak na 100% dzialanie z zegarem 8 MHz (odczyt z pamieci DataFlash). Trzeba by sprobowac szybszym prockiem. A sygnaly smigajace z czestotliwoscia 20 MHz na odleglosc kilku cm (po PCB) to zaden problem.
IMHO I2C nie ma racji bytu w przyszlosci - z interfejsow zjadajacych mniejsza liczbe linii ale z wiekszym zasiegiem istnieje np. dallasowy
1-wire (ale trzeba sie wiecej napocic nad obsluga). A niezly szybszy interfejs o zasiegu lokalnym (kilkanascie cm) to SPI.
J
J.F.
A 1MHz ?
Co albo jest za malo, albo wystarczajaco :-)
No i podobna predkosc uzyskasz na I2C :-)
Hm, no .. ja mialem problemy z 6 MHz.
SPI nie ma racji bytu w przyszlosci, a niezly interfejs to USB 2.0 i Gigabit ethernet :-P A mniej niz 64 bitowe procki tez nie maja przyszlosci :-P
J.
A
Adam Dybkowski
:-o To dziwne, moze nieprawidlowo zaprojektowany PCB? Ja pracuje ostatnio na plytce 4-warstwowej i nie mam zadnych problemow z zakloceniami przy kilku-kilkunastu MHz.
Maksymalna predkosc transmisji zalezy tez od konkretnego scalaka, Atmel pisze ze pamieci DataFlash wyrabiaja max. 20 MHz i nie mam podstaw im nie wierzyc.
Pisalismy chyba o interfejsach lokalnych, smigajacych po PCB? Jezeli chodzi o wieksze transfery to HyperTransport bedzie jak znalazl.
J
jerry1111
Wieksze transfery na troche wieksze odleglosci, to moze LVDS? Uzywal ktos tego w praktyce? Jak to smakuje? :-)
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.