Ардуино - запись звука
Re: Ардуино - запись звука
мне здесь дребезг не нужен. Это не я нажимаю.
Добавлено after 2 minutes 36 seconds:
в базу транзисторного ключа сигнал приходит.
Добавлено after 2 minutes 36 seconds:
в базу транзисторного ключа сигнал приходит.
- Реклама
Re: Ардуино - запись звука
olegue писал(а):Это не я нажимаю.
я верю тому что написано))
if (digitalRead(5) ==LOW && timerON==0) //нажали
...
if (digitalRead(5) ==HIGH && timerON=1) //отпустили кнопку
...
ну так и пиши тогда... "внешний сигнал от ключа" (дребезг не учитывать !).olegue писал(а):в базу транзисторного ключа сигнал приходит.
Добавлено after 11 minutes 14 seconds:
[uquote="olegue",url="/forum/viewtopic.php?p=4267857#p4267857"]
Код: Выделить всё
flag=0;
count=0;
loop()
if (digitalRead(5) ==LOW && timerON==0) //нажали
{
timerON=1; // включим таймер
timer=millis();
}
if (digitalRead(5) ==LOW && timerON==1 && millis()-timer<600 && flag==0 && count<3) //нажали, таймер включен
{
count++; // зачтем нажатие
flag=1; // флаг регистрации состояния кнопки (нажата/отпущена)
}
if (digitalRead(5) ==HIGH && timerON=1) //отпустили кнопку в пределах времени работы таймера
{
flag=0; //
}
if (millis()-timer>600) {timerON=0;} // отключу таймер (время вышло)
} //loop
скажите че будет если я просто зажму кнопку , получу ли я count 1?[/uquote]
ну получишь count 1... если кнопка без дребезга)) и таймер нормальный...
я не знаю что значит timer=millis(); ? это какая-то ардуиновская приблуда))
обычно указывают сколько именно миллисекунд... типа так... наверное ))
timer=millis(10);
я не разбираюсь в ардуино))
Re: Ардуино - запись звука
в ардуине засекаем таймер
timer=millis();
а потом измеряем прошедшее время
t=millis()-timer;
millis() работает на прерываниях в отличии от delay(500)
Вот какой я грамотный теперь
timer=millis();
а потом измеряем прошедшее время
t=millis()-timer;
millis() работает на прерываниях в отличии от delay(500)
Вот какой я грамотный теперь
Re: Ардуино - запись звука
olegue писал(а):Вот какой я грамотный теперь
на прерываниях какого таймера ? в ардуино их аж целых три ! ))
Re: Ардуино - запись звука
да вопрос хороший, когда то разбирал эту тему и знал, а теперь просто гугление уже не дает результата. Надо копать глубже.
- Реклама
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1916
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Ардуино - запись звука
millis() -> timer0, prescaler 64
Re: Ардуино - запись звука
[uquote="olegue",url="/forum/viewtopic.php?p=4268497#p4268497"]Надо копать глубже.[/uquote]
в обычной ардуине три таймера...
таймер №0 - 8-ми битный 0...255
таймер №1 - 16-ти битный 0...65535
таймер №2 - 8-ми битный 0...255
для millis() обычно используют таймер №1.
потому что таймер №1 - 16 битный.
что позволяет задавать значение таймера в пределах 0...65535

в обычной ардуине три таймера...
таймер №0 - 8-ми битный 0...255
таймер №1 - 16-ти битный 0...65535
таймер №2 - 8-ми битный 0...255
для millis() обычно используют таймер №1.
потому что таймер №1 - 16 битный.
что позволяет задавать значение таймера в пределах 0...65535
-
veso74
- Поставщик валерьянки для Кота
- Сообщения: 1916
- Зарегистрирован: Сб май 05, 2012 20:24:52
- Откуда: KN34PC, Болгария
- Контактная информация:
Re: Ардуино - запись звука
[uquote="roman.com",url="/forum/viewtopic.php?p=4268611#p4268611"]...
для millis() обычно используют таймер №1.
...[/uquote]
Посм. C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\wiring.c:
для millis() обычно используют таймер №1.
...[/uquote]
Посм. C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\wiring.c:
Спойлер
Код: Выделить всё
#if defined(TIM0_OVF_vect)
ISR(TIM0_OVF_vect)
#else
ISR(TIMER0_OVF_vect)
#endif
{
// copy these to local variables so they can be stored in registers
// (volatile variables must be read from memory on every access)
unsigned long m = timer0_millis;
unsigned char f = timer0_fract;
m += MILLIS_INC;
f += FRACT_INC;
if (f >= FRACT_MAX) {
f -= FRACT_MAX;
m += 1;
}
timer0_fract = f;
timer0_millis = m;
timer0_overflow_count++;
}Спойлер
Код: Выделить всё
unsigned long millis()
{
unsigned long m;
uint8_t oldSREG = SREG;
// disable interrupts while we read timer0_millis or we might get an
// inconsistent value (e.g. in the middle of a write to timer0_millis)
cli();
m = timer0_millis;
SREG = oldSREG;
return m;
}Re: Ардуино - запись звука
такой вопрос! А что если я буду писать звук не на sd карту посредство библиотеки sdfat а в файл по сети. Сеть wifi c хорошим доступом. Нужна ли будет буферизация? Теоретически проблем не вижу. А вот что из этого реально получится пока не представляю.
Re: Ардуино - запись звука
надо смотреть тайминги...
что то мне подсказывает... что буферизация нужна))

Добавлено after 1 hour 22 minutes 53 seconds:
в принципе... можно и без буферизации... надо по подробней посмотреть тайминги...
вот я передаю данные по радио... вот я передаю данные по Wi-Fi... нет никакой разницы))

короче... проблем быть не должно...
проблемы будут с шифрованием ))
в Ардуино слишком медленно работает шифрование...
что то мне подсказывает... что буферизация нужна))
Добавлено after 1 hour 22 minutes 53 seconds:
в принципе... можно и без буферизации... надо по подробней посмотреть тайминги...
вот я передаю данные по радио... вот я передаю данные по Wi-Fi... нет никакой разницы))
короче... проблем быть не должно...
проблемы будут с шифрованием ))
в Ардуино слишком медленно работает шифрование...
Re: Ардуино - запись звука
запись звука... в файл... на ПК... по сети...

Re: Ардуино - запись звука
снова вопрос по звуку. Возможно ли звук 8бит 8кгц передавать потоком через gprs?
Объясните пож и желательно обоснуйте. Спасибо.
Объясните пож и желательно обоснуйте. Спасибо.
Re: Ардуино - запись звука
с gprs никада не работал... сказать ничего не могу...
слышал что gprs работает до 320 кБит/c... но это не точно))
с Ethernet и Wi-Fi проблем нет)) всё работает чётко.

слышал что gprs работает до 320 кБит/c... но это не точно))
с Ethernet и Wi-Fi проблем нет)) всё работает чётко.
Re: Ардуино - запись звука
где можно нарыть примеры передачи потока и его получения?
Re: Ардуино - запись звука
не понял... что надо ? готовых примеров у меня нет... у меня есть всё по отдельности... ))
отдельно передача данных по радио... в теме по радио управлялкам... https://www.radiokot.ru/forum/viewtopic ... 8&t=148087
отдельно цифровка и воспроизведение звука на МК...
отдельно передача данных на МК по интернету...
отдельно цифровка и воспроизведение / запись / чтение на ПК и передача по интернету... всё там же))
и т.д.
отдельно ардуину к ПК я не подключал... надо будет сделать)) только у меня нет ардуины... есть просто МК...

отдельно передача данных по радио... в теме по радио управлялкам... https://www.radiokot.ru/forum/viewtopic ... 8&t=148087
отдельно цифровка и воспроизведение звука на МК...
отдельно передача данных на МК по интернету...
отдельно цифровка и воспроизведение / запись / чтение на ПК и передача по интернету... всё там же))
и т.д.
отдельно ардуину к ПК я не подключал... надо будет сделать)) только у меня нет ардуины... есть просто МК...
Re: Ардуино - запись звука
мне нужно оцифровать и передать на сайт. На сайте слушать в прямом эфире.
Я больше не могу объяснить так как пока не в курсе как это работает. Если сделать что бы это работало хотя бы по wifi , То я бы наверно , подумал где бы организовать wifi , может у соседа бы попросил. А так у меня на точке где это все хочу сделать только gprs
Я больше не могу объяснить так как пока не в курсе как это работает. Если сделать что бы это работало хотя бы по wifi , То я бы наверно , подумал где бы организовать wifi , может у соседа бы попросил. А так у меня на точке где это все хочу сделать только gprs
Re: Ардуино - запись звука
при чём тут соседский wifi ... у тебя нет своего wifi ?
при чём тут gprs... как у тебя интернет работает ?
нарисуй схему... чтоб было понятней))
вот мой дом)) ко мне в дом заходит кабель (витуха) от провайдера... я могу подключить любой устройство в доме к интернету как по кабелю так и по wifi ...
как у тебя интернет работает... я без понятия))

Добавлено after 18 minutes 47 seconds:
далее...
скачай Wireshark и посмотри как работает сайт... куда ты хочешь что-то загрузить... данные... файлы...
вот к примеру как работает сайт "радиокот" IP = 89.108.124.75
https://www.radiokot.ru/forum/download/ ... ?id=380313
https://www.radiokot.ru/forum/download/ ... ?id=380314
...
затем загрузи на сайт что-нибудь... например файл MP3...
https://www.radiokot.ru/forum/download/ ... ?id=380299
...
выше всё писал...
https://www.radiokot.ru/forum/viewtopic ... start=2089

при чём тут gprs... как у тебя интернет работает ?
нарисуй схему... чтоб было понятней))
вот мой дом)) ко мне в дом заходит кабель (витуха) от провайдера... я могу подключить любой устройство в доме к интернету как по кабелю так и по wifi ...
как у тебя интернет работает... я без понятия))
Добавлено after 18 minutes 47 seconds:
далее...
скачай Wireshark и посмотри как работает сайт... куда ты хочешь что-то загрузить... данные... файлы...
вот к примеру как работает сайт "радиокот" IP = 89.108.124.75
https://www.radiokot.ru/forum/download/ ... ?id=380313
https://www.radiokot.ru/forum/download/ ... ?id=380314
...
затем загрузи на сайт что-нибудь... например файл MP3...
https://www.radiokot.ru/forum/download/ ... ?id=380299
...
выше всё писал...
https://www.radiokot.ru/forum/viewtopic ... start=2089
Re: Ардуино - запись звука
Роман, Вы ,вероятно меня неправильно понимаете
Есть такое понятие, к примеру, радимикрофон. Он передает звук посредством эфира на определенной частоте
Я хочу сделать радиомикрофон который передаст звук посредством интернета.
я нагуглил что это технология называется VoIP, voice over IP. Но как эта технология работает я пока не в курсе. Вот и хочу разобраться. Для начала мне нужно передать оцифрованный звук в виде потока в интернет. Затем сделать так ,что бы прослушивать этот поток в интернете.
Есть такое понятие, к примеру, радимикрофон. Он передает звук посредством эфира на определенной частоте
Я хочу сделать радиомикрофон который передаст звук посредством интернета.
я нагуглил что это технология называется VoIP, voice over IP. Но как эта технология работает я пока не в курсе. Вот и хочу разобраться. Для начала мне нужно передать оцифрованный звук в виде потока в интернет. Затем сделать так ,что бы прослушивать этот поток в интернете.
Re: Ардуино - запись звука
что значит "передать оцифрованный звук в виде потока в интернет" ... ???olegue писал(а):мне нужно передать оцифрованный звук в виде потока в интернет.
в пустоту что ли ? ))
что такое интернет ?
https://ru.wikipedia.org/wiki/Интернет
Интерне́т[1] (англ. Internet, МФА: [ˈɪn.tə.net]) — информационно-коммуникационная сеть и всемирная система объединённых компьютерных сетей для хранения и передачи информации[2].
по простому - Интерне́т это просто сеть состоящая из разных устройств...
так ты сначала определись... к какого и на какое устройство ты собрался передавать поток...
можно передавать с ПК на ПК (ПК << >> ПК)...
можно передавать с ардуино на ПК (ардуино << >> ПК)...
можно передавать с ардуино на ардуино (ардуино << >> ардуино)...
можно передавать с ардуино на роутер (ардуино << >> роутер)...
можно передавать с ардуино на сервер (ардуино << >> сервер)...
...
можно передавать с ардуино на прокси сервер (ардуино << >> прокси сервер)...
https://www.radiokot.ru/forum/viewtopic ... &start=161
...
и т.д. и т.п.
устройство может быть любым... т.е. можно передавать поток с любого устройства на любое устройство в интернете...
с ардуино на ПК (ардуино << >> ПК)... Добавлено after 51 minute 49 seconds:
[uquote="olegue",url="/forum/viewtopic.php?p=4307843#p4307843"]я нагуглил что это технология называется VoIP, voice over IP. Но как эта технология работает я пока не в курсе.[/uquote]
эта технология работает точно так же как по радио))
по радио...
передача по радио:
1. цифруем звук с микрофона... аналог > цифра поток (0101010101011000101010101...)
2. разбираем поток на пакеты (01010101 - 010110001 - 01010101...)
3. передаём по радио пакеты (01010101 - 010110001 - 01010101...)
приём по радио:
1. принимаем по радио пакеты (01010101 - 010110001 - 01010101...)
2. собираем пакеты в поток (0101010101011000101010101...)
3. цифра поток (0101010101011000101010101...) > аналог выводим в динамик.
по интернету (VoIP)...
передача по интернету (VoIP):
1. цифруем звук с микрофона... аналог > цифра поток (0101010101011000101010101...)
2. разбираем поток на пакеты (01010101 - 010110001 - 01010101...)
3. передаём по интернету (VoIP) пакеты (01010101 - 010110001 - 01010101...)
приём по интернету (VoIP):
1. принимаем по интернету (VoIP) пакеты (01010101 - 010110001 - 01010101...)
2. собираем пакеты в поток (0101010101011000101010101...)
3. цифра поток (0101010101011000101010101...) > аналог выводим в динамик.
А в чём разница ? А нит никакой разницы !))
https://radiokot.ru/forum/viewtopic.php ... start=2078


