eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronika › pullup na lini CS
Ilość wypowiedzi w tym wątku: 3

  • 1. Data: 2016-05-24 23:29:32
    Temat: pullup na lini CS
    Od: Atlantis <m...@w...pl>

    Trochę głupie pytanie, ale dopiero teraz przyszło mi się nad nim
    zastanowić. ;)
    Czy pullup na linii CS interfejsu SPI koniecznie musi być zewnętrzny? W
    przypadku AVR-ów odpowiedziałbym bez wahania, że tak. Jednak tam jedyny
    (przynajmniej w przypadku znacznej części układów) interfejs SPI był
    dzielony z ISP do programowania układu. Istniało więc niebezpieczeństwo,
    że stan nieustalony na linii CS spowoduje, że układ na magistrali SPI
    zacznie przeszkadzać w programowaniu układu.

    A jak sprawa wygląda z MCU 32bit, które mają osobne spi? Wystarczy
    wewnętrzny pull-up, czy też będzie on za słaby? A może istnieje jeszcze
    inny powód, dla którego ten rezystor musi tam być?

    Projektując jedną płytkę przeoczyłem ten element i teraz się
    zastanawiam, czy lutować go prowizorycznie na prototypie, czy też układ
    obejdzie się bez niego. Chodzi o pamieć flash AT45DBxxx.


  • 2. Data: 2016-05-25 00:04:53
    Temat: Re: pullup na lini CS
    Od: "Andrzej W." <a...@w...pl>

    W dniu 2016-05-24 o 23:29, Atlantis pisze:
    > Trochę głupie pytanie, ale dopiero teraz przyszło mi się nad nim
    > zastanowić. ;)
    > Czy pullup na linii CS interfejsu SPI koniecznie musi być zewnętrzny? W
    > przypadku AVR-ów odpowiedziałbym bez wahania, że tak. Jednak tam jedyny
    > (przynajmniej w przypadku znacznej części układów) interfejs SPI był
    > dzielony z ISP do programowania układu. Istniało więc niebezpieczeństwo,
    > że stan nieustalony na linii CS spowoduje, że układ na magistrali SPI
    > zacznie przeszkadzać w programowaniu układu.
    >
    > A jak sprawa wygląda z MCU 32bit, które mają osobne spi? Wystarczy
    > wewnętrzny pull-up, czy też będzie on za słaby? A może istnieje jeszcze
    > inny powód, dla którego ten rezystor musi tam być?
    >
    > Projektując jedną płytkę przeoczyłem ten element i teraz się
    > zastanawiam, czy lutować go prowizorycznie na prototypie, czy też układ
    > obejdzie się bez niego. Chodzi o pamieć flash AT45DBxxx.
    >


    Jeśli na SPI masz jednego slave, albo masz pewność, że wszystkie slave
    trzymają linię SOMI w HZ jeśli mają wybrany CS to nie musisz mieć
    zewnętrznego podciągania.
    Ale jeśli którykolwiek slave cokolwiek wystawia na linii SOMI po
    ustawieniu CS to może być kłopot bo wszystkie CS po restarcie MCU są w
    stanie nieustalonym.


    --
    AWa.


  • 3. Data: 2016-05-26 22:12:20
    Temat: Re: pullup na lini CS
    Od: Jakub Rakus <s...@o...pl>

    W dniu 24.05.2016 o 23:29, Atlantis pisze:
    > Trochę głupie pytanie, ale dopiero teraz przyszło mi się nad nim
    > zastanowić. ;)

    Niegłupie, sprawa jest istotna i czasem potrafi być upierdliwa.

    > Czy pullup na linii CS interfejsu SPI koniecznie musi być zewnętrzny? W
    > przypadku AVR-ów odpowiedziałbym bez wahania, że tak. Jednak tam jedyny
    > (przynajmniej w przypadku znacznej części układów) interfejs SPI był
    > dzielony z ISP do programowania układu. Istniało więc niebezpieczeństwo,
    > że stan nieustalony na linii CS spowoduje, że układ na magistrali SPI
    > zacznie przeszkadzać w programowaniu układu.

    Ostatnio popełniłem projekcik z Atmegą8 i jakimiś ADC z Analoga, które
    mają taki uproszczony SPI bez wykorzystania MOSI - jak im się podaje
    clock to wypychają dane na MISO, a CS jest aktywny stanem wysokim, więc
    dla ustalenia stanu dałem rezystor zewnętrzny do masy. I jak jest
    miejsce na PCB to lepiej stan na CS jakoś ustalić. Dla izolacji SPI od
    ISP Atmel zaleca dać na liniach SPI rezystory szeregowe kilka kOhm, ale
    u mnie się to nie sprawdziło - przy zegarze SPI 1MHz zbocza były
    masakrycznie nachylone i komunikacja nie działała. Zwarłem więc te
    rezystorki i działa zarówno komunikacja, jak i programowanie.

    > A jak sprawa wygląda z MCU 32bit, które mają osobne spi? Wystarczy
    > wewnętrzny pull-up, czy też będzie on za słaby? A może istnieje jeszcze
    > inny powód, dla którego ten rezystor musi tam być?

    Podpinałem jakiegoś STM32 do ADC od Maxima, rezystor pull-up na CS
    standardowo zostawiłem. Żeby się potem nie zastanawiać nad kłopotami.

    --
    Pozdrawiam
    Jakub Rakus

strony : [ 1 ]


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: