SPI w 89s8252

Nov 23, 2008 4 Replies

Chcê pogadaæ miêdzy dwoma prockami. Siedzê ju¿ nie wiem ile i za cholerê nie mogê nic odebraæ ani wys³aæ z procka. Porty sprawdzone 100x i dzia³aj± ale sprztêtowo nie chc±. Przerwanie siê pojawia i odbieram na SPDR zawsze 255. Ju¿ nie mam si³y.



Co to mo¿e byæ?



PC



Taaa jasne. Podobnie mówi³a moja ¿ona 6 lechów temu - nic to nie da³o.

Master jest softwarowy a Slave sprzêtowy. Niestety zawsze wynik jest taki sam mimo, ¿e jak zmieniam polaryzacjê pinów to slave odbiera poprawnie. SPI zainicjowa³em i w³±czy³em przerwania. Sprawdza³em rejestry i jest ok. Niestety SPDR ma zawsze warto¶æ 255.

PC

PC pisze:

A co widzisz oscyloskopem na liniach interfejsu? Najpierw sprawdź, czy na pewno chociaż jedna strona komunikacji właściwie nadaje i odbiera (pewnie master bo to prawie zawsze działa dobrze).

Zmieniam stan pinów co 100ms i obserwujê na wy¶wietlaczu, ¿e to dzia³a. Inicjujê SPI po stronie slave, w³±czam przerwania, serial i spi i po wys³aniu w podobny sposób jak powy¿ej tylko szybciej (8 cykli zegarowych zw³oki, 1ms zw³oki, 10ms zw³oki) dostajê przerwanie czyli SPI co¶ odebra³ ale to co¶ to zawsze 255 czyli nie widzi zer. Przewód ma 25cm d³ugo¶ci, próbowa³em nadawaæ na miso i mosi ale zawsze jest 255. Oba uk³ady programujê przez ISP wiêc porty s± ok. Chyba, ¿e jak siê aktywuje SPI to jakie¶ bufory prze³±czaj± porty na inne wej¶cia, które s± uszkodzone. Ale to musia³by byæ straszny pech bo próbowa³em w obie strony i jest tak samo.

P.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required