logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[attiny2313][c] Problem z komunikacją via SPI

mikmas 13 Wrz 2010 18:26 1438 3
REKLAMA
  • #1 8506664
    mikmas
    Poziom 18  
    Podłączyłem układ nRF24L01 do SPI kontrolera. W ramach sprawdzianu odczytuję wartości różnych rejestrów. W tym celu wysyłam 000xxxxx - xxxxx to adres rejestru. Dla przykładu wartości rejestrów 0x10 i 0x0B powinny być odpowiednio 0xE7E7E7E7E7 i 0xC2C2C2C2C2.
    Problem jest następujący.
    1. Włączenie zasilania. Odczytam z niego 0x10, dostanę 0xE7E7E7... - ok
    2. Odczytam z niego 0x0B, dostanę 0xE7E7E7... - źle. To wartość dla 0x10, nie 0x0B
    3. Wyłączam układ, włączam ponownie. Wysyłam 0x0B, otrzymuję 0xC2C2C2... - ok
    4. Odczytam z niego 0x10, dostaję 0xC2C2C2

    W skrócie mówiąc: dostaję cały czas wartość rejestru, o którego poprosiłem za pierwszym razem. Program za każdym razem przy procedurze wysyłania robi to samo, więc raczej to nie jest kwestia złego wysyłu. Co może być przyczyną? Mieliście kiedyś taki przypadek? Nie zamieszczam kodu, bo jest dość zagmatwany. Chyba, że powiecie, abym zamieścił to to zrobię
  • REKLAMA
  • Pomocny post
    #2 8506714
    tmf
    VIP Zasłużony dla elektroda
    Wysłąnie nowej instrukcji poprzedzasz zmianą stanu CSN z wysokiego na niski? Zauważ, żę CSN nie może stale być niskie, bo objawy będą takie jak piszesz.
  • REKLAMA
  • #3 8506772
    mikmas
    Poziom 18  
    Inicjacja układu - CSN na 1
    Procedura wysyłu:
    CSN na 0
    Wysłanie adresu rejestru
    Odebranie 5B
    CSN na 1
  • #4 8509471
    mikmas
    Poziom 18  
    Odkryłem razem z pewnym użytkownikiem tego forum, co może być źle. Właściwie tmf częściowo odpowiedział - problem z CSN. Kabelek się odlutował (to układ mikroskopijny, więc ciężko z miernikiem latać, dopiero jak się uwziąłem szczególnie na CSN to odkryłem). Układ miał cały czas stan niski, więc przyjmował komendę, nie przygotowując się do odebrania kolejnej (stan wysoki na CSN). Dzięki za poświęcony czas i sorry za zawracanie głowy tak trywialnym błędem
REKLAMA