Я кажется пробовал, и вроде не помогало. Завтра попробую еще раз.
Расчет частоты приема для RDA5807M
- Сообщения: 3284
- Зарегистрирован: Чт окт 08, 2009 00:43:16
[uquote="Novice user",url="/forum/viewtopic.php?p=3283132#p3283132"]SOFTMUTE_EN и SOFTBLEND_EN в ноле[/uquote]
Я кажется пробовал, и вроде не помогало. Завтра попробую еще раз.
Я кажется пробовал, и вроде не помогало. Завтра попробую еще раз.
- Реклама
- Сообщения: 2
- Зарегистрирован: Вт дек 08, 2009 23:20:34
Такой код получился. можно както упростить? по функциям надо только чтоб работал при подаче питания сразу на 110.5мгц с возможностью перестраиваться по частоте на 1мгц вверх и вниз с шагом в 50кгц.
Пока работает на 110.55 при нажатие кнопок частота скидывается и возвращается обратно на 110.55. но косяк при включение не всегда включатся, приходится нажать любую кнопку.
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <avr/eeprom.h>
#include "i2c.h"
#define FQ_UP (PINC & (1<<0))
#define FQ_DN (PINC & (1<<1))
#define ST_UP (PINC & (1<<2))
#define ST_DN (PINC & (1<<3))
unsigned int f; // частота
unsigned char station=1;
uint8_t station_ee EEMEM ;
static uint8_t writeBuf[9];
// запись I2C
void I2C_write (void) {
i2c_start_cond();
i2c_send_byte(0x20);
i2c_send_byte(writeBuf[0]);
i2c_send_byte(writeBuf[1]);
i2c_send_byte(writeBuf[2]);
i2c_send_byte(writeBuf[3]);
i2c_send_byte(writeBuf[4]);
i2c_send_byte(writeBuf[5]);
i2c_send_byte(writeBuf[6]);
i2c_send_byte(writeBuf[7]);
i2c_send_byte(writeBuf[8]);
i2c_send_byte(writeBuf[9]);
i2c_send_byte(writeBuf[10]);
i2c_send_byte(writeBuf[11]);
i2c_send_byte(writeBuf[12]);
i2c_send_byte(writeBuf[13]);
i2c_stop_cond();
}
// инициализация, конфигурация
void FM__init (void) {
writeBuf[0] = 0b11110010;
writeBuf[1] = 0b10000101;
writeBuf[2] = 0;
writeBuf[3] = 0;
writeBuf[4] = 0b00000010;
writeBuf[5] = 0b00000000;
writeBuf[6] = 0b00001000;
writeBuf[7] = 0b10001111;
writeBuf[8] = 0;
writeBuf[9] = 0;
writeBuf[10] = 0;
writeBuf[11] = 0b00000011;
writeBuf[12] = 0b01011011;
writeBuf[13] = 0b11111110;
I2C_write();
return;
}
// задать частоту радиостанции
// частота в формате 101.2 FM пишем как 1012 (например)
// шаг 0.1 МГц
void SetFreq (uint16_t freq) {
freq -= 1104;
writeBuf[2] = freq>>2; // смаршие 8 бит
writeBuf[3] = freq<<6 | (1<<4); //Tune enable (1)
I2C_write();
return;
}
//************************************
void set_station (uint8_t st) {
if (st==1) {f=1104; SetFreq(f); }
if (st==1) {f=1105; SetFreq(f); }
eeprom_write_byte(&station_ee, st);
}
// =============
int main (void)
{
DDRC &= ~((1<<0)|(1<<1)|(1<<2)|(1<<3));//Настройка кнопок
PORTC|=(1<<0)|(1<<1)|(1<<2)|(1<<3);
i2c_init();
FM__init();
sei();// глобально разрешить прерывания
station=eeprom_read_byte(&station_ee);
set_station(station);
while(1)
{
if (!FQ_UP) {f++; if (f>1106) {f=1104;} SetFreq(f); _delay_ms(200);}
if (!FQ_DN) {f--; if (f<1104) {f=1106;} SetFreq(f); _delay_ms(200);}
if (!ST_UP) {station++; if (station>15) {station=1;} set_station(station); _delay_ms(200);}
if (!ST_DN) {station--; if (station<1) {station=15;} set_station(station); _delay_ms(200);}
} // end while(1)
} // end main
Пока работает на 110.55 при нажатие кнопок частота скидывается и возвращается обратно на 110.55. но косяк при включение не всегда включатся, приходится нажать любую кнопку.
Спойлер
#define F_CPU 8000000L#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <avr/eeprom.h>
#include "i2c.h"
#define FQ_UP (PINC & (1<<0))
#define FQ_DN (PINC & (1<<1))
#define ST_UP (PINC & (1<<2))
#define ST_DN (PINC & (1<<3))
unsigned int f; // частота
unsigned char station=1;
uint8_t station_ee EEMEM ;
static uint8_t writeBuf[9];
// запись I2C
void I2C_write (void) {
i2c_start_cond();
i2c_send_byte(0x20);
i2c_send_byte(writeBuf[0]);
i2c_send_byte(writeBuf[1]);
i2c_send_byte(writeBuf[2]);
i2c_send_byte(writeBuf[3]);
i2c_send_byte(writeBuf[4]);
i2c_send_byte(writeBuf[5]);
i2c_send_byte(writeBuf[6]);
i2c_send_byte(writeBuf[7]);
i2c_send_byte(writeBuf[8]);
i2c_send_byte(writeBuf[9]);
i2c_send_byte(writeBuf[10]);
i2c_send_byte(writeBuf[11]);
i2c_send_byte(writeBuf[12]);
i2c_send_byte(writeBuf[13]);
i2c_stop_cond();
}
// инициализация, конфигурация
void FM__init (void) {
writeBuf[0] = 0b11110010;
writeBuf[1] = 0b10000101;
writeBuf[2] = 0;
writeBuf[3] = 0;
writeBuf[4] = 0b00000010;
writeBuf[5] = 0b00000000;
writeBuf[6] = 0b00001000;
writeBuf[7] = 0b10001111;
writeBuf[8] = 0;
writeBuf[9] = 0;
writeBuf[10] = 0;
writeBuf[11] = 0b00000011;
writeBuf[12] = 0b01011011;
writeBuf[13] = 0b11111110;
I2C_write();
return;
}
// задать частоту радиостанции
// частота в формате 101.2 FM пишем как 1012 (например)
// шаг 0.1 МГц
void SetFreq (uint16_t freq) {
freq -= 1104;
writeBuf[2] = freq>>2; // смаршие 8 бит
writeBuf[3] = freq<<6 | (1<<4); //Tune enable (1)
I2C_write();
return;
}
//************************************
void set_station (uint8_t st) {
if (st==1) {f=1104; SetFreq(f); }
if (st==1) {f=1105; SetFreq(f); }
eeprom_write_byte(&station_ee, st);
}
// =============
int main (void)
{
DDRC &= ~((1<<0)|(1<<1)|(1<<2)|(1<<3));//Настройка кнопок
PORTC|=(1<<0)|(1<<1)|(1<<2)|(1<<3);
i2c_init();
FM__init();
sei();// глобально разрешить прерывания
station=eeprom_read_byte(&station_ee);
set_station(station);
while(1)
{
if (!FQ_UP) {f++; if (f>1106) {f=1104;} SetFreq(f); _delay_ms(200);}
if (!FQ_DN) {f--; if (f<1104) {f=1106;} SetFreq(f); _delay_ms(200);}
if (!ST_UP) {station++; if (station>15) {station=1;} set_station(station); _delay_ms(200);}
if (!ST_DN) {station--; if (station<1) {station=15;} set_station(station); _delay_ms(200);}
} // end while(1)
} // end main
- Сообщения: 3284
- Зарегистрирован: Чт окт 08, 2009 00:43:16
Кто-нибудь измерял сколько потребляет эта микросхема при напряжении питания 1,8-2 вольта? Вопрос возник в ходе обсуждения с коллегой одного проекта, но как назло как раз сейчас нет под рукой модуля с микросхемой чтобы проверить потребление при низком напряжении питания. Возможно, кто-то проводил измерения и располагает результатами?
P.S. Добрался сегодня до модуля и тестера. При 2 вольтах питания микросхема потребляет 21 миллиампер с отключенными наушниками.
P.S. Добрался сегодня до модуля и тестера. При 2 вольтах питания микросхема потребляет 21 миллиампер с отключенными наушниками.
Возникла необходимость принимать частоту 64,7 МГц,в принципе понятно-
BAND[1:0] =11 (0x03H_bit<3:2>)
65M_50M MODE =0
но как считать частоту?
для 87-108- Frequency =Channel Spacing (kHz) x CHAN+ 87.0 MHz
для 76–91 и 76-108- Frequency =Channel Spacing (kHz) x CHAN + 76.0 MHz
для 65 –76- Frequency =Channel Spacing (kHz) x CHAN + 65.0 MHz
а как для 50-65MHz?
Добавлено after 13 minutes 16 seconds:
Разобрался,для 50-76 Frequency =Channel Spacing (kHz) x CHAN + 50.0 MHz,,,,
BAND[1:0] =11 (0x03H_bit<3:2>)
65M_50M MODE =0
но как считать частоту?
для 87-108- Frequency =Channel Spacing (kHz) x CHAN+ 87.0 MHz
для 76–91 и 76-108- Frequency =Channel Spacing (kHz) x CHAN + 76.0 MHz
для 65 –76- Frequency =Channel Spacing (kHz) x CHAN + 65.0 MHz
а как для 50-65MHz?
Добавлено after 13 minutes 16 seconds:
Разобрался,для 50-76 Frequency =Channel Spacing (kHz) x CHAN + 50.0 MHz,,,,
- Сообщения: 3284
- Зарегистрирован: Чт окт 08, 2009 00:43:16
Возвращаясь к вопросу питания - RDA5807M вполне сносно работает при напряжении 1,6 вольта. Принимает слово управления, настраивается, принимает. Даже при 1,5 вольтах продолжает чего-то принимать, но уже с заметными шумами. Правда, при 1,5 вольтах нечем загнать в нее управляющие слова, а при 1,6 вольта некоторые экземпляры PIC16F1829 еще в состоянии дергать ногами.
- Реклама
- Сообщения: 3284
- Зарегистрирован: Чт окт 08, 2009 00:43:16
В поисках способа избавится от приглушения звука докатился до "прямой" загрузки частоты синтезатор микросхемы RDA5807M. Не помогло, звук все равно глохнет после каждого шага 1 кГц, хотя бит TUNE при этом не затрагивается. Видимо, нет способа заставить нормально работать эту микросхему. Сделать настройку энкодером нет возможности, при вращении его с нормальной для ручной настройки скоростью звук вообще не появляется, настроится можно только на известные заранее частоты контролируя частоту настройки по дисплею. Похоже, придется эту RDA топку. Настройка кнопками, это несерьезно...
- Сообщения: 6
- Зарегистрирован: Пт ноя 04, 2011 15:44:39
Приветствую. Написал прошивку на arduino nano, радиоприемник ожил: автопоиск вверх и вниз работает отлично, регулировка громкости тоже работает, фиксированный канал тоже настраивается в общем вроде бы все работает, но есть одно но: не могу получить выод текущей частоты. По регистру 0x0A считываю старший и младший бит. Индикатор стерео работает ( плохой сигнал 0, когда хороший 1), индикатор настройки тоже работает (при настройке 0, как только нашел 1), а вот частота при включении питания 0x1FF, как только настраиваю либо вниз, либо вверх постоянно число 0xFF и ни при каких обстоятельствах не меняется. Кстати адреса по I2C сканеру у меня нашел 0x20, 0x21, 0x22, 0xC0, 0xC1, 0xC2. Конкретно на запись адрес у меня сейчас 0x22, на чтение 0x21. (пробывал все остальные. Итог либо вообще не работает, либо тоже самое). Модулей 2 у меня, работают идентично.
Вопрос может я что то упускаю, что он мне шлет постоянно 0xFF.
Вопрос может я что то упускаю, что он мне шлет постоянно 0xFF.
- Сообщения: 6
- Зарегистрирован: Пт ноя 04, 2011 15:44:39
"Спасибо" всем откликнувшимся, разобрался сам. Если вдруг кто-то столкнется с такой же проблемой, то вот мое решение: вместо адреса частоты в адресе 0x0A я считал значение в адресе 0x03. Частоту теперь показывает, но с небольшой погрешностью +-0.2МГц.
- Сообщения: 171
- Зарегистрирован: Сб сен 15, 2018 19:04:00
Здравствуйте, собираю тоже приемник на RDA5807, в общем то все работает, единственное RDS адекватно только при хорошем уровне сигнала. Как я понял нужна коррекция ошибок, в общем научился раскладывать полученные 4 блока данных на 26 бит, инет помог, а что дальше делать х...его знает. Очень буду признателен за помощь.
Возможно, вам поможет документация, которую я выкладывал в этом посте (под спойлером).
Не столь важно, для какой микросхемы документация, после того как вы считали блоки RDS.
Не столь важно, для какой микросхемы документация, после того как вы считали блоки RDS.
RDA5807 уже сама аппаратно раскладывает данные на 4 блока по 26 бит, делает коррекцию ошибок и отдаёт в 4 регистра готовый результат в виде четырёх 16-битных регистров.
Не знаю, где Вы умудрились эти 26 бит выкопать в RDA5807.
Не знаю, где Вы умудрились эти 26 бит выкопать в RDA5807.
- Сообщения: 171
- Зарегистрирован: Сб сен 15, 2018 19:04:00
Два одинаковых вопроса задал на разных форумах,ладно. Вроде как слово смещения каждого блока для коррекции ошибки рассчитывается из полученных 16 бит блока.
Добавлено after 55 minutes 14 seconds:
В общем спасибо за разъяснение данного вопроса.
Добавлено after 55 minutes 14 seconds:
В общем спасибо за разъяснение данного вопроса.
Сколько реальное изменение RSSI у RDA5807М?
По пдф: 7 bit (или max 128):
reg 0BH, 15:9, RSSI[6:0]
Мне необходимо для машабирования (примерно за подобие S-meter на max 7..9 шагов).
На моего радио-модуль на столе:
с ок. 1м проводник для антенны - на самой сильной станции: 74
без антенна: ок. 10
Для Si4702/03:
RSSI is measured units of dBμV in 1 dB increments with a maximum of approximately 75 dBμV. Si4702/03-C19 does not report RSSI levels greater than 75 dBuV.
Это верхний предел и для RDA5807М?
---
Чтобы декодировать RDS без ошибок, я бы попытался проверка FM TRUE true, RDSR true, RDSS true и RSSI выше 60..62.
Получение A и B дважды не очень помогает. Я убрал - дает задержку только.
Из-за меняющихся station_name мне пришлось добавить два буфера - для "зарядки букв" и для "печат".
Работает лучше чем без. Но иногда есть еще ошибки и я не понимаю почему есть, а BLERA и BLERB в 0.
Есть еще что проверить?
Мне нравится работа модуля RDA5807М. Раздражает только глушение -> следует без ручного режима, но это терпимо
А вот автоматический поиск станций, на удивление, хорошо работает
По пдф: 7 bit (или max 128):
reg 0BH, 15:9, RSSI[6:0]
Мне необходимо для машабирования (примерно за подобие S-meter на max 7..9 шагов).
На моего радио-модуль на столе:
с ок. 1м проводник для антенны - на самой сильной станции: 74
без антенна: ок. 10
Для Si4702/03:
RSSI is measured units of dBμV in 1 dB increments with a maximum of approximately 75 dBμV. Si4702/03-C19 does not report RSSI levels greater than 75 dBuV.
Это верхний предел и для RDA5807М?
---
Чтобы декодировать RDS без ошибок, я бы попытался проверка FM TRUE true, RDSR true, RDSS true и RSSI выше 60..62.
Получение A и B дважды не очень помогает. Я убрал - дает задержку только.
Из-за меняющихся station_name мне пришлось добавить два буфера - для "зарядки букв" и для "печат".
Работает лучше чем без. Но иногда есть еще ошибки и я не понимаю почему есть, а BLERA и BLERB в 0.
Есть еще что проверить?
Мне нравится работа модуля RDA5807М. Раздражает только глушение -> следует без ручного режима, но это терпимо
А вот автоматический поиск станций, на удивление, хорошо работает
- Сообщения: 4
- Зарегистрирован: Вс авг 18, 2019 19:09:58
Здравствуйте.Объясните мне пожалуйста:
вот код принудительной записи в rda5807
так находит но на станцию ниже
rcall IIC_Start
ldi temp,0b00100000 ;адрес FM модуля с битом записи
rcall IIC_Send
ldi temp,0b11010011 ;02H байт
rcall IIC_Send
ldi temp,0b00000101 ;02L байт
rcall IIC_Send
ldi temp,0b10100010 ;103,2 настраивается на 101.5
rcall IIC_Send
ldi temp,0b01000000 ;03L байт
rcall IIC_Send
rcall IIC_Stop
частота получается 151,9 мГц
Приемник принимает Юмор-FM
транслирующийся на частоте 88,9 мГц
На 151,9 унас в городе вещания нет.
Как такое происходит или расчет чатоты
неверный?Заранее спасибо.
вот код принудительной записи в rda5807
так находит но на станцию ниже
rcall IIC_Start
ldi temp,0b00100000 ;адрес FM модуля с битом записи
rcall IIC_Send
ldi temp,0b11010011 ;02H байт
rcall IIC_Send
ldi temp,0b00000101 ;02L байт
rcall IIC_Send
ldi temp,0b10100010 ;103,2 настраивается на 101.5
rcall IIC_Send
ldi temp,0b01000000 ;03L байт
rcall IIC_Send
rcall IIC_Stop
частота получается 151,9 мГц
Приемник принимает Юмор-FM
транслирующийся на частоте 88,9 мГц
На 151,9 унас в городе вещания нет.
Как такое происходит или расчет чатоты
неверный?Заранее спасибо.
reg_3 = (freq - 870) << 6, где freq - частота в MHz (* 10)
напр. для 88,9 MHz:
reg_3 = (889 - 870) << 6 = 19 << 6 = 0b10011 << 6 = 0b0000010011000000
или:
03H: 0b00000100
03L: 0b11000000
DIRECT MODE = 0, TUNE = 1, BAND = 00, SPACE = 00, сл.
03H: 0b00000100
03L: 0b11010000
-----------------------------
При:
03H = 0b10100010, 03L = 0b01000000 => reg_3 = 0b1010001001000000 >> 6 = 0b1010001001 = 649, сл.
(649 + 870) / 10 = 151,9 MHz,
то частота вне раб. диапазона:
The RDA5807M series support frequency range is from 50MHz to 115MHz.
Что принимает RDA5807M на 151,9 MHz, то это непредсказуемо.
напр. для 88,9 MHz:
reg_3 = (889 - 870) << 6 = 19 << 6 = 0b10011 << 6 = 0b0000010011000000
или:
03H: 0b00000100
03L: 0b11000000
DIRECT MODE = 0, TUNE = 1, BAND = 00, SPACE = 00, сл.
03H: 0b00000100
03L: 0b11010000
-----------------------------
При:
03H = 0b10100010, 03L = 0b01000000 => reg_3 = 0b1010001001000000 >> 6 = 0b1010001001 = 649, сл.
(649 + 870) / 10 = 151,9 MHz,
то частота вне раб. диапазона:
The RDA5807M series support frequency range is from 50MHz to 115MHz.
Что принимает RDA5807M на 151,9 MHz, то это непредсказуемо.
- Сообщения: 4
- Зарегистрирован: Вс авг 18, 2019 19:09:58
Добрый день.
Спасибо за ответ.
Есть ли разница между чипами 5807.....?
У меня чип 5809м, надпись на плате RRD-102 Ver:2.0
При вводе данных
ldi temp,0b0b10100010 ;03H
rcall IIC_Send
ldi temp,0b01000000 ;03L
поет Юмор - 88,9 мГц? а
при вводе
ldi temp,0b00000100 ;03H
rcall IIC_Send
ldi temp,0b11010000 ;03L
тишина, даже шумов нет.
Объясните мне пожалуйста, что я делаю не так,
а то я совсем запутался.
rcall IIC_Start
ldi temp,0b00100000 ;адрес FM модуля с битом записи
rcall IIC_Send
ldi temp,0b11010011 ;02H
rcall IIC_Send
ldi temp,0b00000101 ;02L
rcall IIC_Send
ldi temp,0b00000100 ;03H
rcall IIC_Send
ldi temp,0b11010000 ;03L
rcall IIC_Send
rcall IIC_Stop
Заранее благодарен.
Спасибо за ответ.
Есть ли разница между чипами 5807.....?
У меня чип 5809м, надпись на плате RRD-102 Ver:2.0
При вводе данных
ldi temp,0b0b10100010 ;03H
rcall IIC_Send
ldi temp,0b01000000 ;03L
поет Юмор - 88,9 мГц? а
при вводе
ldi temp,0b00000100 ;03H
rcall IIC_Send
ldi temp,0b11010000 ;03L
тишина, даже шумов нет.
Объясните мне пожалуйста, что я делаю не так,
а то я совсем запутался.
rcall IIC_Start
ldi temp,0b00100000 ;адрес FM модуля с битом записи
rcall IIC_Send
ldi temp,0b11010011 ;02H
rcall IIC_Send
ldi temp,0b00000101 ;02L
rcall IIC_Send
ldi temp,0b00000100 ;03H
rcall IIC_Send
ldi temp,0b11010000 ;03L
rcall IIC_Send
rcall IIC_Stop
Заранее благодарен.
Попробуйте через адрес 0x11 (random access).
Напр. тест работает у меня, 90.3 MHz, код для Arduino:
Wire.beginTransmission(0x11);
Wire.write(0x02); // reg 0x02
Wire.write(0xC0);
Wire.write(0x0D);
Wire.endTransmission();
delay(50);
Wire.beginTransmission(0x11);
Wire.write(0x03); // reg 0x03
Wire.write(0x08); // [15:8] - frequencyH 90,3 MHz
Wire.write(0x50); // [7..0] - frequencyL 90,3 MHz + TUNE bit
Wire.endTransmission();
RDA5807M и управление: 3,3V (подключил I2C через резистори 10k).
Можно и без delay(ms).
Напр. тест работает у меня, 90.3 MHz, код для Arduino:
Wire.beginTransmission(0x11);
Wire.write(0x02); // reg 0x02
Wire.write(0xC0);
Wire.write(0x0D);
Wire.endTransmission();
delay(50);
Wire.beginTransmission(0x11);
Wire.write(0x03); // reg 0x03
Wire.write(0x08); // [15:8] - frequencyH 90,3 MHz
Wire.write(0x50); // [7..0] - frequencyL 90,3 MHz + TUNE bit
Wire.endTransmission();
RDA5807M и управление: 3,3V (подключил I2C через резистори 10k).
Можно и без delay(ms).
Последний раз редактировалось veso74 Пн авг 26, 2019 19:02:35, всего редактировалось 3 раза.
- Сообщения: 4
- Зарегистрирован: Вс авг 18, 2019 19:09:58
Огромное спасибо.
Макетка лежит на работе,
через день попробую.
Еще раз спасибо.
Макетка лежит на работе,
через день попробую.
Еще раз спасибо.
- Сообщения: 4
- Зарегистрирован: Вс авг 18, 2019 19:09:58
Добрый день!
Прошил адрес 11,
с ним вообще не работает.
Заметил еще одну особенность, если
по старшим адресам 03H заносить
другие значения, то все равно
принимается одна и та же станция.
Пробывал другой чип - так же.
Ничего уже не понимаю. Извините.
Прошил адрес 11,
с ним вообще не работает.
Заметил еще одну особенность, если
по старшим адресам 03H заносить
другие значения, то все равно
принимается одна и та же станция.
Пробывал другой чип - так же.
Ничего уже не понимаю. Извините.
Ваш микроконтроллер какой?
Ваше управление для I2C bus коректно работает?
Какая скорост I2C?
Проверяли соединения SDA/SCL, проверяли через I2C Scanner RDA отвечает или нет и на какой адрес?
Мой модуль отвечает на 3 адреса:
0x10 (sequential)
0x11 (random)
0x60 (emulate TEA5767)
Ниже: код для Arduino, модуль RDA5807M, работает на 90,3 MHz, super-bass on и de-emphasis 50 ms.
Попробуйте, если Arduino модуль есть. Так будем проверять Ваш модуль-радио работает или нет.
Потом напишете код для Вашего микроконтролера и на Вашем любимом языке программирования.
Не сдавайся так легко, все поправимо
.
Ваше управление для I2C bus коректно работает?
Какая скорост I2C?
Проверяли соединения SDA/SCL, проверяли через I2C Scanner RDA отвечает или нет и на какой адрес?
Мой модуль отвечает на 3 адреса:
0x10 (sequential)
0x11 (random)
0x60 (emulate TEA5767)
Ниже: код для Arduino, модуль RDA5807M, работает на 90,3 MHz, super-bass on и de-emphasis 50 ms.
Попробуйте, если Arduino модуль есть. Так будем проверять Ваш модуль-радио работает или нет.
Потом напишете код для Вашего микроконтролера и на Вашем любимом языке программирования.
Не сдавайся так легко, все поправимо
- Вложения
-
- rda_05a.zip
- (6.73 КБ) 282 скачивания
Последний раз редактировалось veso74 Пт авг 30, 2019 13:22:17, всего редактировалось 1 раз.


