FLProg
Вход на сайт
Логин:
Пароль:
Поиск
...
Статистика
Понедельник, 29.05.2017, 03:02
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » Скорость работы FLProg и Ардуино
Скорость работы FLProg и Ардуино
densso Дата: Вторник, 28.03.2017, 20:02 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 0
Статус: Offline
Есть два скетча, по своей суть одинаковые, это декодер DTMF сигналов на аналоговом входе А0 и вывод результата в монитор порта. Один скомпилирован в FLProg с блоком пользователя, другой написан в Ардуино. Тестируется на одном и том же оборудовании, кнопки на телефоне нажимаются одинаково.
Суть проблемы следующая: скетч из FLProg при работе часто ошибается, не распознает нажатие, подтормаживает. Скетч из Ардуино работает четко, без сбоев и тормозов.
Прикрепления: FLProg.txt(1Kb) · 2842377.txt(0Kb) · DTMF_decoder-CO.ubi(24Kb) · 6034416.png(23Kb)


Сообщение отредактировал densso - Вторник, 28.03.2017, 20:10
 
Anydy Дата: Вторник, 28.03.2017, 20:07 | Сообщение # 2
Подполковник
Группа: Проверенные
Сообщений: 291
Награды: 6
Репутация: 2
Статус: Offline
Забудьте вы про программный декодер, не будет он работать корректно, знаем, плавали..)))
Купите микросхему и сделайте аппаратный декодер....цена вопроса 100р.
И все пойдет как по маслу!
 
densso Дата: Вторник, 28.03.2017, 20:13 | Сообщение # 3
Рядовой
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 0
Статус: Offline
Купил, жду когда приедет. Смысл в следующем, если писать скетч руками все работает, даже с кучей выходов. Тестируется на "Нано 328".

Сообщение отредактировал densso - Вторник, 28.03.2017, 20:16
 
Anydy Дата: Вторник, 28.03.2017, 20:38 | Сообщение # 4
Подполковник
Группа: Проверенные
Сообщений: 291
Награды: 6
Репутация: 2
Статус: Offline
Если купили MT8870 - верное решение!
Схема подключения

Тут фишка в чем - когда вы нажимаете на кнопку телефона, DTMF сигнал на приемник поступает не от вашего телефона и не от оператора к которому подключен ваш исходящий телефон, а от оператора к которому подключен приемник! По этому и глюки в софт-декодере.

Скиньте библиотеку и скетч из которого блок пытаетесь сделать хотябы....как проверять то что у вас не так?
И то в железе не буду проверять....неохота собирать схему которая никуда не годится))
Прикрепления: 2447202.png(26Kb)


Сообщение отредактировал Anydy - Вторник, 28.03.2017, 21:13
 
Boroda Дата: Вторник, 28.03.2017, 21:27 | Сообщение # 5
Генерал-лейтенант
Группа: Проверенные
Сообщений: 788
Награды: 35
Репутация: 35
Статус: Offline
Вся заковырка тут:
Цитата
dtmf.sample(sensorPin); \\ код ардуино

и
Цитата
in_253328735_2 = (analogRead (0));
dtmf_253328735_2.sample(in_253328735_2); \\ код ФЛПрог

и
Цитата
\\ код библиотеки
void DTMF::sample(int sensorPin)
{
// El_Supremo
// To toggle the output on digital pin 4
const unsigned char f_counter = 0x10;

for (int index = 0; index < N; index++)
{
testData [index]= analogRead(sensorPin);
// El_Supremo
// toggle bit 4 for a frequency counter
PORTD ^= f_counter;
}
}

получается, что библиотека делает следующее:
testData [index]= (analogRead (analogRead (0))), т.е. вычисляет АЦП со входа, который вычислился в АЦП.

На вход блока подайте НОМЕР ПИНА, а не аналоговое значение. А лучше этот вход уберите в параметры пользователя, чтоб не смущал. И назовите его "pin".


Сообщение отредактировал Boroda - Вторник, 28.03.2017, 21:38
 
densso Дата: Вторник, 28.03.2017, 21:37 | Сообщение # 6
Рядовой
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 0
Статус: Offline
Да, заказал  MT8870. Библиотека и скетч в первом сообщении. Попробую переделать.
 
Boroda Дата: Вторник, 28.03.2017, 21:40 | Сообщение # 7
Генерал-лейтенант
Группа: Проверенные
Сообщений: 788
Награды: 35
Репутация: 35
Статус: Offline
Ну зато с разъемом, лампочками, платой.
 
densso Дата: Вторник, 28.03.2017, 23:00 | Сообщение # 8
Рядовой
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 0
Статус: Offline
Поправил, летает. Оператор МТС Москва. Спасибо. Как получу MT8870 попробую сним.
 
Anydy Дата: Вторник, 28.03.2017, 23:43 | Сообщение # 9
Подполковник
Группа: Проверенные
Сообщений: 291
Награды: 6
Репутация: 2
Статус: Offline
Цитата Boroda ()
Ну зато с разъемом, лампочками, платой.
 и не говори...
Цитата densso ()
Оператор МТС Москва
До чего обленились....в китае заказывают то что в москве 50 рублей стоит...лишь бы просто в дырдочку проводочком попасть...
Все понятно, удачи !
 
densso Дата: Четверг, 06.04.2017, 10:20 | Сообщение # 10
Рядовой
Группа: Проверенные
Сообщений: 26
Награды: 0
Репутация: 0
Статус: Offline
Цитата Anydy ()
в китае заказывают то что в москве 50 рублей стоит
До Москвы и обратно, 500 руб., золотая плата. smile
 
aidar_i Дата: Четверг, 06.04.2017, 10:39 | Сообщение # 11
Сержант
Группа: Проверенные
Сообщений: 41
Награды: 0
Репутация: 0
Статус: Offline
Программный DTMF хорошо работает, во всяком случае у меня, даже на макетной плате.
 
Форум » Основной » Спросить у знатоков » Скорость работы FLProg и Ардуино
Страница 1 из 11
Поиск:

FLProg © 2017
Яндекс.Метрика