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ę
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ę