Сколько startup time RDA5807M?
Некоторое время назад для Arduino я остановился на 600 ms перед загрузкой RDA регистров.
Експериментирую с PIC-aми. Код: те же операции как ардуиновские, с функциями за PIC (CCS).
Иногда (редко) RDA не запускается, только шум как по соседнем FM ненастроеном канале. Если настраиваю/перезагружаю снова, то чип нормально перейдет на нужную станцию, т.е. думаю инициализация чипа прошла успешно. Также если выключаю и включаю еще раз, то частота загружается из EEPROM-а, радио работает вполне нормально. После этого я могу пробовать весь день, будет ОК.
Сомневаюсь в трех вещах:
1. В Arduino (с bootloader) запуск медленнее. В PIC загрузчика нет. Времени 600 ms для RDA мало? Увеличить время 600 ms? Но вдобавок заряжаю последнюю частоту от вн. EEPROM ... Был подобной случай с AR1010: у кварца была малая активность. Зарабатывает, но хотелось много времени. Хаотический процесс: один раз медленно, один раз нормално ... После смены кварца все ОК.
2. PIC с внутренний clock, software I2C. Чип холодный, потом нагревается и частота clock-а (и I2C) устанавливается на "правильную"? (вряд ли: в комнате 25,5 гр. C).
3. software I2C, внешние pull-up 4,7k к 3,3V. Уменьшить их? А soft-I2C определенно работает нормально ...
Думаю в письменной форме
, для меня это интересный случай, может быть полезно другим (частично пользуюсь БГ->РУ переводчиком).