Кто сам изучил програмирование мк?

Флейм в чистом виде - все что угодно...
Но - в рамках закона :)
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Леонид Иванович писал(а):возьму системный тик 1 мс, по нему буду через SPI загружать регистры. Никаких прерываний
Уф! А SysTick разве не использует прерываний? Или постоянная "собака за хвостом"? :)))
Реклама
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Леонид Иванович »

Я имею в виду, что динамическая индикация не по прерываниям. SysTick использует прерывания. Но там только инкремент счетчика - и всё. Чтобы программные таймеры организовывать.
Реклама
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Alexeyslav »

Ей-богу, вас очень увлекательно читать. Но вы несколько забываете для чего нужна ардуина как таковая. Нужна она в первую очередь для сборки ПРОТОТИПОВ, когда просто некогда и нет смысла разрабатывать уникальную плату, когда может в процессе творчества сменится набор датчиков и их разводка. Неужели здорово для каждого изменения переделывать плату?
Оттуда и идут всякие простейшие платы с двумя резисторами - не надо ничего паять подключил к разъему и делов, нужен другой коэффициент - берешь другую плату, нужно подстроить делитель на точный коэффициент - берешь третью. При этом не надо ничего пилить и паять.

А то что некоторые начинают использовать платы в своих проектах - это исключительно их дело, более того если стоимость их устраивает, то какое наше дело?
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Леонид Иванович писал(а):"Пнул, а дальше оно само" - так тоже можно, но зачем? Разгрузим процессор, а что ему останется делать?
Конечно можно! При инициализации дисплея HD44780 понадобится один таймер и два канала DMA, при работе - два таймера и один канал DMA.
Что делать? Да что угодно - обрабатывать прерывания, мониторить что-нибудь, заниматься вычислениями и расчётами... да раскрашивать биты регистров цветными фломастерами, в конце концов! :)))
Последний раз редактировалось nahimovv Сб фев 01, 2014 23:30:12, всего редактировалось 1 раз.
Реклама
Эиком - электронные компоненты и радиодетали
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Леонид Иванович писал(а):Я имею в виду, что динамическая индикация не по прерываниям. SysTick использует прерывания. Но там только инкремент счетчика - и всё. Чтобы программные таймеры организовывать.
Прикалываетесь? Зачем "программные таймеры", если есть хардварные! А их куда, солить? :)))
Реклама
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Леонид Иванович »

Не так много таймеров и каналов DMA в младших моделях STM32, чтобы ими так разбрасываться. Да и зачем такая сложность, если можно реализовать софтовый обмен, процессору реально нечего делать.

А программных таймеров в проекте используется куча, десятки, где столько хардварных взять? И главное, зачем? реализация софтового таймера на основе счетчика в прерывании SysTick проста и красива. А эту тучу хардварных таймеров нужно инициализировать. Да и точности там обычно не нужны, это обычно какие-то задержки в интерфейсе пользователя. Хардварные таймеры там не к месту.
Реклама
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Кто сам изучил програмирование мк?

Сообщение dosikus »

Леонид Иванович писал(а): Да и зачем такая сложность
Реально сложно это выглядит только на SPL , а так - десяток, полтора строк ...
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Alexeyslav писал(а):Ей-богу, вас очень увлекательно читать. Но вы несколько забываете для чего нужна ардуина как таковая.
А она кому-то ещё нужна, зачем? Не верю! :)))
А то что некоторые начинают использовать платы в своих проектах - это исключительно их дело, более того если стоимость их устраивает, то какое наше дело?
Никакого! Был тут один ардунист-задрот, бредил тут потихоньку, два слова связать не мог, пускал пузыри, так с газами весь и вышел. :))) :)))
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Леонид Иванович »

dosikus писал(а):Реально сложно это выглядит только на SPL , а так - десяток, полтора строк ...
Конструкции вида TIM3->CCMR1 |= (TIM_CCMR1_CC1S_0 | TIM_CCMR1_IC1F_0 | TIM_CCMR1_IC1F_1); тоже выглядят не лучшим образом.
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Кто сам изучил програмирование мк?

Сообщение dosikus »

Это с непривычки , после пары месяцев все нормализуется... :)))
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Леонид Иванович писал(а): Хардварные таймеры там не к месту.
Тогда я соглашусь с dosikus, что "Атмэл - это диагноз!"! :)))
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Леонид Иванович »

Интересно, а почему нельзя использовать софтовые таймеры там, где они подходят? Может наоборот, попытка задействовать всю периферию, которая даже не нужна (повысив при этом до максимума потребление) - это диагноз STM32?
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Леонид Иванович писал(а):Интересно, а почему нельзя использовать софтовые таймеры там, где они подходят?
Кто сказал что нельзя? Только зачем впрягать сюда те же индикаторы вашего БП... не пойму! Зачем засирать безбожно SysTick?
Может наоборот, попытка задействовать всю периферию, которая даже не нужна (повысив при этом до максимума потребление) - это диагноз STM32?
"Что, опять?"(С) :)))
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Леонид Иванович »

nahimovv писал(а):Зачем засирать безбожно SysTick?
Не понял, как это? В прерывании SysTick инкрементируется один счетчик. И всё. Что опять не так?
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Не надо закрывать люк и заводить двигатель танка! Вы говорили, что у вас десятки софттаймеров! Где они у вас обрабатываются/мониторятся?
Аватара пользователя
Леонид Иванович
Друг Кота
Сообщения: 4779
Зарегистрирован: Сб апр 02, 2011 12:40:46
Откуда: Минск
Контактная информация:

Re: Кто сам изучил програмирование мк?

Сообщение Леонид Иванович »

При старте программного таймера захватывается значение SysTick-овского счетчика. Затем внутри задачи, где используется этот таймер, вызывается функция, которая сравнивает разницу между текущим и захваченным значением с установленным интервалом. Если разница больше интервала, производится действие, для которого этот таймер был предназначен.
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: Кто сам изучил програмирование мк?

Сообщение a5021 »

Леонид Иванович писал(а):Может наоборот, попытка задействовать всю периферию, которая даже не нужна (повысив при этом до максимума потребление) - это диагноз STM32?
Это тяжелое наследие голодного детства. У него 48 мегагерц под капотом, а он хлебные корки по углам ныкает.
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

Понятно. Если у вас автомат состояний, то тем более динамическую индикацию лучше делать хардварной. А если у вас вызов функций последовательный, то это по сути тривиальный delay. Если МК имеет DWT, то лучше микросекундные задержки делать на нём (на электрониксе обсуждалось), если нет... кто во что гаразд. Кучу 1WIRE можно по таймеру/таймер+DMA с порта обрабатывать (до 16).
Последний раз редактировалось nahimovv Вс фев 02, 2014 00:56:59, всего редактировалось 1 раз.
Аватара пользователя
abc
Друг Кота
Сообщения: 3686
Зарегистрирован: Чт мар 20, 2008 01:06:40
Откуда: Севастополь

Re: Кто сам изучил програмирование мк?

Сообщение abc »

a5021 писал(а):Это тяжелое наследие голодного детства. У него 48 мегагерц под капотом, а он хлебные корки по углам ныкает.
Что-то мне подсказывает, что вы и с 480-ю мегагерцами не будете знать что делать.
Есть уже 8-ядерный пропеллер с 80MHz на ядро. Только проектов на нем едва ли с полдесятка.
Неучи, помигав светиком и подрыгав лапками, ждут еще большую крутотень. Чтоб, вдоволь натрахавшись с писанными наспех кривыми либами, снова светиком помигать. В 10 раз быстрее ))))
Последний раз редактировалось abc Вс фев 02, 2014 00:57:21, всего редактировалось 1 раз.
>(*.*)<
Котище огромно, ушасто, пушисто, глазасто, зубасто, колючелапо и мявай. (c)
nahimovv
Нашел транзистор. Понюхал.
Сообщения: 180
Зарегистрирован: Чт янв 23, 2014 01:51:35

Re: Кто сам изучил програмирование мк?

Сообщение nahimovv »

a5021 писал(а): Это тяжелое наследие голодного детства.
100% ! Деревянные машинки размером с табурет, а теперь деревянные ардуины для злобных дубовых буратин!
Гавкнул? Под лавку! И не забывай вылазить периодически, а то ещё задохнёшься ненароком! :))) :)))
Ответить

Вернуться в «МЯЯЯУ!»