komunikacja SPI z MAX7219



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "sikurasaka" <sikurasaka_at_nospam_op.pl>
Subject: komunikacja SPI z MAX7219
Date: Sun, 16 Jul 2006 15:59:14 +0200


Witam!

Bawie sie sterownikiem wyświetlacza LED MAX7219. Steruje go przez SPI z
mikrokontrolera ATmega8.
Jednak nijak nie moge sie z nim dogadać. Jakakolwiek próba komunikacji
owocuje tylko szybkim, nieregularnym zapalaniem i gaszeniem wszystkich
ledów.
Co więcej lekkie dotknięcie izolacji jednego z 3 przewodów komunikacyjnych
również owocuje mryganiem - zakłócenia?

Oto przykład w C:

delayms(3000);
SPCR=80; //ustawienie trybu pracy spi [01010000]

cbi(PORTB,PORTB1); //ustawienie w stan niski wyjscia które jest podlaczone
do "LOAD" maxa
delayms(10);
//teraz chce wlaczyc display test aby wszystkie ledy
sie swiecily
SPDR=0x0F; //pierwszy bajt
delayms(10);

SPDR=0xFF; //drugi bajt
delayms(10);

sbi(PORTB,PORTB1); //ustawienie w stan wysoki wyjscia które jest podlaczone
do "LOAD" maxa


Testowałem to też używając przerywania od SPI, ale tez nie dzialalo, wiec
uznalem ze sprawdze to w najprostszy mozliwy sposob - bo chyba to ze bede
czekał za długo pomiędzy kolejnymi bajtami nie sprawia problemu - procek i
tak sam steruje zegarem i wylacza go po transmisji bajtu dopoki mu sie SPDR
nie zaladuje....więc.....powinno dzialac. [??]