Добрый день.
Решил проапгрейдить свой контроллер умного дома на базе raspberry, сейчас для чтения данных rf датчиков используется дешевый приемник 433mHz, чувствительность которого не устраивает.
Приобрел на замену трансивер si4432. Оказалось что настроить его не так уж просто.
Т.к. имеющиеся датчики генерят сигнал с нестандартной для si4432 преамбулой (0000001 вместо 01010101) требуется настроить единственный режим в котором si4432 будет с ними работать - raw mode.
За основу взял настройки из AN463, GPIO0 прописал как RX_DATA, модуляция OOK.
Импульсы пытаюсь обработать следующим незамысловатым кодом:
Код
while(true){
uint8_t rssi=si4432_rr(0x26);
if(rssi>0x34){
if(digitalRead(RPI_GPIO_PIN)==HIGH){
printf("1");
} else {
printf("0");
}
}
И вроде как импульсы считываются при наличии сигнала, но при этом не удается выцепить преамбулу определенной длительности (низкий уровень ~4200мкс) .
На настройку каких регистров стоит обратить внимание в первую очередь?
Сообщение отредактировал NovOleg - Feb 6 2015, 15:00