Каталог статей


Выбранная схема!!!


6622
Носимое FM-радио в стиле часов с сенсорным экраном

Носимое FM-радио в стиле часов с сенсорным экраном

Радио остается одним из самых живучих и незаменимых средств связи, сохраняя свою актуальность и по сей день. Его эволюция – от больших, громоздких устройств к компактным, портативным формам – была поразительной. Это устройство продолжает эту эволюцию, создавая один из самых маленьких носимых и портативных FM-радиоприемников на сегодняшний день.

Были разработаны две инновационные версии: носимое FM-радио в виде часов и еще одна, достаточно компактная, чтобы поместиться в наушнике. Версия в виде часов построена на базе IndusBoard Coin V2 диаметром всего 3 см.

Он оснащен круглым LCD GC9A01 диаметром 3 см с сенсорным интерфейсом, работающим от микросхемы сенсорного драйвера CST816S, как показано на рис. 1. Необходимые компоненты for для сборки устройства перечислены в таблице спецификации.

Рис. 1. Авторский прототип for — портативного FM-радиоприемника в виде часов

Вторая версия предназначена для работы в качестве компактного FM-радио, размещенного непосредственно в наушнике. Прототип этой версии скоро будет описан в другой статье.

Цель этих разработок — сделать FM-радио как можно меньшим и удобным для ношения, независимо от того, интегрировано ли оно в наушник или легко встроено в IndusBoard. Для достижения последнего был выбран FM-стерео радиомодуль RDA5807M.

В этой статье описывается конструкция компактного FM-радиоприемника с сенсорным дисплеем. В следующей статье мы рассмотрим вторую версию, которая помещается в наушник.

Спецификация
КомпонентОписаниеКоличество
IndusBoard Coin V2Основной контроллер1
GC9A01 круглый LCDСенсорный экран диаметром 3 см1
ИС сенсорного драйвера CST816SДля сенсорного управления, встроенного в дисплей1
RDA5807M Стерео радиомодуль FMДля приема FM-сигналов1
Аудиоразъем/наушникиДля прослушивания радио1
3,7 В Li-Po аккумуляторПортативный источник питания1

Демо-видео

Видео: https://www.youtube.com/watch?v=3Ey-AdfE79s

Программирование

Для начала необходимо установить несколько основных библиотек через диспетчер библиотек Arduino, доступный из меню инструментов. К ним относятся: `TFT_eSPI` for управление дисплеем, `CST816S` for управление сенсорным экраном, `RDA5807M` for функция FM-радио и `TimeLib` for управление функциями часов.

Рис. 2: Конфигурация for отображается в файле User_Setup.h библиотеки TFT_espi

После установки библиотек необходимо настроить библиотеку `TFT_eSPI` для поддержки дисплея GC9A01. Для этого необходимо перейти в папку «Документы», открыть каталог Arduino, получить доступ к папке «Библиотеки» и найти в ней папку «TFT_eSPI». Внутри него необходимо открыть файл `User_Setup.h` и раскомментировать строку, соответствующую отображению GC9A01. Затем контакты SPI необходимо настроить в соответствии с настройками IndusBoard.

Можно использовать любые доступные контакты на плате. В этом case контакты 21, 1, 3, 4, 5, 6, 7, 8 и 9 использовались for для дисплея и сенсорного интерфейса. Эти определения контактов должны быть правильно отражены в коде. На рис. 2 показана конфигурация for, отображаемая в файле User_Setup.h библиотеки TFT_eSPI.

Рис. 3. Фрагмент кода for, устанавливающий контакты for сенсорного драйвера

В исходный код сначала включаются необходимые библиотеки, а затем устанавливается for драйвер сенсорного экрана. Затем создается базовый пользовательский интерфейс (UI) for FM-радио с тремя кнопками: воспроизведение/пауза и двумя for переключения каналов.

Код отслеживает координаты касания, чтобы определить, какая кнопка нажата, и выполняет соответствующее действие, например изменение частоты FM или переключение воспроизведения и паузы.

Схема и работа

Рис. 5 показана принципиальная схема миниатюрного ФМ-устройства. Он построен на базе GC9A01 (MOD1), IndusBoard Coin V2 (MOD2), сенсорного экрана CST816, стереорадиомодуля RDA5807M FM, двух динамиков (SP1 и SP2), Li-Po батареи 3,7 В и нескольких других компонентов.

Рис. 5: Принципиальная схема

Сенсорный дисплей и FM-радио используют связь по протоколу I²C for, что позволяет подключать их либо к одному и тому же порту I²C на плате IndusBoard Coin, либо к разным портам. Для простоты в этой настройке используются разные порты. Выводы SDA и SCL for сенсорного дисплея определены в коде и подключены соответственно, как показано на схеме. Драйвер сенсорного экрана использует аппаратные контакты I²C 8 и 9. Сам дисплей использует SPI и подключается к контактам SPI IndusBoard, как определено ранее в файле UserSetup.

IndusBoard Coin V2 обеспечивает питание 3,3 В через контакт VIN или 3 В, который питает дисплей GC9A01, сенсорный контроллер CST816S и FM-радиомодуль RDA5807M. Общее заземление (GND) используется всеми компонентами для обеспечения правильной работы.

Строительство

Для вывода звука FM к разъему аудиовыхода динамика можно подключить аудиоразъем или динамик. Рекомендуется использовать аудиоразъем, позволяющий использовать наушники или динамик по своему усмотрению. В этом устройстве использован динамик со встроенным усилителем. Оба динамика (SP1 и SP2) подключены к контактам LOUT и ROUT RDA5807M для обеспечения вывода стереозвука.

Для сборки этого компактного носимого FM-устройства компоненты припаиваются к задней стороне IndusBoard Coin V2, while, дисплей GC9A01 устанавливается поверх платы for, обеспечивая хорошую видимость.

Процесс пайки начинается с подготовки IndusBoard Coin V2. Необходимые контакты обозначены на схеме. К ним относятся такие контакты, как 3V, GND, TX, RX и цифровые контакты с 1 по 44. Плату следует очистить, чтобы избежать проблем с пайкой.

FM-модуль RDA5807M и сенсорный контроллер CST816S припаяны к задней части платы для экономии места.

Для FM-модуля RDA5807M контакт 5 (SCLK) подключен к контакту 5 (SCL) IndusBoard, контакт while 4 (SDIO) подключен к контакту 6 (SDA). Контакт 2 (GND) подключен к любому доступному контакту заземления, например контакту 1, а контакт 7 (VDD) подключен к контакту 3 В, например for, контакту 2. Контакты 9 (LOUT) и 10 (ROUT) припаяны непосредственно к динамикам (SP1 и SP2) для включения вывода стереозвука. Небольшой антенный провод подсоединяется к контакту 3 (FMIN) и фиксируется для обеспечения эффективного приема сигнала.

Для сенсорного контроллера CST816S контакт 6 (SCL) припаян к контакту 5 IndusBoard, а контакт 5 (SDA) подключен к контакту 6, разделяя шину I²C с модулем FM. Контакт 4 (RST) подключен к контакту 4, а контакт 3 (INT) подключен к контакту 3 на плате IndusBoard. Заземление и питание подаются путем подключения контакта 2 (GND) к контакту заземления, а контакта 1 (VDD) к контакту 3 В. На рис. 6 показаны компоненты, паянные с помощью IndusBoard.

Рис. 6: Компоненты, паяные с помощью IndusBoard

Интеграция FPC

IndusBoard Coin также поддерживает и размещает собственную экосистему FPC. Пользовательские модули могут быть разработаны для беспрепятственной интеграции с использованием шины FPC. Например, можно разработать специальный FM-радиомодуль для подключения к IndusBoard Coin через разъем FPC. На рис. 7 показан двусторонний PCB проекта, а на рис. 8 – IndusBoard с разъемом FPC.

Рис. 7: PCB устройства

Тестирование

Чтобы протестировать устройство, подключите его к аккумулятору напряжением 3,3 В и выполните следующие проверки:

Рис. 4. Интерфейс FM-радио

Изменить FM-станцию с помощью кнопок

В интерфейсе отображаются три сенсорные кнопки:

• Предыдущая кнопка (слева, с координатами prevButtonX=60, prevButtonY=150): серый круг с левым треугольником и тонким прямоугольником

• Кнопка «Далее» (справа, с координатами nextButtonX=180, nextButtonY=150): серый круг с прямоугольным треугольником и тонким прямоугольником

• Проверьте предыдущую кнопку:

– Нажатие этой кнопки уменьшает частоту на 0,1 МГц (пример for с 87,5 МГц до 87,4 МГц)

– Если частота падает ниже 87,5 МГц, она возвращается к 108,0 МГц.

– Дисплей обновляется, показывая новую частоту (пример for, «87,4 МГц»)

• Проверьте кнопку «Далее»:

– При нажатии этой кнопки частота увеличивается на 0,1 МГц (пример for: с 87,4 МГц до 87,5 МГц)

– Если частота превышает 108,0 МГц, она возвращается к 87,5 МГц.

– Дисплей обновляется соответствующим образом.

Воспроизведение и пауза с помощью средней кнопки

Средняя кнопка — это кнопка воспроизведения/паузы (с координатами `playPauseButtonX=120`, `playPauseButtonY=150`) с радиусом 30 пикселей и эффектом градиента (пурпурное внешнее кольцо, фиолетовое внутреннее кольцо).

• Тестовое воспроизведение:

– Нажмите кнопку воспроизведения/паузы.

– Если радио приостановлено («isPlaying=false»), на кнопке отображается значок воспроизведения (треугольник). Нажатие на него включает звук RDA5807M и меняет значок на символ паузы (два прямоугольника).

– Если радио воспроизводится (`isPlaying=true`), на кнопке отображается значок паузы. Нажатие на него отключает звук RDA5807M и меняет значок на символ воспроизведения.

• Аудиовыход:

– Если RDA5807M обнаружен (обозначается зеленой точкой состояния), звук должен быть слышен через динамик, подключенный к контактам LOUT/ROUT RDA5807M, когда звук радиомодуля включен.

– Настройтесь на известную FM-станцию (между 87,5 и 108,0 МГц) с помощью кнопок «Предыдущий/Следующий» for очистите аудиовыход.

– Если RDA5807M не обнаружен (обозначается красной точкой состояния), устройство переключается в режим моделирования, обновляя пользовательский интерфейс без генерации звука.

Рис. 8: IndusBoard с разъемом FPC

Отладка и дополнительные проверки

• Использование последовательного монитора:

– Подключите IndusBoard к компьютеру через адаптер USB-последовательный порт (используя контакты TX/RX, доступен if).

– Проверьте сообщения for, такие как «RDA5807M обнаружен» или «RDA5807M не обнаружен, работает в режиме моделирования», чтобы подтвердить состояние радиомодуля.

– Отслеживание координат касания при нажатии кнопок (например, «Обнаружено касание – Raw (x, y): (1234, 567) Mapped (x, y): (89, 234)»).

• Точность касания:

– Если сенсорные кнопки не реагируют или работают неточно, соответствующим образом измените отображение координат в коде.

Вторая версия FM-радио, помещающаяся в наушник, скоро будет опубликована.

Бонус: Посмотрите полное пошаговое видеоруководство.



Категория: Железо | Добавил: Администратор (15.05.2026)
Просмотров: 8 | Рейтинг: 0.0/0


Всего комментариев: 0

Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов! Подробно тут!
Жалоба

ьте свои комментарии !!!!

Имя *:
Email:
Код *:

Copyright Zloy Soft (Company) © 2008 - 2026