Skip to content
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
Collapse
  1. Главная
  2. Проекты
  3. Графика, звук, мультимедиа
  4. Новая жизнь старого кассетника

Новая жизнь старого кассетника

Запланировано Прикреплена Закрыта Перенесена Графика, звук, мультимедиа
1 Сообщения 1 Posters 41 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • piP Не в сети
    piP Не в сети
    pi
    написал в отредактировано pi
    #1

    Завалялся у меня старый проигрыватель дисков, кассет и т.д. – старый стал, лазер подсел, даже на максимальном токе диски уже не читал. Да и морально устарел – ни тебе MP3, ни USB. Но сделан был добротно, посему и выкинуть жалко было. Валялся в подвале, место занимал. Но благодаря гениально-простому применению ARM-а английскими инженерами, наличию свободного времени в связи с отсутсвием загрузки в проектах, решил я вдохнуть жизнь с железяку, безмолвно просившую меня открытой крышкой дископриемника.

    Да в принципе, я уже давно задумывался об устройстве, позволяющем мне слушать радио на русском/украинском языках, ввиду отсутсвия наличия эфирного радио на оных.
    80bbc764-3651-421b-9745-267e57089871-image.png

    Проигрыватель был успешно принесен из подвала и разобран для идентификации нужных входов/выходов. А нужно мне было не много – 5В и вход стерео на усилитель мощности. В принципе, это заняло найбольшую часть времени, потраченного на конструирование – без осцилографа при помощи одного только мультиметра ... Но, метод научного тыка доказал свою эффективность и необходимые входы были найдены. Правда вместо необходимых 5 В нашел только 13В, посему пришлось ставить КРЕН на 5В/1А, соответственно лишние 4..8Вт пришлось рассеивать, благо под рукой оказался радиатор из старого блока питания. Ну, зато дёшево

    2d033f36-0d4e-489e-9366-b850263740a4-image.png

    Дополнительно поставил релюшку – 13 вольт брались непосредственно с блока питания и в стендбае не отключались. Итак, привод диска – на выкинштейн. Плату управления – туда-же. Освобождаем место под радиатор. Закрепляем «малинку» винтами к корпусу. Между делом паяем блок управления и индикации (во как), состоящее из одного светодиода и двух кнопок, подтягиваем к +3.3В, чтобы противостоять наводкам от ВиФи (в «GPIO для чайников» все подробно описано).

    dc8efba6-e963-4b37-a709-da18be90db17-image.png

    За основу программногообеспечения берем примерчик из 5го урока и модифицируем следующим образом:

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

    Б) добавляем обработку второй кнопки (одна кнопка щелкает каналы вперед, другая – назад)

    int do_parent (int fd, pid_t p, int n)
    {
        signed char key_pressed =0;
        while(!key_pressed)   {
    
          if (bcm2835_gpio_lev(KEY_UP)) key_pressed = INCREASE_STATION;
          if (bcm2835_gpio_lev(KEY_DN)) key_pressed = DECREASE_STATION;
          if (key_pressed) printf("Key : %d\n", key_pressed);
    
        }
    

    В) Когда переключаемся на другой канал – гасим светодиод . В случае успешного захвата канала – зажигаем светодиод. Достаточно тривиально.

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

    02578143-c7c6-4246-864b-06e2bf691365-image.png

    1 ответ Последний ответ
    0
    • piP pi переместил эту тему из Блоги сообщества Raspberry Pi в

    • Войти

    • Нет учётной записи? Зарегистрироваться

    • Login or register to search.
    • Первое сообщение
      Последнее сообщение
    0
    • Категории
    • Главная
    • Документация
    • Последние
    • Пользователи