УКВ – радиоприем, часть 2

Пришло свободное время решил вторую часть проекта реализовать (правда есть мысль и третью с использование цветного OLED и функцией ch-светомузыки, но это только задумка… Для понимания функций интегрального приемника RDA5807FP читайте описание http://catcatcat.d-lan.dp.ua/shemotehnika/integralnyie-radiopriemniki/ Фото прототипа, на плате только контроллер и приемник, часы потом прилеплю, сейчас интерес, это получить индикацию и RDS. Сразу выписал станции Днепропетровска, чтобы смотреть …
Читать далее УКВ – радиоприем, часть 2

УКВ – радиоприем, часть 1

Музыкальная тема к статье, слушаем: Первый мой радиоприемник, выглядел так. Использовал исключительно в школе на уроках, держась за одно ухо и преданно смотря на училку и сладко улыбаясь. Проблема была это место возле батареи и зачистить на перемене, для создания надежного заземления. Но сегодня этого не понять, так это было во времена (ну в общем …
Читать далее УКВ – радиоприем, часть 1

Интегральный радиоприемник – RDA5807FP


Catcatcat_electronics_RDA5807FP-250-01

Страница в pdf.

Значок

Интегральные радиоприемники - RDA5807FP 305.46 KB 1701 downloads

Интегральные радиоприемники - RDA5807FP - описание...

RDA5807FP – нового поколения, однокристальный, с полностью интегрированным синтезатором, IF избирательностью, RDS/RBDS и MPX декодер – FM радио тюнер, 50-108MHz, стерео. Тюнер изготовлен по  CMOS технологии, поддерживает цифровой интерфейс I2S Audio Data Interface и требует минимального количества внешних компонентов. В корпусе SOP16. Полностью без внешних регулировок. Все это делает его очень привлекательным для портативных устройств. RDA5807FP имеет мощный цифровой аудиопроцессор, это дает возможность получить оптимальный звук высокого качества в различных условиях приема. Программно совместим с моделями RDA5802N/NS/NM.


Управление выполняется с использование I2C  интерфейса.

Всего одна команда управления состоящая и 14 Байт. И одна команда чтения данных состоящая из 12 байт.

Регистр по описанию Регистры по байтам Адрес По умолчанию Доступ
0x00 Chip ID 0x58
0x02 0 0x00 Запись
1 0x00 Запись
0x03 2 Запись
3 Запись
0x04 4 Запись
5 Запись
0x05 6 Запись
7 Запись
0x06 8 Запись
9 Запись
0x07 10 Запись
11 Запись
0x08 12 Ручная установка частоты Запись
13 Ручная установка частоты Запись
0x0A 0 Чтение
1 Чтение
0x0B 2 Чтение
3 Чтение
0x0C 4 BLOCK A или BLOCK E Код станции Чтение
5 Чтение
0x0D 6 BLOCK B или BLOCK E Чтение
7 Чтение
0x0E 8 BLOCK C или BLOCK E Чтение
9 Чтение
0x0F 10 BLOCK D или BLOCK E Чтение
11

Описание управляющей последовательности.

Управляющая последовательность, подается как управляющая команда. При управлении необходимо понимать, что устанавливаемые биты управления, аппаратно сбрасываются при выполнении команды. Например, при установки бита поиска, он возвращается при нахождении станции.

Команды управления, описаны в порядке подачи для управления.

Регистры записи.

Байт 00 (по фирменному описанию 02H)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 DHIZ Управление аудио выходом, выключение высокого импеданса 0 – высокий импеданс, аудио выход отключен от выводов,
1 – аудио выход включен
0
6 DMUTE Отключение режима MUTE 0 – MUTE
1 – Нормальная громкость
0
5 MONO Режим MONO 0 – СТЕРЕО режим
1 – МОНО режим
0
4 BASS Усиление басов 0 – отключено
1 – включено
0
3 RCLK NON-CALIBRATE MODE NON-Режим калибровки 0 = RCLK генератор всегда работает
1 = RCLK генератор не всегда поддерживает работу FM (Если 1, RDA5807FP не может напрямую поддерживать работу в диапазоне -20 ℃ ~ 70 ℃ температур. Только поддерживает ± 20 ℃ изменение колебания температуры от точки настройки)
0
2 RCLK DIRECT INPUT MODE Непосредственный ввода 1 = RCLK генератор использует непосредственный режим ввода 0
1 SEEKUP Направление поиска 0 – искать вверх по диапазону
1 – искать вниз по диапазону
0
0 SEEK Поиск 0 – остановить поиск
1 – начать поиск в направлении, указанном SEEKUP. Поиск автоматически заканчивается, когда канал найден, или весь диапазон просканирован. При этом бит SEEK будет установлен в 0, а бит STC установлен в 1, когда операция поиска будет завершена
0

Байт 01 (по фирменному описанию 02L) 

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 SKMODE Режим поиска 0 – продолжить поиск заново при достижении границы диапазона
1 – остановить поиск если достигнут конец (начало) диапазона
0
6 CLK_MODE[2:0] Выбор установленного кварцевого резонатора 000=32.768kHz
001=12Mhz
101=24Mhz
010=13Mhz
110=26Mhz
011=19.2Mhz
111=38.4Mhz
000
5
4
3 RDS_EN Включение функции RDS/RBDS 0 – RDS/RBDS – отключена
1 – RDS/RBDS – включена
0
2 NEW_METHOD Новый метод демодуляция, может улучшить чувствительность приемника около 1 дБ. 0 – отключен
1 – включен
0
1 SOFT_RESET Программный сброс настроек 0 – нет сброса
1 – сброс настроек
0
0 ENABLE Включение/выключение питания приемника 0 – приемник выключен
1 – приемник включен
0

Байт 02 (по фирменному описанию 03H)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 CHAN
(2-9)
   Настройка частоты приема (старшие биты)

BAND = 0
Частота =  Channel Spacing (kHz) x CHAN+ 87.0 MHz
BAND = 1 или 2
Частота = Channel Spacing (kHz) x CHAN + 76.0 MHz
BAND = 3
Частота = Channel Spacing (kHz) x CHAN + 65.0 MHz
Биты настройки частоты обновляются после операции поиска.

00000000
6
5
4
3
2
1
0

Байт 03 (по фирменному описанию 03L)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 CHAN
(0-1)
Настройка частоты приема (младшие биты) 00
6
5 DIRECT MODE Непосредственный режим управления, используется только для теста 0 – нормальный режим
1 – режим теста
0
4 TUNE Точная настройка 0 = отключить
1 = включить
Операции настройки начинается тогда, когда бит TUNE установлен в 1. Бит STC устанавливается в 1, когда операция TUNE завершена.
Бит TUNE сбрасывается к 0 автоматически, когда операция TUNE завершена.
0
3 BAND[1:0] Диапазон частот 00 = 87–108 MHz (US/Europe)
01 = 76–91 MHz (Japan)
10 = 76–108 MHz (world wide)
11 = = 65 –76 MHz (East Europe)или 50-65MHz
00
2
1 SPACE[1:0] Шаг сканирования 00 = 100 kHz
01 = 200 kHz
10 = 50kHz
11 = 25KHz
00
0

Байт 04 (по фирменному описанию 04H) 

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 RDSIEN Прерывание когда RDS данные готовы.
Установка RDSIEN = 1 будет генерировать низкочастотный импульс на GPIO2 (Может создавать помехи, в аналоговом звуковом тракте! когда установлен режим INT _MODE=0, прерывание каждые 5 мс, подключение емкости для заваливания фронтов на выводе GPIO2 позволяет уменьшить это влияние).
0 = Отключить прерывание
1 = разрешить прерывание
0
6 STCIEN Поиск/Точная настройка. Разрешение прерывания после окончания операции.
Установка STCIEN = 1 будет генерировать одиночный импульс на выводе GPIO2 в момент окончания выполнения функций.
0 = Отключить прерывание
1 = разрешить прерывание
0
5 RBDS

Активация полнофункциональном режима RBDS.

1 = RBDS полнофункциональном режиме
0 = только в режиме RDS
0
4 RDS_FIFO_EN 1 = RDS режиме FIFO включить. 1 = RDS режиме FIFO включить
0 = отключить
0
3 DE Предыскажение. 0 = 75 μs
1 = 50 μs
0
2 не используется. 0
1 SOFTMUTE_EN Активирование мягкого приглушенние звука. 1 – включено
0 – выключено
1
0 AFCD Отключение AFC. 0 – AFC включен
1 – AFC отключен
0

Байт 05 (по фирменному описанию 04L) 

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 не используется 0
6 I2S_ENABLED включение интерфейса I2S 0 – отключен
1 – включен
0
5 GPIO3[1:0] функция вывода GPIO3 00 = высокое сопротивление
01 = Mono/Stereo индикатор (ST)
10 = 0
11 = 1
00
4
3 GPIO2[1:0] функция вывода GPIO2 00 = высокое сопротивление
01 = выход прерывания (INT)
10 = 0
11 = 1
00
2
1 GPIO1[1:0] функция вывода GPIO1 00 = высокое сопротивление
01 = не используется
10 = 0
11 = 1
00
0

Байт 06 (по фирменному описанию 05H)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 INT _MODE Режим прерывания для RDSIEN. Генерация прерываний при готовности RDS данных. 0 = генерация прерывания 5 мс
1 = прерывание не выполняется пока не прочитан регистр 0Ch.
1
6 не используется 000
5
4
3 SEEKTH[3:0] Пороговое значение SNR для режима поиска. Это значение порога SNR для поиска, а значение по умолчанию 1000 составляет около 32 дБ SNR. 0000-1111 1000
2
1
0

Байт 07 (по фирменному описанию 05L)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 LNA_PORT_SEL[1:0] Выбор порта антенны 00 – отключен антенный вход
10 – вход FMIN
10
6
5 не используется 00
4
3 VOLUME[3:0] Регулировка громкости

0000 – минимальный уровень
1111 – максимальный уровень
Функция регулировки громкости – логарифмический
Когда 0000 – отключение звука на выходе и переключение выхода в состояние высокого импеданса

1111
2
1
0

Байт 08 (по фирменному описанию 06H)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7
6 OPEN_MODE[1:0] Режим отрыть защищенные регистры для записи. 11 = открыть регистры на запись, открываются регистры функции на запись, которые предназначены только для чтения. 00
5
4 I2S_MODE* Режим I2S 0 – режим ведущего
1 – режим ведомого
0
3 SW_LR* WS отношению к L/R каналов. 0 – WS=0 -> R, WS=1 -> L
1 – WS=0 -> L, WS=1 -> R
10
2 SCLK_I_EDGE* Когда I2S включено 0 – используется нормальный внутренний SCLK
1 – используется инверсный внутренний SCLK
0
1 DATA_SIGNED* Формат данных 0 – I2S формат не полярный 16 бит данные
1 – I2S формат полярный 16 бит данные
0
0 WS_I_EDGE* WS 0 – WS нормальный внутренний
1 – WS инверсный внутренний
0

* Эти функции активны, когда интерфейс I2S – включен.

Байт 09 (по фирменному описанию 06L)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 I2S_SW_CNT[4:0] Сжатие данных 4’b1000: WS_STEP_48;
4’b0111: WS_STEP=44.1kbps;
4’b0110: WS_STEP=32kbps;
4’b0101: WS_STEP=24kbps;
4’b0100: WS_STEP=22.05kbps;
4’b0011: WS_STEP=16kbps;
4’b0010: WS_STEP=12kbps;
4’b0001: WS_STEP=11.025kbps;
4’b0000: WS_STEP=8kbps; 
0000
6
5
4
3 SW_O_EDGE Управление сигналами I2S интерфейса 1 – WS инвертировать выход, в режиме ведущего 0
2 SCLK_O_EDGE 1 – SCLK инвертировать выход, в режиме ведущего 0
1 L_DELY 1 – задержки данных канала L на 1T 0
0 R_DELY 1 – задержки данных канала R на 1T 0

Байт 10 (по фирменному описанию 07H)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 не используется
6 TH_SOFRBLEND[5:0] Настройка порога шума, шаг 2dB  0000-11111 10000
5
4
3
2
1 65M_50M MODE Функция действительна для диапазона band[1:0] = 11 для диапазона East Europe 1 = 65~76 MHz
0 = 50~76 MHz
1
0 не используется

Байт 11 (по фирменному описанию 07L)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 SEEK_TH_OLD Порог поиска для режима поиска
Действительно только при условии SKMODE = 1
000000-111111 000000
6
5
4
3
2
1 SOFTBLEND_EN мягкое смешивание 0 – отключено
1 – включено
1
0 FREQ_MODE Режим управления синтезатором частоты 0 – нормальный
1- ручной, записью значения в регистр 13,14 (08H)
0

Байт 12/Байт 13 (по фирменному описанию 08H) ручная установка частоты синтезатора.


Регистры чтения

Байт 00 (по фирменному описанию 0AH)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 RDSR RDSR – данные 0 –  RDS/RBDS группа не готова
1 –  RDS/RBDS группа готова
0
6 STC Флаг настройки на станцию или окончания поиска Поиск/Настройка Выполнено.
0 = идет поиск
1 = Настройка выполнена
Флаг Поиск/Настройка устанавливается, когда операция настройки на станцию завершена.
5 SF Флаг неудачного поиска станции. Неудача поиска.
0 = Поиск завершился успешно, 1 = Поиск неудачный
Флаг неудачного поиска устанавливается, когда операция поиска не может найти канал с уровнем RSSI больше значения заданного битами SEEK_TH_OLD [5:0].
4 RDSS  Флаг синхронизации RDS Синхронизация RDS
0 = Декодер RDS не синхронизированы (по умолчанию)
1 = декодером RDS синхронизированы
Доступна только в режиме RDS
3 BLK_E Флаг обнаружения блока
E -данных
Когда RDS включено:
1 = Блок Е был обнаружен
0 = Блок Е не найден
2 ST Флаг индикатора стерео-сигнала Индикатор Стерео – сигнала.
0 = Mono; 1 = Stereo.
Этот сигнал доступен на выводе GPIO3, если установить биты GPIO3 [1:0] = 01.
1 READCHAN[9:8] Номер выбранного канала бит 9
0 бит 8

Байт 01 (по фирменному описанию 0AL)

Бит Имя Функция Параметр Значение по умолчанию
(после сброса)
7 READCHAN[7:0] Номер выбранного канала Номер выбранного канала. Для получения частоты настройки необходимо:Для BAND = 0 – Частота настройки = шаг сканирования (kHz)x READCHAN[9:0]+ 87.0 MHz
Для BAND = 1 или 2 – Частота настройки = шаг сканирования (kHz)x READCHAN[9:0]+ 76.0 MHz
Для BAND = 3 – Частота настройки = шаг сканирования (kHz)x READCHAN[9:0]+ 65.0 MHzШаг сканирования – биты SPACE[1:0] – 00 = 100 kHz; 01 = 200 kHz; 10 = 50kHz; 11 = 25KHz.Биты READCHAN[9:0] – обновляется после настройки или операции поиска.
6
5
4
3
2
1
0

Байт 02 (по фирменному описанию 0Bh)

Бит Имя Функция Параметр По умолчанию
7 RSSI[6:0] Индикатор уровня принимаемого RSSI сигнала 0000000 = min – 1111111 = max (0-127)
RSSI шкала логарифмическая.
0
6
5
4
3
2
1
0 FM TRUE Тип канала (выбранной частоты) Показывает присутствует на заданной частоте радиостанция или нет)
1 = текущий канал станция, 0 = текущий канал не станция
0

Байт 03 (по фирменному описанию 0Bl)

Бит Имя Функция Параметр По умолчанию
7 FM_READY

1=ready, 0=not ready

0
6 не используется 0
5 0
4 ABCD_E Индикатор типа передаваемого блока данных

1 = блок идентификатор регистров данных 5,6,7,8 (0ch, 0dh, 0Eh, 0fh) передается данные блок Е
0 = блока идентификатор регистров данных 5,6,7,8 (0ch, 0dh, 0Eh, 0fh) передаются данные A, B, C, D

3 BLERA[1:0] Уровень ошибки RDS_DATA_0 Блок уровня ошибки RDS_DATA_0,
и всегда читается как Уровень ошибки RDS BLOCK A (в режиме RDS) или Е (в режиме RBDS, когда флаг ABCD_E = 1).
00 = 0 ошибок, требующих коррекции
01 = 1 ~ 2 ошибок, требующих коррекции
10 = 3 ~ 5 ошибок, требующих коррекции
11 = 6 + ошибки или ошибки в контрольное слово, коррекция невозможна.
Доступна только в режиме многословном RDS
2
1 BLERB[1:0] Уровень ошибки RDS_DATA_1

Блок уровня ошибки RDS_DATA_1,
и всегда читается как Уровень ошибки RDS BLOCK Б (в режиме RDS) или Е (в режиме RBDS, когда флаг ABCD_E = 1).
00 = 0 ошибок, требующих коррекции
01 = 1 ~ 2 ошибок, требующих коррекции
10 = 3 ~ 5 ошибок, требующих коррекции
11 = 6 + ошибки или ошибки в контрольное слово, коррекция невозможна.
Доступна только в режиме многословном RDS

0

Следующие регистры это данные RDS/RDSS

Байт Имя Биты Функция По умолчанию
Байт 04 (по фирменному описанию 0Ch) RDSA [15:8] BLOCK A ( в RDS режиме) или BLOCK E (в RBDS режиме когда флаг ABCD_E = 1) 16’h5803
Байт 05 (по фирменному описанию 0Cl) [7:0]
Байт 06 (по фирменному описанию 0Dh) RDSB [15:8] BLOCK B ( в RDS режиме) или BLOCK E (в RBDS режиме когда флаг ABCD_E = 1) 16’h5804
Байт 07 (по фирменному описанию 0Dl) [7:0]
Байт 08 (по фирменному описанию 0Eh) RDSC [15:8] BLOCK C ( в RDS режиме) или BLOCK E (в RBDS режиме когда флаг ABCD_E = 1) 16’h5805
Байт 09 (по фирменному описанию 0El) [7:0]
Байт 10 (по фирменному описанию 0Fh) RDSD [15:8] BLOCK D ( в RDS режиме) или BLOCK E (в RBDS режиме когда флаг ABCD_E = 1)  16’h5804
Байт 11 (по фирменному описанию 0Fl) [7:0]

ch-cat-15


Дополнительные материалы:
Описание –  

Значок

Интегральные радиоприемники - описание RDA5807FP_en 650.29 KB 3781 downloads

Интегральные радиоприемники - описание RDA5807FP_en ...

RBDS versus RDS – What are the differences and how can receivers cope with both systems – 
Значок

Интегральные радиоприемники - RDSS/RDS 41.08 KB 2913 downloads

Интегральные радиоприемники - RDSS/RDS ...

RDS: The Radio Data System –
Значок

Интегральные радиоприемники - RDS - The Radio Data System 1.70 MB 3690 downloads

Интегральные радиоприемники - RDS - The Radio Data System ...


Это может быть интересно


  • Модуль CAN в микроконтроллерах PIC18Модуль CAN в микроконтроллерах PIC18
    Введение   CAN последовательный интерфейс связи, который эффективно поддерживает распределенное управление в реальном масштабе времени с высокой помехозащищенностью. Протокол связи полностью определен Robert Bosch GmbH, в спецификации требований CAN 2.0B …
  • LCD драйвер – UC1601sLCD драйвер – UC1601s
    http://svetomuzyka.narod.ru/project/UC1601s.html Читайте обновление на http://catcatcat.d-lan.dp.ua/?page_id=178 В данный момент можно приобрести в ООО “Гамма” несколько типов индикаторов на драйвере UC1601s. RDX0048-GC, RDX0077-GS, RDX0154-GC и RDX0120-GC выполнены по технологии COG. Метки:UC1601s
  • ESP8266  процедура получение данных даты и времени от серверов точного времени.ESP8266 процедура получение данных даты и времени от серверов точного времени.
    Эта функция доступна уже в версии 1.6.1. Для многих приложений, необходимо часы реального времени,  если в вашем проекте есть модуль WiFI ESP8266, то легко можно сделать следующим образом. Процедура описывает …
  • HVLD модуль на примере PIC24FJ128GA204HVLD модуль на примере PIC24FJ128GA204
    HVLD модуль представляет собой простое устройство, для контроля напряжения питания микроконтроллера или внешнего напряжения (через делитель). Его задача при “выходе” напряжения за заданные пределы сформировать сообщение микроконтроллеру, что необходимо выполнить …
  • MCC PIC24 – модуль OUTPUT COMPARE – режиме ШИМMCC PIC24 – модуль OUTPUT COMPARE – режиме ШИМ
    Во многих системах управления, для формирования управляющих сигналов требуется модуль ШИМ, он позволяет не только формировать импульсы заданной длительности, но и с применением обычного RC фильтра строить простые ЦАП. MCC …
  • Оптосимистор и его применениеОптосимистор и его применение
    Эрве Кадино “Цветомузыкальные установки” Ответ на вопрос – управление мощным тиристором или симистором, от терморегулятора. Статья в pdf Оптосимистор принадлежат к классу оптронов и обеспечивают очень хорошую гальваническую развязку (порядка …
  • PIC18F25K42 – v. A001 – выявленные баги.PIC18F25K42 – v. A001 – выявленные баги.
    Модуль I2C Не работает при использовании в стандартной конфигурации MCC. Требует особой нестандартной конфигурации и управления для нормальной работы. Обойти Обход проблемы возможен библиотека см статью. Модуль ADC2 На выводе RA0, …
  • MCC – K42 – настройка модуля DMAMCC – K42 – настройка модуля DMA
    MCC – в версии v.3.95.0 и начиная ядра 4.85.0 конфигуратор предоставляет графический интерфейс для настройки модуля DMA. Для начала: Посмотреть какая версия МСС можно в закладке версии, если у вас …
  • OLED RET012864E/REX012864JOLED RET012864E/REX012864J
    RET012864E/REX012864J ОЛЕД индикатор производитель Raystar-Optronics приобретался в http://www.microchip.ua/ к сожалению никакой информации на сайте поставщика нет. Поэтому решил работу с этой версией индикатора на драйвере SSD1305 предоставить на своем сайте. Так как есть ошибки …
  • PIC18 – System ArbitrationPIC18 – System Arbitration
    Системный арбитр. Разрешает доступ к памяти между выборами уровнями системы (т.е. Main, Interrupt Service Routine) и выбором периферийных устройств (т.е. DMA и Scanner) на основе назначенных пользователем приоритетов. Каждый из уровней …