Źródło tej informacji to multimetr.
W ogóle przestaję rozumieć działanie AVR'ów, ale do rzeczy...
Przy SPI sterowanie zatrzaskiem odbywa się przez SS, a dokładniej chwilowe "0" na tym wyjściu. Kiedy włączę SPI poprzez
Zaloguj się, aby zobaczyć kod
... wydajność prądowa natychmiast spada. Podłączony rezystor 100k daje spadek napięcia do poziomu 3.5V co w zasadzie wystarcza na jedynkę logiczną. Sterowanie SS odbywa się "ręcznie":
Zaloguj się, aby zobaczyć kod
Próbowałem podłączyć driver MCP1402 i po dużych bólach udało się go podłączyć - na razie kontrolnie tylko pod SS i... SPI nie reaguje. Ręczne sterowanie poprzez bezpośrednie podłączenie wejścia SL rejestru (74HC165) dotychczas podłączonego do SS też nic nie daje. Wygląda to tak, jakby fakt odłączenia SS blokował SPI. Dodam tylko, że stany zmierzone testerem stanów logicznych są poprawne. [/code]
SPI rusza przy bezpośrednim połączeniu z rejestrem 74HC165. Jeśli odłączę SS/SL i steruję "ręcznie" - nie rusza SPI (brak impulsów zegarowych) i dotyczy to KAŻDEJ częstotliwości pracy SPI (w tej chwili testuję na 16MHz/128=125kHz. Prąd 35uA dotyczy póki co stanu na SS. Wymieniłem AVR'a na nowego i... to samo.
Najważniejsze: używam trybu MOSI czyli SPCR |= _BV( MSTR );
Zaloguj się, aby zobaczyć kod