Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Nrf24L01 “Подводные камни”

1) Для управления NRF24L01 используем SPIпорт, однако вы не можете просто так затянуть CSNк земле и записать свою конфигурацию. Когда SPIинициирована это означает, что первым байтом будет команда, а все остальные будут интерпретироваться как данные. Это означает, что вы должны переключать CSNперед каждой командой.
2) Вы можете записывать регистры только в режимах “powerdown” и “standby”. Например, можно притягивать ножку CEк земле чтобы переключить устройство в режим “standby”.
3) Для передачи данных Вам нужно очистить некоторые флаги из регистра STATUS. Во-первых, setreadфлаг. Для его очистки нужно записать в него 1. Если записывать в него 0 — его значение останется неизменным.
4) Передатчик использует только pipe 0 канал если используется ShockBurstи не видно резона его не использовать. Сделайте адреса передатчика (TX_ADDR) и канала передатчика pipe 0 (RX_ADDR_P0) такими же как у приёмника, который вы хотите использовать.
5) Если используете несколько передатчиков, помните, что они все работают на одной и той же частоте (channel) и убедитесь, что установлены различные задержки “AutoRe-transmitDelay” для разных каналов (SETUP_RETRARD) для каждого из передатчиков. Это предупредит их от постоянной блокировки друг друга.
6) В приёмнике включены все линии pipe. Будьте осторожны, когда вы меняете адрес. Pipe0имеет уникальный адрес, в то время как адреса pipe1...5должны быть такими же, за исключением последнего значащего байта. 

На основе зарубежных источников, чтобы не потерялось