Отговори на тема  [ 38 мнения ]  Отиди на страница 1, 2, 3  Следваща
2 тона през 1 пин едновременно? 
Автор Съобщение
Ранг: Популярен
Ранг: Популярен

Регистриран на: Пон Дек 15, 2014 10:05 pm
Мнения: 324
Мнение 2 тона през 1 пин едновременно?
Здравейте. Имам ATtiny85. Единият от цифровите му изводи е свързан към високоговорител/бъзер. Другият извод на говорителя/бъзера е директно към GND. Въпросът е как да генерирам два тона, така, че да звучат едновременно?
Че ще се ползват таймерите на тинито като броячи или ШИМ генератори го разбрах, но не разбрах какъв е алгоритъма по възпроизвеждането на двата тона?


Пет Яну 17, 2020 5:56 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Май 29, 2007 1:23 pm
Мнения: 3546
Местоположение: Високо в планината
Мнение Re: 2 тона през 1 пин едновременно?
Ами изменяш запълването на ШИМ-а според моментната сума на двата единични сигнала.

_________________
Хайде де!


Пет Яну 17, 2020 6:58 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4722
Мнение Re: 2 тона през 1 пин едновременно?
https://github.com/dilshan/dtmfgen/blob ... tmfgen.cpp

_________________
main[-1u]={1};


Пет Яну 17, 2020 8:16 pm
Профил ICQ
Ранг: Популярен
Ранг: Популярен

Регистриран на: Пон Дек 15, 2014 10:05 pm
Мнения: 324
Мнение Re: 2 тона през 1 пин едновременно?
TheWizard написа:
https://github.com/dilshan/dtmfgen/blob/master/dtmfgen.cpp

R-2R Ladder не ме устройва.


Пет Яну 17, 2020 8:24 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Апр 13, 2018 3:00 pm
Мнения: 1325
Местоположение: София
Мнение Re: 2 тона през 1 пин едновременно?
Хард-Софт решение 1:
- Откача се този край на бъзера от GND и се връзва на друг пин, който трябва да е PWM out на другия таймер.
На единия пин се подава едната честота, на другия - втората, на бъзера се получава разликата от двата сигнала,
което за звуци няма значение - ще се чуват и двата.
Хард-Софт решение 2:
- Откача се активния край и се свърва към цифровия изход с резистор, горе-долу колкото е съпротивлението на бъзера.
Втори цифров изход се свързва през втори резистор със същата стойност към бъзера и се получава суматор.
И пак се подават на единия пин първата честота, на втория - втората.
Трябва единия пин да е PWM изход на таймер 1, втория - на таймер 2 за да се получат лесно две различни честоти.
П.С. Не е от един пин, но е най-лесно.


Пет Яну 17, 2020 9:28 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Съб Сеп 03, 2005 10:31 am
Мнения: 746
Местоположение: Пловдив
Мнение Re: 2 тона през 1 пин едновременно?
За два не знам но за 6 е ето така ... ;)

http://www.elm-chan.org/works/mxb/report.html

_________________
"I really do like SOLDERING as my programming language." Bob Pease


Пет Яну 17, 2020 10:55 pm
Профил ICQ
Ранг: Популярен
Ранг: Популярен

Регистриран на: Пон Дек 15, 2014 10:05 pm
Мнения: 324
Мнение Re: 2 тона през 1 пин едновременно?
Хардуерно, не мога да променям нищо. Това, което TheHungry даде като идея е, може би, което търся.


Съб Яну 18, 2020 1:50 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Яну 20, 2009 10:54 pm
Мнения: 11338
Местоположение: "Занзибар"
Мнение Re: 2 тона през 1 пин едновременно?
Мдам, пък Правчо8х даже говореше на български. Чисто софтуерно, при далеч по-мижав хардуер. К'ви времена настанаха...


Съб Яну 18, 2020 2:43 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Май 29, 2007 1:23 pm
Мнения: 3546
Местоположение: Високо в планината
Мнение Re: 2 тона през 1 пин едновременно?
dan написа:
Ами изменяш запълването на ШИМ-а според моментната сума на двата единични сигнала.

Това прочете ли го

_________________
Хайде де!


Съб Яну 18, 2020 10:43 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Яну 19, 2007 8:16 am
Мнения: 1063
Местоположение: путинофили: "иди н***й"
Мнение Re: 2 тона през 1 пин едновременно?
прочети поста на @dan

като за бонго:
Код:
int i = 0;
int pwm[BUF_SIZE]; // запълваш буфера със сигнала, но във време 0%=0 us .... 100%=100us

while (1)
   {
   output = !output; // изходния пин
   delay_us (pwm[ i++ % BUF_SIZE]);
   }

така ще зарадваш и бонго - ще може да говори!

а …. някой ден - ще замениш delay_us с прекъсване!


Нед Яну 19, 2020 2:41 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Ное 06, 2018 4:18 pm
Мнения: 1228
Мнение Re: 2 тона през 1 пин едновременно?
С инверсна трансформация на Фурие.


Нед Яну 19, 2020 11:34 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4722
Мнение Re: 2 тона през 1 пин едновременно?
Bai Фурие са уля :)

_________________
main[-1u]={1};


Нед Яну 19, 2020 1:35 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Ное 06, 2018 4:18 pm
Мнения: 1228
Мнение Re: 2 тона през 1 пин едновременно?
TheWizard написа:
Bai Фурие са уля :)

Къде точно?


Нед Яну 19, 2020 2:08 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 10:53 pm
Мнения: 4197
Местоположение: Brussels / Пловдив
Мнение Re: 2 тона през 1 пин едновременно?
Абе как ще може да се прекарат два тона през един пин - може да изкараш ток, напрежение ама не го виждам с грамове, килограми и тонове как ще излезнат :D

_________________
Мразя да мразя ...


Нед Яну 19, 2020 2:36 pm
Профил
Ранг: Популярен
Ранг: Популярен

Регистриран на: Пон Дек 15, 2014 10:05 pm
Мнения: 324
Мнение Re: 2 тона през 1 пин едновременно?
Проблемът е, че като се насложат двата тона, всъщност се получава някакъв осреднен тон. Пробвах да възпроизведа два тона с терца интервал (2 тона и половина), това което излезна е нещо посредата, т.е липсва многогласието. Идеята е да се получи полифония.


Нед Яну 19, 2020 5:53 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 38 мнения ]  Отиди на страница 1, 2, 3  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 11 госта


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

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни