FAQ | Points | Add... | Recent posts | Search | Register | Log in


[Atmega88][Bascom] SPI sprzętowe - konfiguracja.


Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> AVR Microcontrollers -> [Atmega88][Bascom] SPI sprzętowe - konfiguracja.
Author
Message
sokmarcin
Poziom 18
Poziom 18


Joined: 28 Mar 2004
Posts: 464
Location: Kraków/Częstochowa

Post#1 Post from the author of the topic 21 Aug 2008 14:22   

[Atmega88][Bascom] SPI sprzętowe - konfiguracja.


witam

Mam problem z up Atmega88 - nie działa SPI. skonfigurowany jest jako master (spi sprzętowe) - wg noty katalogowej, jednak jak chce coś wysłać program staje (w symulacji i w układzie) , uzywam komenty SPIOUT. Wcześniej ten sam algorytm uzywałem na atmedze8 i wszystko było ok. Oczywiście zmieniłem w opcjach procesor i przekompilowałem program dla nowego procesora. Pozatym procesor działa.
Co może byc nie tak? Bascom nie obsługuje wszystkich funkcji dla Atmegi88?
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 21 Aug 2008 14:22   





Back to top
   
paluszasty
Poziom 18
Poziom 18


Joined: 12 Mar 2006
Posts: 571
Location: Łódź

Post#2 21 Aug 2008 15:16   

Re: Atmega88, SPI i bascom


A dobrze masz konfigurowane piny wyjściowe?? Zobacz czy gdzieś w zakładkach kompilatora nie masz ustawionych inaczej niż na początku kodu, BASCOM czasem w takich wypadkach głupieje.
Pozdrawiam
Back to top
   
Google

Google Adsense


Post# 21 Aug 2008 15:16   





Back to top
   
BoskiDialer
Poziom 22
Poziom 22


Joined: 28 Nov 2003
Posts: 1533
Location: Żory

Post#3 21 Aug 2008 15:43   

Re: Atmega88, SPI i bascom


Strzelam, że pin SS jest konfigurowany jako wyjście po zainicjalizowaniu SPI, lub nie jest wcale konfigurowany. Żeby SPI działało jako master, pin SS musi być wejściem, na którym panuje stan wysoki, lub wyjściem (tu nie ma znaczenia jaki jest stan), w przeciwnym przypadku przełącza się na Slave - jeśli podczas inicjalizacji SS jest wejściem w stanie niskim, nie załączy się tryb master, a z powodu braku zewnętrznego źródła zegara transmisja przez SPI będzie się blokować.
Back to top
   
Google

Google Adsense


Post# 21 Aug 2008 15:43   





Back to top
   
sokmarcin
Poziom 18
Poziom 18


Joined: 28 Mar 2004
Posts: 464
Location: Kraków/Częstochowa

Post#4 Post from the author of the topic 25 Aug 2008 09:40   

Re: [Atmega88][Bascom] SPI sprzętowe - konfiguracja.


Witam,
dziękuje za odpowiedz, ja niestety mam ograniczony dostęp do internetu i stąd to opóźnienie.

Generalnie problem rozwiązałem wstawką w asm gdzie wpisuje bajt do rejestru SPDR i czekam aż bit SPIF z rejestru SPSR będzie równy 1.
Różnica pomiędzy M8 i M88 jest w podprograme sprawdzającym bit SPIF

dla Atmega8
Code:
sbis SPSR,SPIF
rjmp _spi_Wait
ret


dla Atmega88:
Code:
in r16, SPSR
sbrs r16, SPIF
rjmp Wait_Transmit
ret


nie wiem, co kryje się za instrukcja SPIOUT, ale podejżewam, że problem może być w sposobie sprawdzania bitu. (sbis SPSR,SPIF nie działa na M88)
Back to top
   
Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> AVR Microcontrollers -> [Atmega88][Bascom] SPI sprzętowe - konfiguracja.
Page 1 of 1
Similar topics
[Atmega88][asm] - Karta MMC po SPI - nie incjuje się (21)
Atmega 644P - diagnostyka SPI sprzętowe i programowe (4)
Programowanie AT89S2051, sprzętowe SPI, stk/200. (3)
XMEGA + sprzętowe SPI + FAT FS (4)
[Atmega88]USART in SPI mode (1)
Atmega128 i SPI - jak wyłączyć sprzętowe SPI? (1)
3510i SPI = Hard/Soft. Obsługa wyświetlacza przez sprzętowe SPI. (6)
Sprzętowe SPI w ATmega16. Stan niski na /SS - generowanie sygnału zegarowego. (2)
[ATMEGA88] [BASCOM] 4xPWM (6)
[Atmega88][Bascom] Error:61 (6)

Page generation time: 0.07 seconds


FAQ || Administrator || Moderators || Widgets and banners || Contact
elektroda.pl topic RSS feed