Jump to content
admin

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

Recommended Posts

В статье приводится описание четырёх вариантов 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

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Литиевые батарейки Fanso для систем телеметрии и дистанционного контроля

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

Подробнее

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

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

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

Share this post


Link to post
Share on other sites

Для того, чтобы прописать частоту и название станций в Вашем городе, нужно открыть ассемлерный файл программы (например 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
                     

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

Компэл совместно с Texas Instruments 23 октября 2019 приглашают на вебинар, посвященный системам-на-кристалле для построения ультразвуковых расходомеров жидкостей и газов на базе ядра MSP430. Вебинар проводит Йоханн Ципперер – эксперт по ультразвуковым технологиям, непосредственно участвовавший в создании данного решения. На вебинаре компания Texas Instruments представит однокристальное решение, позволяющее создавать точные недорогие счетчики жидкостей и газов.

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

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

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

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

В даташите на 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

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

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

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

Спасибо, asvetp!

 

Share this post


Link to post
Share on other sites

Настроить контрастность дисплея даже проще, чем записать частоты радиостанций в вашей местности. Для этого в драйвере ЖК-индикатора (файл 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

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

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

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

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

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

 

Share this post


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

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

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

Share this post


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

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

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

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

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

 

 

Edited by asvetp
опечатка

Share this post


Link to post
Share on other sites

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

RDA5807.zip

Edited by serg123

Share this post


Link to post
Share on other sites

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

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

Edited by taif
запятая

Share this post


Link to post
Share on other sites

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

Share this post


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

У меня RDS пока

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

FM.rar

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji 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
      Подскажите пожалуйста название хорошего радиомодуля, для передачи аналогового сигнала.
×
×
  • Create New...