Перейти к содержанию

Конкурс "лучшая Статья По Теме: Аудио"


Рекомендуемые сообщения

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Да, пожалуй, спортивный интерес тут преобладает. А плату вполне можно даже ЛУТом сделать, не говоря о пленочном фоторезисте. Я делал

flac/wav etc -> usb -> XMOS -> ADuM -> PCM1794A -> Никитин на n-канальных полевиках -> Heco Victa Prime 302

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Конечно, после ЦАПа, класса - Hi-End, ЦАП - РСМ2705, трудно слушать.

Правильно сделанный ЦАП, на основе РСМ2705, звучит, лучше кодеков, встроенных в материнки. Такой ЦАП, может быть, неплохой, и недорогой альтернативой, встроенным звуковухам ноутбуков.

Думаю, что ЦАП, на РСМ2705, может быть востребован, не только - начинающими. Он, может заинтересовать, и, более требовательных слушателей, в качестве конвертера USB-SPDIF.

Правильно поставленный вопрос - 80% ответа.

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

...Помоему это вам нужно что-то показывать, а не det'у, достаточно почитать его статьи на этом и прошедших конкурсах. Да и на сайт его заглянуть

Да я, собственно, уже показывал: Вот и Вот

Статью прочитал, по впечатлениям от неё и написал. Теперь прочитал и статью УМЗЧ без общего провода. Автор там некие два резистора забыл (или не знает), без которых не очень хорошо всё получается.

Ну вот со сложностью тут могут быть разногласия МК и аудио на разных ветках электроники...

Приехали... Раскройте любой плеер и полюбопытствуйте.

...я не видел НИЧЕГО написанного Вами...

Вы видели результат:

И идея и воплощение вполне достойные...

...Ждем следующий конкурс и если он будет не по МК с удовольствием побадаюсь с Вами персонально...

В конкурсах, где оцениваются не достижения, я участвовать не собираюсь.

Ай молодец! Спасибо два раза поставил и тут и по ссылке! :)

Если не секрет на каком дисплее проект и на каком микроконтроллере?

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

Ай молодец! Спасибо два раза поставил и тут и по ссылке! :)

Если не секрет на каком дисплее проект и на каком микроконтроллере?

Спасибо за спасибо :)

МК (скорее МП - микропроцессор) AT32AP7000 и 3шт. Atmega48P

Дисплей 5' 800*480 18-бит цвет, название точно не скажу - Китай.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

а что делают 3шт. "сороквосьмых" ? А какой протокол у дисплея? И на какой частоте МП работает?

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

а что делают 3шт. "сороквосьмых" ?...

Одна в пульте ДУ

Две в платах РГ (где реле). Всегда спят, кроме моментов, когда принимают данные и переключают реле, управляются по самодельному синхронному последовательному протоколу. Сделал так, чтобы развязать AT32 c аналоговыми цепями и не тащить по 14 проводов на каждую плату.

...А какой протокол у дисплея?...

Параллельный 24 бит.

...И на какой частоте МП работает?

64МГц

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

Даааа, работа дисплея мне понравилась :) А разве не смог бы справиться какой то ARM7 ? из серии AT91SAM....

Вижу даже оперативка стоит :) или то флеш?

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

Даааа, работа дисплея мне понравилась...

Самому нравится :rolleyes:

...А разве не смог бы справиться какой то ARM7 ? из серии AT91SAM....

Imho - нет. Одна страница видеобуфера - 1152000 Байт. Успеет в realtime перерисовать (а ещё шрифты вычислять надо...)?

...Вижу даже оперативка стоит :) или то флеш?

Это SDRAM - видеобуфер в ней. Флеш с обратной стороны платы, как раз под SDRAM

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

Imho - нет. Одна страница видеобуфера - 1152000 Байт. Успеет в realtime перерисовать (а ещё шрифты вычислять надо...)?
Это SDRAM - видеобуфер в ней. Флеш с обратной стороны платы, как раз под SDRAM

Жесткий Ты пацан! Мне до тебя далеко.. Плату тоже сами разводили?

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

...Жесткий Ты пацан!...

На самом деле я мягкий и пушистый :D .

...Мне до тебя далеко...

На самом деле ближе, чем ты думаешь. Просто однажды нужно очень сильно захотеть... И всё получится.

...Плату тоже сами разводили?

Да. Как раз трассировка - часть моей специальности.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

Да, круто конечно! ;) А декодер ДУ какой прикручивал? Какой то конкретный или универсальный ?

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

... А декодер ДУ какой прикручивал? Какой то конкретный или универсальный ?

Свой собственный :) . У меня радио-ДУ. Пульт рассчитан на управление тремя аудиодевайсами: источник (с ЦАП), собственно пред и УМЗЧ. И работает в обе стороны. Например, в настройках изменил время автоповтора нажатия кнопок, и пульт тоже с этим временем работает.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

А я тоже сначала хотел свой протокол сделать. Но потом идею откинул из за проблем с изготовлением ДУ. Разработал универсальный протокол. Удобно, что захотел то и прикрутил за считанные минуты :)

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

А я тоже сначала хотел свой протокол сделать. Но потом идею откинул из за проблем с изготовлением ДУ...

А какие проблемы? Корпус? Так мы не ищем лёгких путей :D .

...универсальный протокол. Удобно, что захотел то и прикрутил за считанные минуты :)

Удобнее - да. Но зато функциональности такой как на радио - не получить.

У меня по этому протоколу девайсы ещё и между собой могут общаться. Например, в УМЗЧ клиплимитер сработал, от УМЗЧ идёт команда преду, тот снижает громкость.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

А какие проблемы? Корпус? Так мы не ищем лёгких путей :D .

Удобнее - да. Но зато функциональности такой как на радио - не получить.

У меня по этому протоколу девайсы ещё и между собой могут общаться. Например, в УМЗЧ клиплимитер сработал, от УМЗЧ идёт команда преду, тот снижает громкость.

Да, согласен. Радио ДУ вещь! Можно свою сеть строить. Но разве помехи не лезут от всех дополнительных MCU устройств?

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

...Можно свою сеть строить...

Легко. 2,4ГГц 1 МБит/сек.

...Но разве помехи не лезут от всех дополнительных MCU устройств?

Радиомодуль в преде управляется главным (AT32AP7000) и всегда спит (при этом потребляет < 30 мкА) в готовности на приём.

Принимает пакет, отправляет квитанцию и снова спать. Прием-передача занимают меньше 0,1 мС.

Радиомодуль в источнике управляется таким же главным и ведёт себя также.

В УМЗЧ в качестве главного - Atmega48P. Радиомодуль ведёт себя также.

Радиомодуль в пульте ведёт себя также. Никаких работающих доп. MCU нет :unknw:.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

А какой модуль использовали? Можно модель? все хочу попробовать да все то кривые даташиты (ошибки) то вовсе не доступные..

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

Вот и вся ваша правота,увидели спеца и повсерались.

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

С уважением, Дмитрий

Ссылка на комментарий
Поделиться на другие сайты

А какой модуль использовали?...

Модули на NRF24L01P.

В девайсах свой на основе PTR6000

В пульте PTR6000M

Datasheet тоже не для слабонервных :).

Если что - обращайтесь, смогу - помогу.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

Удобнее - да. Но зато функциональности такой как на радио - не получить.

У меня по этому протоколу девайсы ещё и между собой могут общаться. Например, в УМЗЧ клиплимитер сработал, от УМЗЧ идёт команда преду, тот снижает громкость.

ну вообще то данной ситуации не должно быть в принципе

во вторых от преда(микшера) до оконечника расстояние на длину интерконекта... радиоинтерфейс только ради того чтоб он был?

Feel the difference! ©

Ссылка на комментарий
Поделиться на другие сайты

...ну вообще то данной ситуации не должно быть в принципе...

Какой ситуации? Что клиплимитер сработал?

...во вторых от преда(микшера) до оконечника расстояние на длину интерконекта... радиоинтерфейс только ради того чтоб он был?

Предлагаете проводами?

Это просто пример общения девайсов между собой.

Ещё один пример был чуть раньше. Там стандартный ИК никак не всунешь.

Мне в кайф иногда из соседней комнаты (или прямо с улицы :) ) звуком управлять.

Нет слова "не могу", есть слово "не хочу"...

Ссылка на комментарий
Поделиться на другие сайты

Как же Вы, четвёрка ,смешно выглядите в данной ситуации.

Какая ситуация? Любые притензии предявлять уже поздно, хотя сходи посмотри на те конкурсы там так же было.

С уважением, Дмитрий

Ссылка на комментарий
Поделиться на другие сайты

Какой ситуации? Что клиплимитер сработал?

да, это ж не живой концерт... если выставить усиление преда на нужный уровень при 0 dBFS на выходе ЦАП по клипа в УНЧ быть не может в принципе...

...во вторых от преда(микшера) до оконечника расстояние на длину интерконекта... радиоинтерфейс только ради того чтоб он был?

Предлагаете проводами?

так опять же, учитывая первый пункт - лишнее...

а откуда управлять - дело хозяйское, хоть по диалапу, я не сталкивался с такой необходимостью... Как говорит Махно - понты голимые... :)

Так недолго и в слоупоки попасть

Moderators

аргументы закончились?

Feel the difference! ©

Ссылка на комментарий
Поделиться на другие сайты

так опять же, учитывая первый пункт - лишнее...

а откуда управлять - дело хозяйское, хоть по диалапу, я не сталкивался с такой необходимостью... Как говорит Махно - понты голимые... :)

Неее ребята... радио управление вещь! Можно построить свою сеть и управлять с любой точки дома и даже двора, это касается не только бытовой аудио аппаратуры.

Вот я такой гонщик что прикрутил ИК управление к колодцу . Я с пульта реально могу включить и отключить воду. Хотел еще добавить функцию авто полива по заданному графику, но потом отбросил.

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • Повторюсь - НЕТ, так как у вас там крутилки, что приведет к искажениям при работе в мостовой схеме.
    • Все верно, вы почти все что нужно сделали.  Только не нужно было добавлять это b=UDR; Сразу после старта сбросить флаг flags = 0; А в основном цикле ждать установки флага FLAG_END_RX. И если он установлен, проверять на совпадение строки в буфере (rx_buf) с вашей строкой (AT+QM \ r \ n .....   .....  AT+MP \ r \ n) При совпадении вызывать выполнение нужного алгоритма.
    • У меня до саба ещё дело не дошло, только сейчас думаю купить амп на полкиловатта, но так можно, при условии, что на входе будет моно, и будет срез частот
    • Про флаг Т: если он не используется в основной программе, а у меня он постоянно в деле. для меня меня отложенная обработка прерывания обычное дело, нужно лишь правильно расставить приоритеты частей программы. И обычное дело: выставляешь частоту задающего генератора побольше, делишь его до получения частоты 1000 Гц каким либо таймером, загоняешь в прерывание с флагом. затем закольцовываешь основную программу с проверкой флага прерывания от таймера 1000Гц. загоняешь программу в Sleep. Получаешь кольцо обработки с образцовым интервалом в 1 мс. После любого прерывания проверяешь флаг от таймера, если он, то сбрасываешь флаг и начинаешь перебирать подпрограммы обработки индикаторов, клавиатуры, и тд. и тп, подпрограммы обработки флагов и др. После окончания обработки всех подпрограмм возвращаешься к Sleep. И так по кольцу. Если происходит прерывание не от таймера, программа выходит из Sleep, проверяется флаг от таймера, если не он (а это не он) обратно к Sleep. В большенстве программ использую этот алгоритм.   GPIOR1 и GPIOR2 в 88 условно можно использовать как флаги, но их адреса больше 0х1Е, на них не распространяются команды cbi, sbi, sbic, sbis, и их сначала нужно загрузить в общий регистр, промодифицировать, и заново сохранить. Эта последовательность длинная, и модифицирует SREG, что сводит на нет работу по сравнению с  классическим GPIOR.
    • @korsaj Сегодня попробовал сделать как ты посоветовал. Получился следующий код. #define F_CPU 7372800UL #define BAUND 9600L #define UBRRL_value (F_CPU/(BAUND*16))-1 #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include <stdlib.h> void init_pin(void); #define C_PC0 (~PINC&(1<<PC0)) #define C_PC1 (~PINC&(1<<PC1)) #define LED_1_ON() PORTD|=(1<<PD2) #define LED_1_OFF() PORTD&=~(1<<PD2) #define LED_2_ON() PORTD|=(1<<PD3) #define LED_2_OFF() PORTD&=~(1<<PD3) #define FLAG_END_RX (1<<3) #define FLAG_ERR_RX (1<<4) #define BUF_SIZE 20 char rx_buf[BUF_SIZE]; char buf_index = 0; volatile start=1, flags; char b; ISR(USART_RXC_vect) { b=UDR; if(!(flags & FLAG_END_RX)) { rx_buf[buf_index]=UDR; if(rx_buf[buf_index] == 0x0D) { flags |= FLAG_END_RX; return; } buf_index++; if(buf_index >= BUF_SIZE) { buf_index = 0; flags |= FLAG_ERR_RX; } } } void init_UART() { UBRRL = UBRRL_value; UBRRH = UBRRL_value>>8; UCSRB|=(1<<TXEN); UCSRB|=(1<<RXEN); UCSRC|=((1<<URSEL)|(1<<UCSZ0)|(1<<UCSZ1)); UCSRB|=(1<<RXCIE); sei(); flags = 0; } void send_UART(char value) { while(!(UCSRA&(1<<UDRE))); UDR=value; } int main(void) { init_pin(); init_UART(); while(1) { if (start==1) { _delay_ms(500); send_UART('O'); send_UART('K'); send_UART('!'); send_UART(0x0D); send_UART(0x0A); _delay_ms(10); start=0; } if (b == '0') { LED_1_ON(); LED_2_OFF(); send_UART('N'); send_UART('+'); send_UART('0'); send_UART('0'); send_UART(0x0D); send_UART(0x0A); _delay_ms(10); b=4; } if (b == '1') { LED_1_OFF(); LED_2_ON(); send_UART('N'); send_UART('+'); send_UART('0'); send_UART('1'); send_UART(0x0D); send_UART(0x0A); _delay_ms(10); b=4; } if (b == '2') { LED_1_ON(); LED_2_ON(); send_UART('N'); send_UART('+'); send_UART('0'); send_UART('2'); send_UART(0x0D); send_UART(0x0A); _delay_ms(10); b=4; } if (b == '3') { LED_1_OFF(); LED_2_OFF(); send_UART('N'); send_UART('+'); send_UART('0'); send_UART('3'); send_UART(0x0D); send_UART(0x0A); _delay_ms(10); b=4; } if (C_PC0) { send_UART('P'); send_UART('C'); send_UART('0'); send_UART(0x0D); send_UART(0x0A); _delay_ms(250); } if (C_PC1) { send_UART('P'); send_UART('C'); send_UART('1'); send_UART(0x0D); send_UART(0x0A); _delay_ms(250); } } } void init_pin(void) { DDRC = 0b00000000; PORTC = 0b11111111; DDRD |= ((1<<2)|(1<<3)); PORTD &=~ ((1<<2)|(1<<3)); } Ну как сказать всё работает, но вот меня очень интересует приём команд на саму ATMEGA16. Он так и работает только с цифрами. Более ничего корректно принять не получается даже используя таблицу ascii. А мне нужно будет принимать команды и посложней чем просто буквенно - цифровые. Потому как возвращаясь к командам самого плеера там в этих командах хранятся различные данные. Вот примерно так это всё выглядит. AT+QM \ r \ n Запрос режима работы [0: Bluetooth], [1: MP3] AT+M1 \ r \ n Номер текущего файла AT+M2 \ r \ n Общее количество звуковых файлов AT+MD \ r \ n Источник музыки USB или SD Card AT+MT \ r \ n Общее время воспроизведения текущего файла AT+MK \ r \ n Время воспроизведения текущего файла AT+MP \ r \ n Текущее состояние плеера [0]Стоп, [1]Воспроизведение, [2]Пауза К примеру при отправке команды AT+M1 \ r \ n в ответ мы получим M1 + 000002 \ r \ n при этом здесь может быть любое число в hex формате. Мне же нужно каким то образом принять эти данные и обработать их соответствующим образом. Но при этом и нужно учитывать так же что плеер может сам отправить эти данные по началу воспроизведения трека. Вот в этом сейчас и стоит основная задача. Чего я и пытаюсь получить в итоге.
    • Ну тогда дорога к сименсу в гости - они вам какой-нибудь Desigo CC или даже Siematic предложат, тыщ за 10 долларов. Ну и ещё тыщ 5 надо будет отдать за контроллеры и их конфигурирование.   А если попроще - то можно к отечественным MasterSCADA обратиться, либо к WiredBoard - у них не совсем SCADA система, но нормальные контроллеры, довольно просто настраиваются и можно графическую оболочку рисовать.
  • Похожий контент

×
×
  • Создать...