Обсуждаем контроллеры компании Atmel.
Пт янв 04, 2019 19:28:18
Хочу собрать автомобильный компьютер на Ардуине. Среди функций: часы, GPS логгер, возможность вводить и запоминать данные о заправке с клавиатуры, считывать уровень топлива с штатного датчика и т.д. Как часть алгоритма, нужно получать данные с датчика скорости, т.е. счетчик импульсов. Т.к. нагрузка на контроллер большая, то, вероятно, программные варианты будут пропускать импульсы. По этому хотелось бы счетчик выполнить аппаратно, чтобы считывать с него данные в любое удобное время. Как вариант I2c или что-то подобное. Какие варианты можно рассмотреть?
Пт янв 04, 2019 20:10:15
PCF8583/PCF8563
Смысл микрухи в том, что она может считать импульсы по осциляторному входу.
В режиме счетчика можно вытаскивать насчитанное по I2C с защелкиванием результата из всех регистров при чтении первого.
Пт янв 04, 2019 21:09:41
DS1672 вот спецмикросхема.
Сб янв 05, 2019 06:22:12
Ок, спасибо, буду изучать.
Сб янв 05, 2019 07:31:41
не знаю, есть ли это в ардуине, но в мегах точно есть:
1) завести сигнал на ногу прерывания, можно даже само прерывание не включать, а только флаг его иногда проверять (с частотой не ниже частоты максимальной скорости) и сбрасывать.
2) можно один из таймеров под счетчик отдать...
Сб янв 05, 2019 08:10:26
не знаю, есть ли это в ардуине, но в мегах точно есть:
1) завести сигнал на ногу прерывания, можно даже само прерывание не включать, а только флаг его иногда проверять (с частотой не ниже частоты максимальной скорости) и сбрасывать.
2) можно один из таймеров под счетчик отдать...
Вот как раз насчет максимальной скорости и есть сомнения, а если контроллер будет занят, тогда импульс потеряется, счетчик будет врать в минус.
А насчет таймеров - не знаю, я недавно с микроконтроллерами разбираюсь. Можно ссылку?
Добавлено after 2 minutes 21 second:Насчет тех двух таймеров. Посмотрел даташиты. Судя по ним, это часы. Счетчики кварца с декодерами под дату и время. Как перевести их в режим просто счета я не нашел...
К тому же DS1672 только под 3.3 вольта, там еще питание надо отдельно городить. Может я что-то недочитал?
Сб янв 05, 2019 08:17:46
neo-m8 - часы, GPS и горизонтальная скорость.
Сб янв 05, 2019 09:32:55
Питание отдельно городить нет необходимости. Там два пина питания . Основной и бекап батарея с возможностью зарядки.
Счетчик 32 битный. Может работать автономно и только по требованию можно проверить что он там насчитал и сбросить.
Что мешает завести сигнал для счета на OSCIN.
Сб янв 05, 2019 15:05:05
Tehnikr писал(а):Т.к. нагрузка на контроллер большая, то, вероятно, программные варианты будут пропускать импульсы.
Почему не выбрали более мощный контроллер?
Они разные есть. И с аппаратным подсчетом импульсов и с частотой тактирования 400 МГц и больше.
Сб янв 05, 2019 17:17:28
Почему не выбрали более мощный контроллер?
Потому что адурина. Для более мощного надо самому хоть что то уметь делать...
Сб янв 05, 2019 19:39:44
На ардуине все само делается?
Сб янв 05, 2019 20:19:39
Потому что адурина...
потому и не хватает ресурсов.
Вс янв 06, 2019 08:25:06
может, и на ней всё это сделать можно, но для этого всёравно нужны знания. Так что вперед - читать даташит на свой контроллер, к там и ардуина может уже и не понкдобится.
Добавлено after 23 minutes 4 seconds:
т.к. аппаратный PWM у тебя не задействован, то и таймеры (кроме того, что миллис считает) скорее всего свободны, почитай про таймер 1, (попробуй обратиться к его регистрам напрямую, как к переменным) прикинь, на какую ногу ардуины выведен его счетный вход. этот таймер 16 битный, а потому даже при частоте импульсов 1кГц его можно раз.в минуту опрашивать. таймер считает покругу, это значит что его можно не сбрасывать, а просто вычитать старые показания из новых (если при этом разность ляжет в 16 битную переменную,ито и в случае переполнения таймера ошибки не будет).
Вс янв 06, 2019 09:09:16
Адуринки тоже РАЗНЫЕ бывают.
Соответственно и задачи под соответствующие платформы.
В принципе подход верный - обработчик периферийными задачами реального времени заниматься не дложен - дело "головы" считать и команды выдавать (даже не интерфейсом пользователя заниматься - на то своя "видеокарта" должна бысть по-максимуму).
Только вот для подобных конструкций...
Знание только адуринки явно маловато будет...
Ибо периферию надо также САМОМУ творить из разношерстных подручных МК ВСЕХ типовых семейств (то, что наиболее удобно из имеющегося в доступности) да предпочтительно под ассемблером...
А такой вариант даже
Мурик вряд-ли решится сделать.
Вс янв 06, 2019 09:58:30
Вообще, тут да, скорее принципиальный вопрос. Задачи реального времени - независимая аппаратная реализация. А насчет мощности, мне кажется ее тут за глаза, при правильной реализации. Запросил значение десятка датчиков, отправил их на экран, точнее.2 экрана и скинул на SD карту.
Добавлено after 1 minute 31 second:
Про таймеры почитаю, про счетчик тоже.
Вс янв 06, 2019 11:58:59
BOB51 писал(а):Ибо периферию надо также САМОМУ творить из разношерстных подручных МК ВСЕХ типовых семейств
Периферия (по отношению к процессорному ядру) аппаратная и находится внутри МК, а не программная. Речь не про внешние микросхемы по отношению к МК.
BOB51 писал(а):да предпочтительно под ассемблером...
Медленно (разработка) и не переносимо между МК с разными ядрами.
Вс янв 06, 2019 12:22:53
А насчет мощности, мне кажется ее тут за глаза, при правильной реализации. Запросил значение десятка датчиков, отправил их на экран, точнее.2 экрана и скинул на SD карту.
А что уже работает? Просто в начале еще говорилось про часы, GPS, клавиатуру, шансы все это реализовать начинающему, не важно на чем, меньше 1%.
Вс янв 06, 2019 12:52:22
Часы работают и макетка датчика уровня топлива. GPS - там тоже просто, сам модуль дорогой, еще не купил. В ближайших планах сд карта и отдельный экран под часы, жду модули.
Добавлено after 5 minutes 9 seconds:
Вообще, основная задача - gps логер + точный датчик скорости + рассчет реального расхода топлива. Скорость + пробег будут считаться на совместных данных gps и датчика пробега.
Вс янв 06, 2019 13:04:44
Ардуина не панацея. Меня забавляет такое отношение. Типа ардуина палочка выручалочка. Этакая замена диспетчеров, RTOS, алгоритма. Можно ничего не знать, не изучать. Воткнул и забыл. А вот хренушки.
Хочешь создать нормальный рабочий девайс, изволь изучать азы. Конструктор любой собрать может. А вот эксклюзив...
Вс янв 06, 2019 19:51:30
у ардуины есть преимущество, которое особо ценят новички: куча ( и доступность) библиотек под всякую периферию и настраиваются они довольно просто...
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.