Форум программистов, компьютерный форум, киберфорум
Автомобильная электроника
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/43: Рейтинг темы: голосов - 43, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 103

Как правильно сформировать задержку?

30.06.2014, 00:59. Показов 8371. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Суть: имею сигнал с индукционного датчика. Снимаю его, усиливаю компаратором, завожу на таймер T0 Attiny13. Таймер считает, выдаёт прерывание. В прерывании поднимаю ножку контроллера, жду 2мс с помощью библиотеки delay.h и опускаю ножку. Таким образом делю частоту с нужным мне коэффициентом и выдаю импульсы наружу.
Теперь потребовалось сделать два таких делителя на одном устройстве. В Аттини13 есть только один счётчик, потому решил взять Атмегу8 (пока даташит не смотрел, но думаю что у неё есть два отдельный счётчика). Компаратор у меня спаренный, LM393, это тоже на руку, проведу оба сигнала через него, заведу в Мегу. И вот тут есть у меня подозрение, что надо как-то иначе реализовать задержку в прерываниях, иначе они могут наложиться друг на друга. Как это разрулить?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.06.2014, 00:59
Ответы с готовыми решениями:

Как реализовать правильно задержку Input Pin?
Приветствую. Как правильно реализовать задержку между нажатиями кнопки? Есть пин, работающий на Input, назвал TIK_TIK. Проблема в...

Сформировать аппаратную временную задержку
прив! нужно на ассемблере для МК 8052, сформировать аппаратную временную задержку 230 мс при установленной частоте тактового генератора...

Как правильно выставить задержку по времени?
<html> <body> <style> s1, s2, s3, s4, s5, s6, s7,

11
1 / 1 / 0
Регистрация: 05.10.2017
Сообщений: 2,048
30.06.2014, 07:25
задержка в прерываниях - плохой тон. Делайте софтовый таймер, с частотой раз в 5-10 больше вашего сигнала, в ваших прерываниях просто выставляйте флаги, в майне уже их обрабатывайте.
0
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 103
30.06.2014, 13:37
Цитата Сообщение от Hotd
задержка в прерываниях - плохой тон...
Это понятно. Потому я эту тему и создал. В конкретной ситуации так было проще всего, и работало на ура. Как только добавилась ещё одна задача, сразу возникли вопросы.
А как рассчитать таймер? Только опытным путём?
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 1,818
30.06.2014, 13:46
по прерыванию поднимать пин и запускать таймер, по переполнению таймера опускать пин. два обработчика прерываний, два таймера, два входных пина, два выходных пина. вот как защитить себя от дребезга контактов и ранних срабатываниях пррываний - надо думать…
upd. дурак. счетчик же только один - только сейчас увидел…
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
30.06.2014, 23:22
Распишите подробнее задачу. Что за датчик, где он стоит. Что нужно получить от импульсов датчика. Частота срабатывания датчика. Времянки на выходе девайса. То есть какие времянки нужны получателю импульсов с девайса.
0
0 / 0 / 0
Регистрация: 04.09.2011
Сообщений: 1,023
01.07.2014, 07:58
Однако вариатор зажигания делается...?
0
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 103
02.07.2014, 20:16
Однако нет. Вариатор была мысля сделать, но оказалось что они в родаже есть 1000-1500 руб, смысла заморачиваться нет.
0
0 / 0 / 0
Регистрация: 04.09.2011
Сообщений: 1,023
03.07.2014, 05:00
Цитата Сообщение от Редиски
Однако нет. Вариатор была мысля сделать, но оказалось что они в родаже есть 1000-1500 руб, смысла заморачиваться нет.
Смысл появляется при практическом использовании готовых вариантов. Пошивки пишут люди, обычно один человек, на всю линейку поддерживаемых авто, избежать ошибок при этом не реально... Далеко не всегда эти прошивки идеально, и даже просто хорошо, работают на конкретном автомобиле. К железу претензий может не быть. Прошивки могут дорабатываться годами, но так и не работать идеально, давать сбои синхронизации, что очень вредно для механики двигателя и трансмиссии, т.к. рывки провоцирует.
Хорошо бы нашелся открытый проект на эту тему, чтобы сообщество программистов сделало хороший алгоритм для обработки сложных сигналов. Именно программные проблемы преследуют имеющиеся на рынке вариаторы. Форумы поддержки кишат обращениями. И хотя половина этих обращений связана с неправильным подключением, доля реальных ошибок прошивок очень высока. Это еще далеко не каждый пользователь способен обнаружить, что проблема у него реально есть...
0
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 103
05.07.2014, 20:25
Может и так. Видел в сети проект, http://www.60-2.ru/ вроде качественное поделие. Знакомый приобрёл, поставил себе на авто, дал положительный отзыв. По моему как раз тот случай, когда проще купить, чем проходить все препятствия и набивать шишки.
У меня на машине газа нет, я поклонник дизеля, мне вариатор без надобности))
0
0 / 0 / 0
Регистрация: 04.09.2011
Сообщений: 1,023
06.07.2014, 07:07
Не проще, а иначе никто и не поступает. Но это не отменяет главной проблемы - недоработанных алгоритмов в готовых девайсах. В итоге большинство из тех, кто ездит на газе, вообще не применяют вариаторы, что само по себе не умнО. А те, кто применяют, вынуждены мириться с ошибками.
Жаль, что не существует сообщества программистов, имеющих желание написать безошибочные алгоритмы для подобных девайсов.
Это из разряда вздохов: ах, почему же люди не летают, как птицы...
0
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 103
07.07.2014, 00:21
Ну опиши хоть, что за ошибки кишат в вариаторах? У меня две машины с вариаторами на виду, ездят, не жалуются
0
0 / 0 / 0
Регистрация: 04.09.2011
Сообщений: 1,023
07.07.2014, 05:22
Кто сказал "кишат"?
Присутствуют.

Приводят иногда к сбоям синхронизации, от чего возникают рывки и даже остановка двигателя порой.
Причем даже при работе на бензине, когда вариатор должен тупо повторять (транслировать) сигналы без изменений со входа на выход, варику иногда вдруг что-то вступает в голову и он теряет один импульс, или генерирует лишний. Это не голословно, эти факты инструментально выловлены, зафиксированы и отправлены разработчику. Разработчик пока в цейтноте, ситуация в тупике.
Есть и менее глобальные ошибки, когда выходной сигнал быстро искажает свои временные характеристики, он как бы начинает отставать, а потом догонять входной сигнал. Это хорошо видно на фоне входного сигнала с совершенно равномерным периодом, который фиксируется другим входом осциллографа...
Я не программист, но мне кажется тут явные ошибки в алгоритмах, а может и в самой архитектуре ПО прошивки. Тут бы больше подошла RTOS, или автоматы, а не линейное программирование.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.07.2014, 05:22
Помогаю со студенческими работами здесь

Как правильно сделать задержку, ожидать событие в программе?
Вот, к примеру, алгоритм: Запуск программы Подготовка данных Запуск стороннего приложения (ждем запуска и сообщения о...

Task.Delay или как правильно сделать задержку
Привет! Выручайте. Такая проблема: в цикле отрисовываю объекты Graphics меняя цвет одного из них (так скажем выделяя). Для динамического...

Как в биосе правильно выставить задержку и вольтаж для RAM?
Купил вот такую память http://www.dns-shop.ru/catalog/i134947/pamyat-dimm-ddr3-4096mbx2-pc12800-1600mhz-kingston-hyperx-cl9-9-9-27-r.html...

Сформировать программную задержку
Всем привет! Подскажите пожалуйста как сформировать программную задержку длительностью 15. Сначала как я понял в P1 записывается 0, а потом...

Сформировать задержку при выводе результата
Доброго времени суток Очень тупой вопрос : как сделать задержку при выводе значений на монитор? В общем пишу лабораторную, в которой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Angular: Вопросы и ответы на собеседовании
Reangularity 15.06.2025
Готовишься к техническому интервью по Angular? Я собрал самые распространенные вопросы, с которыми сталкиваются разработчики на собеседованиях в этом году. От базовых концепций до продвинутых. . .
Архитектура Onion в ASP.NET Core MVC
stackOverflow 15.06.2025
Что такое эта "луковая" архитектура? Термин предложил Джеффри Палермо (Jeffrey Palermo) в 2008 году, и с тех пор подход только набирал обороты. Суть проста - представьте себе лук с его. . .
Unity 4D
GameUnited 13.06.2025
Четырехмерное пространство. . . Звучит как что-то из научной фантастики, правда? Однако для меня, как разработчика со стажем в игровой индустрии, четвертое измерение давно перестало быть абстракцией из. . .
SSE (Server-Sent Events) в ASP.NET Core и .NET 10
UnmanagedCoder 13.06.2025
Кажется, Microsoft снова подкинула нам интересную фичу в новой версии фреймворка. Работая с превью . NET 10, я наткнулся на нативную поддержку Server-Sent Events (SSE) в ASP. NET Core Minimal APIs. Эта. . .
С днём независимости России!
Hrethgir 13.06.2025
Решил побеседовать, с утра праздничного дня, с LM о завоеваниях. То что она написала о народе, представителем которого я являюсь сам сначала возмутило меня, но дальше только смешило. Это чисто. . .
Лето вокруг.
kumehtar 13.06.2025
Лето вокруг. Наполненное бурями и ураганами событий. На фоне магии Жизни, священной и вечной, неумелой рукой человека рисуется панорама душевного непокоя. Странные серые краски проникают и. . .
Популярные LM модели ориентированы на увеличение затрат ресурсов пользователями сгенерированного кода (грязь -заслуги чистоплюев).
Hrethgir 12.06.2025
Вообще обратил внимание, что они генерируют код (впрочем так-же ориентированы разработчики чипов даже), чтобы пользователь их использующий уходил в тот или иной убыток. Это достаточно опытные модели,. . .
Топ10 библиотек C для квантовых вычислений
bytestream 12.06.2025
Квантовые вычисления - это та область, где теория встречается с практикой на границе наших знаний о физике. Пока большая часть шума вокруг квантовых компьютеров крутится вокруг языков высокого уровня. . .
Dispose и Finalize в C#
stackOverflow 12.06.2025
Работая с C# больше десяти лет, я снова и снова наблюдаю одну и ту же историю: разработчики наивно полагаются на сборщик мусора, как на волшебную палочку, которая решит все проблемы с памятью. Да,. . .
Повышаем производительность игры на Unity 6 с GPU Resident Drawer
GameUnited 11.06.2025
Недавно копался в новых фичах Unity 6 и наткнулся на GPU Resident Drawer - штуку, которая заставила меня присвистнуть от удивления. По сути, это внутренний механизм рендеринга, который автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
OSZAR »