eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › SPI vs I2C
Ilość wypowiedzi w tym wątku: 19

  • 1. Data: 2023-01-15 22:57:42
    Temat: SPI vs I2C
    Od: Robert Wańkowski <r...@w...pl>

    Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    128x128? SPI czy I2C.
    Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    akcelerometru.
    Z wymagać tylko tyle. Jeden kolor.
    I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    elastyczna "gęsia szyjka")?

    Robert




  • 2. Data: 2023-01-16 08:54:17
    Temat: Re: SPI vs I2C
    Od: Dawid Rutkowski <d...@w...pl>

    niedziela, 15 stycznia 2023 o 22:57:45 UTC+1 r...@g...com napisał(a):
    > Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    > 128x128? SPI czy I2C.
    > Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    > płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    > akcelerometru.
    > Z wymagać tylko tyle. Jeden kolor.
    > I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    > przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    > elastyczna "gęsia szyjka")?

    Jak tak wąsko to im mniej przewodów tym lepiej, więc I2C.
    Ale to tylko dwa zamiast 4 cieniutkich, a i tak grubsze potrzebne do zasilania -
    minimum 2, a może i 3 lub 4, jeśli podświetlenie osobno.

    Hmm, pasek postępu 128*128? Szeroki będzie ;>


  • 3. Data: 2023-01-16 09:14:59
    Temat: Re: SPI vs I2C
    Od: Janusz <j...@o...pl>

    W dniu 2023-01-16 o 08:54, Dawid Rutkowski pisze:
    > niedziela, 15 stycznia 2023 o 22:57:45 UTC+1 r...@g...com napisał(a):
    >> Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    >> 128x128? SPI czy I2C.
    >> Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    >> płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    >> akcelerometru.
    >> Z wymagać tylko tyle. Jeden kolor.
    >> I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    >> przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    >> elastyczna "gęsia szyjka")?
    >
    > Jak tak wąsko to im mniej przewodów tym lepiej, więc I2C.
    Przecież SPI i I2C to tyle samo przewodów, dane+zegar+masa.
    SPI jest lepsze bo szybsze ale nie ma adresowania.

    --
    Janusz


  • 4. Data: 2023-01-16 10:56:41
    Temat: Re: SPI vs I2C
    Od: Dawid Rutkowski <d...@w...pl>

    poniedziałek, 16 stycznia 2023 o 09:17:08 UTC+1 Janusz napisał(a):
    > W dniu 2023-01-16 o 08:54, Dawid Rutkowski pisze:
    > > niedziela, 15 stycznia 2023 o 22:57:45 UTC+1 r...@g...com napisał(a):
    > >> Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    > >> 128x128? SPI czy I2C.
    > >> Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    > >> płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    > >> akcelerometru.
    > >> Z wymagać tylko tyle. Jeden kolor.
    > >> I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    > >> przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    > >> elastyczna "gęsia szyjka")?
    > >
    > > Jak tak wąsko to im mniej przewodów tym lepiej, więc I2C.
    > Przecież SPI i I2C to tyle samo przewodów, dane+zegar+masa.
    > SPI jest lepsze bo szybsze ale nie ma adresowania.

    To zależy jakie SPI - w najbardziej podstawowym są jednak cztery.
    No jak transmisja jednostronna to jeden odpada.
    Albo są wersje z dwukierunkowym pinem danych.
    Oraz drugi podzbiór bez chip select,
    ale wg mnie to kiszka jest, bo nie ma żadnego ramkowania (ani bajtu ani ramki) -
    zgubisz jeden
    takt zegara i cała transmisja zdycha aż do resetu.


  • 5. Data: 2023-01-16 11:33:05
    Temat: Re: SPI vs I2C
    Od: Janusz <j...@o...pl>

    W dniu 2023-01-16 o 10:56, Dawid Rutkowski pisze:
    > poniedziałek, 16 stycznia 2023 o 09:17:08 UTC+1 Janusz napisał(a):
    >> W dniu 2023-01-16 o 08:54, Dawid Rutkowski pisze:
    >>> niedziela, 15 stycznia 2023 o 22:57:45 UTC+1 r...@g...com napisał(a):
    >>>> Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    >>>> 128x128? SPI czy I2C.
    >>>> Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    >>>> płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    >>>> akcelerometru.
    >>>> Z wymagać tylko tyle. Jeden kolor.
    >>>> I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    >>>> przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    >>>> elastyczna "gęsia szyjka")?
    >>>
    >>> Jak tak wąsko to im mniej przewodów tym lepiej, więc I2C.
    >> Przecież SPI i I2C to tyle samo przewodów, dane+zegar+masa.
    >> SPI jest lepsze bo szybsze ale nie ma adresowania.
    >
    > To zależy jakie SPI - w najbardziej podstawowym są jednak cztery.
    > No jak transmisja jednostronna to jeden odpada.
    > Albo są wersje z dwukierunkowym pinem danych.
    > Oraz drugi podzbiór bez chip select,
    > ale wg mnie to kiszka jest, bo nie ma żadnego ramkowania (ani bajtu ani ramki) -
    zgubisz jeden
    > takt zegara i cała transmisja zdycha aż do resetu.
    Wszystko prawda, ale przy sprzętowej transmisji trudno zgubić takt, poza
    tym zawsze można dodać ten jeden drut reset, a przewaga SPI nad I2C
    szczególnie przy wyświetlaczu graficznym jest oczywista.

    --
    Janusz


  • 6. Data: 2023-01-16 11:56:06
    Temat: Re: SPI vs I2C
    Od: Robert Wańkowski <r...@w...pl>

    W dniu 2023-01-16 o 10:56, Dawid Rutkowski pisze:
    > To zależy jakie SPI

    Ten z racji kształtu i rozmiarów jest ok.
    https://allegro.pl/oferta/okragly-wyswietlacz-tft-ip
    s-1-28-240x240-spi-12709902746

    Nawet ma większą rozdzielczość.

    Ile minimalnie żył będzie wymagał do połączenia z Arduino?
    4 kynary 0,65 mm powinny dać się przewlec przez fi 1,8 mm.
    A gdyby nie, to nawojowy to zły pomysł?

    Robert


  • 7. Data: 2023-01-16 12:06:51
    Temat: Re: SPI vs I2C
    Od: Dawid Rutkowski <d...@w...pl>

    poniedziałek, 16 stycznia 2023 o 11:56:08 UTC+1 r...@g...com napisał(a):
    > W dniu 2023-01-16 o 10:56, Dawid Rutkowski pisze:
    > > To zależy jakie SPI
    >
    > Ten z racji kształtu i rozmiarów jest ok.
    > https://allegro.pl/oferta/okragly-wyswietlacz-tft-ip
    s-1-28-240x240-spi-12709902746
    >
    > Nawet ma większą rozdzielczość.
    >
    > Ile minimalnie żył będzie wymagał do połączenia z Arduino?
    > 4 kynary 0,65 mm powinny dać się przewlec przez fi 1,8 mm.
    > A gdyby nie, to nawojowy to zły pomysł?

    Ten wymaga 7, w tym dwa grubsze.
    Wątpię, czy radę zasilić kynarkiem - ale możesz spróbować, najwyżej się stopi.

    Kupiłem jakiś czas temu podobny (ale lepszy, ma jeszcze mniejszą płytkę i dodatkowo
    sterowanie jasnością podświetlenia, choć nieco droższy), ale nawet nie zdążyłem
    uruchomić.
    Nie będę pisał, gdzie, kupiłem, bo i tak teraz nie ma.


  • 8. Data: 2023-01-16 12:11:51
    Temat: Re: SPI vs I2C
    Od: Dawid Rutkowski <d...@w...pl>

    poniedziałek, 16 stycznia 2023 o 11:33:08 UTC+1 Janusz napisał(a):
    > W dniu 2023-01-16 o 10:56, Dawid Rutkowski pisze:
    > > poniedziałek, 16 stycznia 2023 o 09:17:08 UTC+1 Janusz napisał(a):
    > >> W dniu 2023-01-16 o 08:54, Dawid Rutkowski pisze:
    > >>> niedziela, 15 stycznia 2023 o 22:57:45 UTC+1 r...@g...com napisał(a):
    > >>>> Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    > >>>> 128x128? SPI czy I2C.
    > >>>> Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    > >>>> płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    > >>>> akcelerometru.
    > >>>> Z wymagać tylko tyle. Jeden kolor.
    > >>>> I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    > >>>> przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    > >>>> elastyczna "gęsia szyjka")?
    > >>>
    > >>> Jak tak wąsko to im mniej przewodów tym lepiej, więc I2C.
    > >> Przecież SPI i I2C to tyle samo przewodów, dane+zegar+masa.
    > >> SPI jest lepsze bo szybsze ale nie ma adresowania.
    > >
    > > To zależy jakie SPI - w najbardziej podstawowym są jednak cztery.
    > > No jak transmisja jednostronna to jeden odpada.
    > > Albo są wersje z dwukierunkowym pinem danych.
    > > Oraz drugi podzbiór bez chip select,
    > > ale wg mnie to kiszka jest, bo nie ma żadnego ramkowania (ani bajtu ani ramki) -
    zgubisz jeden
    > > takt zegara i cała transmisja zdycha aż do resetu.
    > Wszystko prawda, ale przy sprzętowej transmisji trudno zgubić takt, poza
    > tym zawsze można dodać ten jeden drut reset, a przewaga SPI nad I2C
    > szczególnie przy wyświetlaczu graficznym jest oczywista.

    No i kiedy masz zamiar robić ten reset, szczególnie jeśli transmisja danych
    jednostronna?
    Jakby jeszcze ten reset nie czyścił pamięci ekranu - ale czasem czyści, a już na
    pewno czyści
    rejestry sterownika, a bez ich ustawienia nawet prawidłowa zawartość pamięci się
    dobrze nie wyświetli.

    Zaś im szybsza transmisja tym większa szansa zgubienia czegoś, choćby przez
    zakłócenia.
    Kolega ćwiczył FT810 w klawiaturach do domofonów - polegli na transmisji, co prawda
    w warunkach dość zimowych, ale jednak się nie nadawało, mimo że na biurku tak ładnie
    działało - bo sam chip wygląda zacnie i bardzo ułatwia.


  • 9. Data: 2023-01-16 13:51:55
    Temat: Re: SPI vs I2C
    Od: Adam Górski <gorskiamalpawpkropkapl@xx>

    >>> Nie wiem czym ma znaczenie, który protokół będzie obsługiwał wyświetlacz
    >>> 128x128? SPI czy I2C.
    >>> Chcę to podłączyć do Arduino. Wyświetlacz graficzny, ma wyświetlać
    >>> płynnie coś w rodzaju paska postępu, ale nadążającego za wskazaniami z
    >>> akcelerometru.
    >>> Z wymagać tylko tyle. Jeden kolor.
    >>> I jeszcze czy da się domowym sposobem podłączyć ten wyświetlacz
    >>> przewodami, które przejdą przez rurkę fi wewnętrzne 1,8 mm (taka
    >>> elastyczna "gęsia szyjka")?
    >>
    >> Jak tak wąsko to im mniej przewodów tym lepiej, więc I2C.
    > Przecież SPI i I2C to tyle samo przewodów, dane+zegar+masa.
    > SPI jest lepsze bo szybsze ale nie ma adresowania.
    >

    Opowiadasz głupoty.
    Dane + zegar to nie jest SPI. To dane + zegar.

    SPI jest fajny ale to 4 przewody sygnałowe + 2 zasilania + może coś
    jeszcze vendor specyfic.

    Mniej jak I2C + zasilanie czyli 4 przewody nie zrobisz w łatwy sposób.

    Czy muszą być grube przewody ? To zależy ile wyświetlacz prądu pobiera.

    Np taki :
    https://kamami.pl/wyswietlacze-oled-graficzne/572241
    -1-5-inch-oled-module-128-x-128-wyswietlacz-oled.htm
    l

    Który ma I2C i SPI pobiera max 0.5W co przekłada się na max 0.15A przy
    wszystkich pikselach włączonych. Wg dokumentacji.

    Powyższy wyświetlacz ma niestety dodatkowe sygnały D/C czyli
    Data/Command i Reset. Można to jednak rozwiązać stosując I2C expander
    PCF8574. Czyli nadal mamy 4 przewody. Przewaga I2C.

    Stosując np 4 x przewód

    1806-BK005 z oferty tme o średnicy miedzi 28AWG i całkowitej średnicy
    0.6mm , drut o rezystancji
    65 ohm / 1000ft czyli ok 0.2 ohm / metr
    Czyli spadek napięcia przy max obciążeniu w okolicy 60mV/metr.

    Zasilanie spokojnie może się wachać 3.2-3.3V przy 1m przewodach.

    Układamy go 2 x 2 co daje 1.2mm x 1.2 mm

    Potrzebujemy zatem otworu o średnicy 1.697mm.

    Jest to zatem w miarę łatwo wykonalne z I2C czego nie da się powiedzieć
    o SPI.

    Tanio nie jest, ale działać będzie. Zawsze możesz poszukać tańszego
    przewodu lub wyświetlacza co mniej prądu ciągnie.

    To tylko przykład.

    SPI jest szybszy, łatwiejszy w programowaniu, bardziej odporny na błędy
    ( czasem na I2C zdarzy się ,że slave trzyma SDA i trzeba umieć wyjść z
    tego stanu ).

    W tym przypadku mam SPI:DIN+CLK+CS+DC+VCC+GND+RST vs
    I2C: SDA+SCL+GND+VCC.
    Dodatkowo w tym przypadku SPI nie dostanie potwierdzenia odebrania
    danych. Nie ma danych wracających. I2C ma w protokole ACK i z założenia
    jest dwukierunkowy.

    SPI jest w tym wypadku pewnie 10 - 20 razy szybszy ( zależnie od
    długości przewodów ).
    Tylko niekoniecznie jest to potrzebne.

    Pozdrawiam

    Adam Górski


  • 10. Data: 2023-01-16 14:42:56
    Temat: Re: SPI vs I2C
    Od: Robert Wańkowski <r...@w...pl>

    W dniu 2023-01-16 o 13:51, Adam Górski pisze:

    > Dane + zegar to nie jest SPI. To dane + zegar.
    >
    > SPI jest fajny ale to 4 przewody sygnałowe + 2 zasilania + może coś
    jeszcze vendor specyfic.
    >
    > Mniej jak I2C + zasilanie czyli 4 przewody nie zrobisz w łatwy sposób.

    No tak, ale ten okrągły mi sie spodobał, a nie znalazłem takiego od
    zaraz z I2C.

    https://allegro.pl/oferta/okragly-wyswietlacz-tft-ip
    s-1-28-240x240-spi-12709902746


    >
    > Czy muszą być grube przewody ? To zależy ile wyświetlacz prądu pobiera.
    >
    > Np taki :
    https://kamami.pl/wyswietlacze-oled-graficzne/572241
    -1-5-inch-oled-module-128-x-128-wyswietlacz-oled.htm
    l
    >
    > Który ma I2C i SPI pobiera max 0.5W co przekłada się na max 0.15A
    przy wszystkich pikselach włączonych. Wg dokumentacji.
    >
    > Powyższy wyświetlacz ma niestety dodatkowe sygnały D/C czyli
    Data/Command i Reset. Można to jednak rozwiązać stosując I2C expander
    PCF8574. Czyli nadal mamy 4 przewody. Przewaga I2C.

    To jeżeli sobie poradzę umożliwi zastosowanie tego wyświatlacza okrągłego.

    >
    > Stosując np 4 x przewód
    >
    > 1806-BK005 z oferty tme o średnicy miedzi 28AWG i całkowitej średnicy
    0.6mm , drut o rezystancji
    > 65 ohm / 1000ft czyli ok 0.2 ohm / metr
    > Czyli spadek napięcia przy max obciążeniu w okolicy 60mV/metr.
    >
    > Zasilanie spokojnie może się wachać 3.2-3.3V przy 1m przewodach.
    >
    > Układamy go 2 x 2 co daje 1.2mm x 1.2 mm
    >
    > Potrzebujemy zatem otworu o średnicy 1.697mm.
    >
    > Jest to zatem w miarę łatwo wykonalne z I2C czego nie da się
    powiedzieć o SPI.
    >
    > Tanio nie jest, ale działać będzie. Zawsze możesz poszukać tańszego
    przewodu lub wyświetlacza co mniej prądu ciągnie.

    Na ten patrzę:
    https://www.tme.eu/pl/details/1032-0500-44/druty-naw
    ojowe/synflex/1032-0500-44/

    Odległość wyświetlacza od Arduino to 0,3 m (czyli 0,6 m).
    Tym będę się martwił później.
    Teraz chciałem wiedzieć na który protokół się zdecydować.


    >
    > To tylko przykład.
    >
    > SPI jest szybszy, łatwiejszy w programowaniu, bardziej odporny na
    błędy ( czasem na I2C zdarzy się ,że slave trzyma SDA i trzeba umieć
    wyjść z tego stanu ).
    >
    > W tym przypadku mam SPI:DIN+CLK+CS+DC+VCC+GND+RST vs
    > I2C: SDA+SCL+GND+VCC.
    > Dodatkowo w tym przypadku SPI nie dostanie potwierdzenia odebrania
    danych. Nie ma danych wracających. I2C ma w protokole ACK i z założenia
    jest dwukierunkowy.
    >
    > SPI jest w tym wypadku pewnie 10 - 20 razy szybszy ( zależnie od
    długości przewodów ).
    > Tylko niekoniecznie jest to potrzebne.

    Pewnie będę pytał dalej jak dojdzie wyświetlacz.

    Robert

strony : [ 1 ] . 2


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: