admin

Радиомодуль с RDA5807M продлевает жизнь старых радиоприёмников

2333 posts in this topic

admin    2345

В статье приводится описание четырёх вариантов FM-радиоприёмников на микроконтроллерах ATMega8 и ATTiny2313 и на FM-тюнере RDA5807M.

3e26a43de8fb59afb02c694a98842b7c.jpg

Ссылка на статью: http://cxem.net/tuner/tuner87.php

Автор статьи: http://cxem.net/profile/12798/

Share this post


Link to post
Share on other sites
asvetp    256

Программы для микроконтроллеров написаны на ассемблере. Доступны для скачивания как исходники, так и файлы моделирования схем в Протеусе. Изображение текстовой информации на модели в Протеусе практически не отличается от реального в железе, поэтому было решено не загромождать статью фотографиями.

Share this post


Link to post
Share on other sites
asvetp    256

При использовании микроконтроллера в планарном корпусе и других SMD-компонентов печатная плата полчится очень компактной и пометится в любой радиоприёмник.

Share this post


Link to post
Share on other sites

Бюджетные Wi-Fi-/ Bluetooth-решения для IoT-применения

Обзор основной линейки поставок и новинок Espressif Systems – экономически выгодных SoC Wi-Fi-/ Bluetooth-чипов и модулей для IoT-применений: от простых портативных устройств до промышленных решений

Подробнее...

CheAl    3

Название станций пишется в программе, а как для другого города.

Не программист, повторитель. Для таких как я, необходимо написать инструкцию,

как прописывать свои станции, хотя бы краткую.

Share this post


Link to post
Share on other sites
asvetp    256

Для того, чтобы прописать частоту и название станций в Вашем городе, нужно открыть ассемлерный файл программы (например RDA5807M_&_WH1602.asm) в любом текстовом редакторе, можно даже в блокноте, но удобнее это будет сделать в привычной вам среде программирования. Далее нужно перейти в конец файла, где перечислены названия станций (ниже метки freq_st:). Здесь вы увидите строки вида:

.DB 140,' ','R','a','d','i','o',' ','S','h','a','n','s','o','n',0 ;Радио Шансон 1010 8C

После директивы "DB" нужно ввести число шагов настройки частоты (один шаг равен 100 КГц). Это число определяется как разность между частотой радиостанции представленной в виде числа шагов и нижней границей диапазона равной 870 шагов (87 МГц). В привдённом выше примере для частоты 101,1 МГц имеем:

1010-870=140

Далее через запятую в кавычках идут 14 символов названия станции, в том числе пробелы, при помощи которых вы можете оцентрировать название на экране. Заканчивается строка нулём, который является признаком окончания вывода сообщения на дисплей. После точки с запятой идёт Ваш комментарий, который при компилляции игнорируется, поэтому можно писать там, что угодно.

Произведя таким образом изменения в программе, запускаете компиллятор (например AVRASM2) и получаете готовый для программирования HEX- файл. Удобнее это делать, в среде программирования, (например AVR Studio 4) по команде "Build". Если у вас установлена программа Proteus, то вы можете, нажимая виртуальные кнопки, понаблюдать на экране как будет выглядеть название станции на дисплее. Если что-то вас не устроит, вы можете оперативно, не прибегая к программированию микроконтроллера, исправить программу.

Share this post


Link to post
Share on other sites

Управляемый свет интернета вещей: Philips и протокол DALI 2.0

Полностью программируемые драйверы Philips Xitanium поддерживают все варианты регулировки яркости света и силы тока. Надежность системы значительно повышается при интеллектуальном мониторинге температуры светодиодного источника света. Разнообразие моделей в семействе обеспечивает максимальную гибкость в настройке рабочих параметров.

Подробнее...

CheAl    3

Спасибо за ответ.

Буду пробывать, для этого всё есть.

Успехов и удачного развития конструкции.

Share this post


Link to post
Share on other sites
asvetp    256

Сегодня заметил, что в приведённом мною выше примере есть неточность. Этот расчёт относится к частоте 101,0 МГц, а не 101,1. Что касается проверки работы радиоприёмника в Протеусе, то хочу добаить, что у меня установлен Протеус версии 7.7 и, соответственно, выложенные мною файлы относятся к этой версии. В более новых версиях Протеуса программа симуляции может не работать. Поэтому, возможно придётся переустановить в схеме I2C DEBUGGER, а так же необходимо убедиться, что в библиотеке вашей версии Протеуса имеется модель дисплея Nokia3110. Если модели нет, то её нужно скачать и установить, после чего, также на схеме нужно удалить старый и поставить вновь установленный дисплей.

Share this post


Link to post
Share on other sites
Vitemk    13

Чтобы не плодить темы, спрошу здесь.

В даташите на RDA5807M указано, что он(а) может работать с опорной частотой в 32768 Гц, 12МГц, 24МГц и т.д. Но на всех схемах, что находил, всегда использовался модуль с уже установленным кварцем на 32768Гц. Мне интересно, ставил ли кто-нибудь другие кварцы. Просто считаю, что с кварцем на более высокую частоту и настраиваться будет точнее. Но нет ли каких подводных камней.

P.S. Чтобы предотвратить вопросы, что мешает использовать установленный кварц, предупреждаю: у меня нет модуля с кварцем, есть только сама микросхема и кварцы на 32768Гц и 12МГц, причем 12МГц-ых кварцев больше.

RDA5807M.pdf

Edited by Vitemk

Share this post


Link to post
Share on other sites
taif    18

Толково! Подобные темы на сайте "умерли". Сваял я на атмеге8 с нокиевским дисплеем. Облазил инет, нашел пару прошивок , но не то! Эта, Ваша,с автопоиском само, что надо!!! 

И главное, как здорово и доходчиво, Вы описали "переделку" прошивки под свои станции.  Спробую обязательно! 

У меня дисплей, при нажатии кнопок перебора  готовых станций, заполняется буквами и символами. Как избавиться?  И конечно бы контрастность подправить.

Спасибо, asvetp!

 

Share this post


Link to post
Share on other sites
asvetp    256

Настроить контрастность дисплея даже проще, чем записать частоты радиостанций в вашей местности. Для этого в драйвере ЖК-индикатора (файл Nokia5110_driver.asm) нужно найти раздел "Таблица кодов команд инициализации LCD". Там вы увидите строку
.db 0x21, 0xBC, 0x06, 0x13, 0x20, 0x0C
В этой строке замените шестнадцатеричное число 0xBC на другое, например на 0xC8 и перекомпилируйте проект в Протеусе или в другой программе. Возможно придётся подобрать это число, если контрастность будет слишком большой и будут видны тёмные прямоугольники вокруг знаков.

Уважаемый taif, что касается искажения информации на дисплее, то возможно у вас слишком длинные провода от кнопок. Попробуйте припаять параллельно кнопкам конденсаторы ёмкостью от 10 до 33 nF. Кроме того развязывающие конденсаторы С2 и С3 должны быть как можно ближе к микросхемам. Желательно поставить такой же конденсатор 0,1 мкФ на ножки питания LCD (6-я и 8-я ножки Nokia5110).

Share this post


Link to post
Share on other sites
taif    18

Доброго дня asvetp. Спасибо, за толковое и доброжелательное отношение к бездарям от программирования. Редко кто, здесь,  на ресурсе,  так доходчиво объясняет.

С кракозябрами я так и подозревал, хотя, дополнительных проводов от платы у меня  нет, но, видимо, придется переразвести плату, согласно Вашим рекомендациям.

Ну и, как водится у неведующих: Как можно увеличить буквы шрифта. Хочется заставку  в верху дисплея другую написать

С контрастностью же - заменил дисплей и контрастность что надо.

Превеликое Вам спасибо!

 

Share this post


Link to post
Share on other sites
serg123    34
В 27.04.2016 в 10:07, asvetp сказал:

Для того, чтобы прописать частоту и название станций в Вашем городе, нужно открыть ассемлерный файл программы

Зачем прописывать названия станций, сейчас практически все они передают эту информацию через RDS остается только ее прочитать и все, ну а частота просто прописывается из регистра настройки или авто поиска, я у себя так делал, правда под пик и нокиевский дисплей.

Share this post


Link to post
Share on other sites
taif    18
42 минуты назад, serg123 сказал:

Зачем прописывать названия станций.

А Вы, расскажите, как это сделать, так же доступно, как это делает  asvetp.

Share this post


Link to post
Share on other sites
asvetp    256

По мнению многих радиолюбителей информация по каналу RDS безошибочно распознаётся только от мощных радиостанций и при хороших условиях приёма. Часто на дисплее отображаются нечитаемые наборы символов. Кроме того многие радиостанции нарушают правила размещения информации и она содержится не в том блоке,  который предназначен для передачи названия станции.

Впрочем, я думаю, было бы всем интересно, если бы кто-то из форумчан поделился успешным решением этой проблемы применительно к обсуждаемым схемам.

Share this post


Link to post
Share on other sites
serg123    34

На счет уровня сигнала согласен, если будет интересно могу поделится своим вариантом схемы под RDA5807M и pic16f88 правда а также исходником.

Share this post


Link to post
Share on other sites
asvetp    256

Спрашивает taif как увеличить размер шрифта. В этом месте, уважаемый taif, Вы подошли к самому интересному в радиолюбительской практике, а именно к творческому подходу и стремлению усовершенствовать собранную схему. И как раз решение таких задач и привлекает нас к сборке радиоприёмников и других самоделок и доставляет массу удовольствия. Ведь в конце концов радиоприёмник можно купить и готовый.

Что касается увеличенного шрифта, то его в моих файлах нет, за исключением цифр. Шрифт можно поискать в интернете или создать самому. Для этого существуют специальные программы. Затем нужно переделать файл основной программы в той её части, которая отвечает за вывод информации. Вот вам подходящий случай для того, чтобы лучше разобраться в программировании.

 

 

Edited by asvetp
опечатка

Share this post


Link to post
Share on other sites
serg123    34

Собственно вот реставрировал карманный приемник и собирал чуть помощнее для дачки. 

RDA5807.zip

Edited by serg123

Share this post


Link to post
Share on other sites
taif    18

Здравствуйте, asvetp. Я опять со своими тараканами, с кракозябрами, то бишь. Самая длинная дорожка к кнопке платы 5.5см. Запараллелил все кнопки 30пф. Конденсаторы указанные Вами на ноги МК поставил. А избавления нет. Лишние символы появляются при включении записанных станций. В режиме авто все нормально. Пропадают кракозябры после выключения-включения питания.

serg123, где же Вы раньше были?? ))) Месяц я таскался по сайтам  в поисках примерно такого девайса. Ладно хоть у asvetp, нашел. А тут и Вы. Надоть и ваш вариантик спробовать. Меня именно с  RDS интересует. Нынче это уже не "писк", но престижно! :-))

Edited by taif
запятая

Share this post


Link to post
Share on other sites
serg123    34

У меня RDS пока рассчитан только на чтение названия станций, вторую строку пока не выводил да и сома прошивка это пока первый вариант так сказать, будет свободное время допишу запись в eeprom громкости и частоты. 

Share this post


Link to post
Share on other sites
taif    18
Только что, serg123 сказал:

У меня RDS пока

Ну, что же, будем подождать.))

Share this post


Link to post
Share on other sites
asvetp    256

taif , трудно сказать, не видя перед собой устройства. Я вначале предположил, что нарушается синхронизация при обмене с модулем RDA5807M, но Вы пишете, что кнопки автопоиска работают нормально. А не могли ли Вы нечаянно изменить программу при записи частот своих радиостанций? Проверьте это путём сравнения например в программе "Тотал Командер". Попробуйте также перезаписать программу в контроллер, предварительно стерев память программ и EEPROM. Нормально ли отображается на дисплее информация о ранее сохранённой станции  при включении радиоприёмника?

Share this post


Link to post
Share on other sites
taif    18

Добрый вечер, asvetp  Нет, эта проблемка возникла и не с переделанной прошивкой. Вот моя плата, возможно развел не совсем правильно.

FM.rar

Share this post


Link to post
Share on other sites
asvetp    256

taif, я не могу открыть ваш файл программой Sprint-layout 6.0. Или может он из другой программы. Преобразуйте файл в графический формат. Не думаю, однако, что при различной разводке платы так стабильно повторяется описываемый дефект. Здесь что-то другое.  Какой конкретно дисплей стоит у Вас? Повторю вопрос: нормально ли отображается на дисплее информация о ранее сохранённой станции  при включении радиоприёмника?

Share this post


Link to post
Share on other sites

Your content will need to be approved by a moderator

Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • Guest Юра
      By Guest Юра
      Добрый день!
      Очень нужна помощь, что бы понять, есть ли возможность модернизировать схему. В теме микроконтроллеров я не шарю.
      Есть устройство управления силовыми нагрузками с помощью реле, вот это:
      http://www.carymart.com/2-channel-10a-dc-reversing-motor-remote-controller-speed-adjustable-p-1528.html
      Этими реле через сборку транзисторов uln2003a управляет микроконтроллер em78p156elpj-g
      http://html.alldatasheet.net/html-pdf/60152/EMC/EM78P156ELP/325/6/EM78P156ELP.html
      который получает команды через приемник:
      http://www.carymart.com/super-regeneration-rf-wireless-receiver-module-dc-5v-p-699.html
      он же на ebay:
      http://www.ebay.com/itm/5PCS-MX-05V-Chip-Super-Regenerative-RF-Wireless-Receiver-Module-DC5V-315Mhz-/151572645578?hash=item234a6f06ca:g:CFEAAOSwdzVXvBpB
      Этот приемник впаян в основную плату и имеет четыре пина
      1 GND
      2 RXD
      3 закорочен с 2
      4 VCC
      GND идет на общий минус
      RXD идет на ногу 8 контроллера em78p156elpj-g
      VCC идет на ногу 14 контроллера em78p156elpj-g (в даташите обозначена VDD)
      Описание приемника:
      Model No.: 0020238
      Working voltage: DC5V
      Working current: 4mA
      RF Sensitivity: -103dBm
      Modulation Method: Amplitude modulation (ASK or OOK)
      Output Level : TTL Level (5V)
      Output Type : Serial Output (manchester code)
      Working temperature: -20°C ~ +70°C
      Type: Receiver Module for Fixed Code (without decode)
      А вопрос такой: можно ли заменть радио приемник на какой-то wi-fi модуль с управлением через приложение для Android?
      Являются ли стандартными команды, передаваемые через RXD и есть ли такие модули у китайцев?
      или контроллер em78p156elpj-g программируется под конкретные команды от радио модуля и подобрать wi-fi модуль без
      перепрограммирования не удастся? Или я все не так понимаю вообще?
    • Guest Борис
      By Guest Борис
      Здраствуйте. Проблемма такая существующие (доступные мне) радиомодули имеют мощность 8, 17, 20 дбм.
      Нужно дотянут до 30дбм (1Вт), Видимость непрямая и сигнал уже через сотню метров теряется, местность сильно пересечена, много зелени, посему обещаных 200...300м тупо нет и в помине.
      Проблемка в чем? Как сделать усилитель на определенную частоту я представляю: транзистор, колебательный контур, но тут несколько каналов. Я немного в замешательстве, как это делается, например в рациях? Как сделать широкополосный усь?
    • Guest Qant
      By Guest Qant
      Подскажите пожалуйста название хорошего радиомодуля, для передачи аналогового сигнала.
  • Сообщения

    • А чего так? Правды не хочется знать? Сколько уж можно-то от правды бегать по майданам? И на счет самоидентичности - не чушь. Я не сразу это понял, но теперь тебе (и не только тебе - всем вам, небратья) будет сложно меня переубедить, ибо факты - вещь стойкая. Кстати, ваши СМИ - тот еще забор. А доказательства где? Еще раз для особо одаренных: снимки из космоса покажут отдельно стоящего солдата, не то что танк - где снимки? Блоггеры у них там информацию предоставляют... бугага.
    • К сожалению всё давно утрачено. Писалось на Algorithm Builder-е. Кратко могу изложить принцип, но не ранее выходных.
    • Чушь Полегче на поворотах И так будет, пока не добъёмся нужного результата.
    • да- пожалуйста. R4 и R5  я бы увеличил до 10 кОм.    R14 и R15  как то мало,  ток 5.8А почти в притык.  FCP22  на 100 гр максимальный ток 13А - маловато будет.   С9 -    что в ней такого большого ?     лучше не надо.
    • Всем привет, вернулся из командировки, продолжаем печатать платки и комплектовать киты. На данный момент приехало следующее: Платки LM+AD (последняя партия, больше не будет, разве что появится вариант с узлом защиты на борту, как в Vidalgo и в ZD-50). Комплекты плат усилителя Лайкова (УМ, БП, защита) Трансформаторы для усилителей на LM3886 - 60Вт, 2 x 22V x 1.3A - 1000р Трансформаторы для УМ Лайкова 7.0 - 250Вт, 4 х 25V х 2.4А + 2 x 15V х 0.3A - 2200р Трансформаторы и корпуса для лбп PSL-3604 (есть свободные в наличии) Актуальная информация по стоимости и наличию всегда в первом посте этой темы. На данный момент занялись комплектацией полных китов к Лайкову. С уважением, Виталик