Ну, если Вам говорят и Вы это услышали - прекрасно!
Вам знакомо понятие "overhead"? В данном коде overhead в 147 строк. Я не имею ничего против ООП-языков, и понимаю для чего они нужны. Но данный пример показывает не только что автор умеет в С++, но и то что классы здесь и нафиг не сдались.
Так и ни кто не против ООП. Просто популизаторам неймется попопулизировать им чешется. И доказать недоказуемое. Нет чтоб составить пример где ООП действительно разумно применять и демонстрировать его преимущества.
Знакомо, только я не понял почему Вы начали со мною спорить. Я совершенно не оспаривал Вашего мнения, лишь сказал, что отлично, что оно у Вас есть - не более того.
Пример искусственный и, да, наверное, не самый удачный. Хотя, неясно, возможно ли вообще сделать удачный пример, демонстрирующий преимущества ООП так, чтобы он оставался разумного размера. Думаю, автор и не ставил такой цели. Цель, на мой взгляд, была показать, что все средства ООП, кроме виртуальных функций, можно использовать без перерасхода памяти и тормозов. Это он сделал. Может не самым очевидным образом, но сделал.
А overhead. Так overhead'а ни по памяти, ни по времени выполнения нет. А overhead по строкам исходного кода - лично мне он неинтересен - эти строки живут в отдельных файлах и никому не мешают.
Также можно сказать, что определение констант вместо использования литералов непосредственно в коде - это overhead по строкам исходного кода. Но все как-то определяют и признают это удобным.
(это моё мнение и я не навязываю его Вам и не настаиваю, чтобы Вы с ним соглашались).
А с коих пор у нас сообщения компилятора кодом считаются?
1. Не видел таких плагинов к ИДЕ, которые размещают сообщения компилятора на форуме под тэгом "code".
2. Путь непризнания своих косяков кончился для Архата печально. Тебе интересен этот путь?
3. Ты за него "просто по фану" вписываешься или концепция близка? Какая из, хочу поинтересоваться? Великий оставил много пахучих куч наследия, за баней ... там обычно много похожего.
А с коих пор у нас сообщения компилятора кодом считаются?
1. Не видел таких плагинов к ИДЕ, которые размещают сообщения компилятора на форуме под тэгом "code".
2. Путь непризнания своих косяков кончился для Архата печально. Тебе интересен этот путь?
3. Ты за него "просто по фану" вписываешься или концепция близка? Какая из, хочу поинтересоваться? Великий оставил много пахучих куч наследия, за баней ... там обычно много похожего.
Ох ты борзый какой! Банить собрался? Бань, жду.
ПС. Ахат хоть код писать умел, а ты пустые угрозы пишеш.
Таки какой overhead Ви имеете в виду? Сomputing overhead пока что тут не наблюдается.
Overhead по времени, затраченному на написание кода. А ещё ни дай бог этот код придётся другому кодеру разбирать и поддерживать. Тогда я точно выбираю вариант без ООП. Это применительно к данному коду. Есть много вариантов, когда ООП-подход удобней и изящней получается, но здесь тема не раскрыта.
Здесь такое - "парни я написал огромную малопонятную простыню, которая генерится в тот же код, что и эта простенькая программка". Где здесь профит?
Overhead по времени, затраченному на написание кода. А ещё ни дай бог этот код придётся другому кодеру разбирать и поддерживать. Тогда я точно выбираю вариант без ООП. Это применительно к данному коду. Есть много вариантов, когда ООП-подход удобней и изящней получается, но здесь тема не раскрыта.
Здесь такое - "парни я написал огромную малопонятную простыню, которая генерится в тот же код, что и эта простенькая программка". Где здесь профит?
Есть много вариантов, когда ООП-подход удобней и изящней получается, но здесь тема не раскрыта.
Вы неправильно поняли тему (вернее, Вы подменили её), потому Вам кажется, что она не раскрыта. Не раскрыта Ваша тема о том, что "Есть много вариантов, когда ООП-подход удобней". Но это Ваша тема, а не тема данного топика.
Тема данного топика - "можно писать с использованием ООП без единого байта/такта оверхеда". Была поставлена несложная задача и решена именно так - "без единого байта/такта оверхеда". Так что, тема раскрыта полностью.
Очевидно, что в том, что Вы неправильно поняли тему, вина исклюительно автора - не донёс. Признаю. Но, теперь, надеюсь, недоразумение снято.
И ещё, с сведению тех, кто подобно Логику, собирается сказать, что программ дерьмо на том основании, что стоит внести в неё изменения (перенести в loop, сделать глобальными или любые другие), как она тут же потеряет свои качества.
Во-первых, Вы много видели программ, которые как ни изменяй – а они всё работают? Давайте я в Вашей самой лучшей программе заменю все вызовы digitalRead на вызовы pulseIn (или там что-нибудь в loop перенесу) и начну утверждать, что она дерьмо раз сломалась. Глупо? Ну, а Вы что пишете?
Во-вторых, что Вы пытаетесь доказать, внося изменения в мою программу? Я написал её так как написал и доказал, что могу обойтись без перерасхода памяти и снижения быстродействия. А вы что пытаетесь доказать внося в неё изменения? Что можете переделать её так, что у неё появятся перерасход памяти и тормоза? Ну, можете, я не сомневаюсь, только причём здесь я и моя программа? После Ваших изменений – это уже Ваш код, а не мой, так что предъявляйте претензии себе.
После Ваших изменений – это уже Ваш код, а не мой, так что предъявляйте претензии себе.
Да шо Вы нервничаете. Ложик даже к фастледу прикопался: видите-ли его личная реализация для частного случая, крепко завязанная на железе, и, больше чем уверен, немедля сломающаяся при использовании кем-то другим, работает оптимальней, чем универсальная на все случаи жизни. И виноват в этом, конечно же ООП. Я даже думаю, что он сумеет неоднократно и обильно усраться в попытке доказать, что только его код работает "хороше".
видите-ли его личная реализация для частного случая, крепко завязанная на железе, и, больше чем уверен, немедля сломающаяся при использовании кем-то другим, работает оптимальней, чем универсальная на все случаи жизни. И виноват в этом, конечно же ООП.
Конечно. Мозг, заточенный под ООП, о железе и не догадывается, почему-то. Главное - универсальность, та которая зло.
А я иногда ношу и, представь, один раз даже использовал. Я тода ещё в квартире жил, и по пути в гараж как-то стая бродячих собак меня к стенке припёрла и что-то мне в них не понравилось ("Здесь Паша Эмильевич, обладавший сверхъестественным чутьём, понял, что сейчас его будут бить"). Ну, я, не садист какой - на поражение не стрелял, ни один сукин сын не пострадал, но бежали они знатно, визг под на километр было слышно.
Конечно. Мозг, заточенный под ООП, о железе и не догадывается, почему-то. Главное - универсальность, та которая зло.
Все знают, что узкоспециализированное решение всегда оптимальней универсального. Что дальше? Выкинуть все библиотеки и под каждую задачу керогазить неделями персональные функции, которые работают настолько офигенно быстро, что в обычно-бытовом применении вообще не заметно разницы?
Или для того, чтобы сыканомить 300р на 2560-й меге, потратить месяц, но сука, таки втиснуть в 328-й мк прошивку, которая будет работать три месяца в году на единственном экземпляре девайса и только с определённым железом?
Или для того, чтобы сыканомить 300р на 2560-й меге, потратить месяц, но сука, таки втиснуть в 328-й мк прошивку
Зачем сравнивать убогое? Ваша либа будет работать на ПИК24 или СТМ32? Да она не будет работать даже на СТМ8 или ПИК16! Ну и толку с ваших либ? Где эта ваша хвалёная универсальность? ))))))))))
Обычно берёшь FastLED, пишешь 10 строк и вуаля - бухаешь под весёлое моргание. Без вот этого безумного красноглазия.
Берёшь нормальный МК за копейки, с нормальным железом, "пишешь 10 строк" и не переживаешь, что при добавлении чего либо всё накроется медным тазом. ))))))))
Или для того, чтобы сыканомить 300р на 2560-й меге, потратить месяц, но сука, таки втиснуть в 328-й мк прошивку
Зачем сравнивать убогое? Ваша либа будет работать на ПИК24 или СТМ32? Да она не будет работать даже на СТМ8 или ПИК16! Ну и толку с ваших либ? Где эта ваша хвалёная универсальность? ))))))))))
А чего пик-то взял, чего не рельс, например, или не брус клеёный? В документации приведён английским языком список поддерживаемого железа. В рамках этого перечня библиотека работает нормально. Это всё, что нужно знать самодельщику.
А чего пик-то взял, чего не рельс, например, или не брус клеёный?
А если надо малые размеры и малое потребление? И куда там ООП совать?
Цитата:
В документации приведён английским языком список поддерживаемого железа. В рамках этого перечня библиотека работает нормально. Это всё, что нужно знать самодельщику.
Ну и зачем себя самого ограничивать? Вот в чём вопрос.
Хрен вас всех знает. Всё вам ресурсов не хватает. У меня вот сейчас 4 bldc мотора, так я скромненько создал класс Motor, сделал четыре экземпляра и управляю потихоньку, и не парюсь ни о чём. Даже виртуальные методы есть (не особо нужны, но с ними на полкопейки удобнее показалось). Нехватка ресурсов вообще не проблема - главное, чтобы мозгов хватало.
А если надо малые размеры и малое потребление? И куда там ООП совать?
А если не надо малое потребление контроллера, управляющего лентой, которая сама по себе 25вт жрёт, а Mega вполне себе вписывается в конструктив?
Просто надо пытаться понять, что написано, а не мгновенно рефлексировать, увидев маркер "ООП". Тема не о том, что процедурное программирование должно умереть, а всем надлежит выучить C++ и писать исключительно на нём под страхом десяти лет расстрелов.
HSV в фастледе есть, кстати. И работает он на аппаратном SPI. Обратное утверждение только выдаёт отсутвие знаний о библиотеке у спорщика. Однако свидетельствует о том, что ему просто хочется говна на вентилятор бросить.
Ну если в теме, априори срачной , запрещают срач - ок. Но вот что интересно, все примеры действенности ООП , адепты озвучивают лишь именно в этом ракурсе -кнопочки и леды. Только софтовое ногодрочерство. ООП на большее не годится или ????
яркий пример ,кмк, где ООП более уместен , это библиотеки для описания GUI , в них удобно через ООП делать "сохранение контекста" - например когда энкодер в зависимости от состяния меню это либо "изменение параметра" или "скролл по меню"
или , есть датчик считывания давления , в одном меню его нужно отображать а в другом нет .очень удобно когда те меню где данные с датчика нужны наследуют считывание и реализуют отображение так как требует меню.
HSV в фастледе есть, кстати. И работает он на аппаратном SPI. Обратное утверждение только выдаёт отсутвие знаний о библиотеке у спорщика. Однако свидетельствует о том, что ему просто хочется говна на вентилятор бросить.
Вам срочно надо остыть и успокоиться, у меня "все ходы записаны". ))))))))))))
Я нигде не упоминал HSV и SPI. Не увлекайтесь так рьяно. )))))))))))
bwn, абсолютно не в обиде хотя бы потому, что я очень (ну, очень) давно живу в сети и абсолютно и безоговорочно принимаю то, что модератор может тереть и банить без объяснения причин. Я реально это принимаю и никогда не возмущаюсь, и не обижаюсь. Мой вопрос был просто "не глючит ли форум".
А словоблудие пректратить я их с сс-овцем просил ещё в #72
Хрен вас всех знает. Всё вам ресурсов не хватает. У меня вот сейчас 4 bldc мотора, так я скромненько создал класс Motor, сделал четыре экземпляра и управляю потихоньку, и не парюсь ни о чём. Даже виртуальные методы есть (не особо нужны, но с ними на полкопейки удобнее показалось). Нехватка ресурсов вообще не проблема - главное, чтобы мозгов хватало.
так мозгов других не будет, довольствуемся тем, что есть )))
насчет BLDC интересно бы глянуть, публиковать будете?
насчет BLDC интересно бы глянуть, публиковать будете?
Да я вроде уж как-то про эту работу рассказывал
Двигатели с датчиками Холла находятся внутри колёс, вот такие .
Драйверы для них вот такие. Установлены на радиаторах, сделана схема включения обдува, когда температура уходит за 60. Включается обдув редко.
Питается вся конструкция от двух последовательных лодочных (тяговых) гелиевых аккумуляторов по 80 ампер/часов. Т.е. питание - 24 вольта. Слово "лодочный" - в том смысле, что аккумулятор, позволяющий глубокий разряд. Такие ещё для несколько-киловаттных UPS продаются. Автомобильный можно, но он заточен на выдачу огромных токов за короткое время, а тяговый на выдачу разумных токов долгое время. Гелиевый, это чтобы в случае аварии не выплеснулась кислота на ребёнка.
На каждый драйвер двигателя (ему нужно 36В) питание подаётся вот через такую "повышайку". Т.е. от аккумулятора на входы всех повышаек, а выходы повышаек - на драйверы.
На брюхе повышайки есть разъём и отверстия под резьбу М3 для установки вентиллятора 5015. Приобретаются отдельно (хотя у некоторых продавцов и в комплекте есть) - таких вентилляторов на али хоть попой кушай. Например такой, но этот очень дорогой, я брал раза в три дешевле.
Я сделал все 4 колеса на одном контроллере ATMega328P. Заняты все пины, кроме Reset (т.е. кварца нет и его пины тоже используются). Контроллер гальванически развязан от движков и их драйверов (земли разные) через оптопары. Таким образом, питание, которое даёт драйвер - оно только для "его стороны" оптопар. Аналоговый сигнал на пине VR (скорость) тоже развязан. Там через оптопару цифровой потенциометр подключён. Скоростью управляем через него.
Этот контроллер рулит движками на низком уровне. Он получает по SPI от главного контроллера команды со скоростями на каждом движке и возвращает по тому же SPI реальные скорости (с тахоимпульсов драйвера). Под низким уровнем я понимаю вот что: главный контроллер работает с идеальными скоростями, а этот, например, подкручивает их по таблице поправок. Сама таблица строится по специальной команде от главного контроллера. Машину надо поставить на домкраты и дать команду. Низкоуровневый контроллер начнёт крутить колёса и строить таблицу поправок, чтобы при одинаковых запрошенных скоростях, реальные тоже были одинаковыми. Затем записывает эту таблицу в еепром и потом использует для корректировки скоростей.
о чем можно писать в теме , ... если она совершенно не доказывает преимущества ооп
Ну, я же уже давал тебе ссылку на #62 и говорил, что эта тема НЕ ПРИЗВАНА доказывать или опровергать чьи-то преимущества. Хочешь доказывать/опровергать - создай другую тему. Эта тема НЕ ПРО ЭТО.
ЕвгенийП, и ? Это абсолютно доказывает преимущество ооп? Вы знаете что есть бритва Оккама?
Начинаю сомневаться, что Вы умеете читать. Я в #78 хоть слово сказал о преимуществах или о доказательствах? Я, знаете ли, давно уже ничего никому не доказываю (ну, разве что своим внукам - что я лучший в мире дед). Я сделал так потому, что мне так было удобно. Я просто не парюсь ни о преимуществах, ни о доказательствах, мне это пофиг абсолютно. Делаю как хочу, как мне удобно, как мне нравится.
Так dosikus и у меня где-то доказательства преимуществ ООП углядел. Видимо, хочется человеку, чтобы кто-то что-то доказывал, чтобы было с чем поспорить, а тут не доказывают - беда :(
Что-то всё скатилось как всегда. Тут по ссылочке за 2000-й год известное всем фейковое интервью Страуструпа. Тоже интересно, но уровень обсуждения чуть выше. Рекомендую ознакомиться.
Ворота, я не менял тему, я просто выразил непонимание - зачем делать сложно и долго, когда можно сделать просто и быстро. Я понимаю - машинный код будет один и тот же, я тоже так могу. Но зачем усложнять то, что можно не усложнять? Вот если бы вы показали как сделать исполняемый код короче за счёт ООП. Или ещё какие удобства ООП. Единственное (сомнительное) достоинство вашего кода - уровень абстракции выше на волосок.
Schwarz78, я вам немножко объясню. Эмбедд это не ПС , их нельзя смешивать ну ни как. Полное абстрагирование от железа вылилось в очень пакостную ситуацию. Снижение уровня вхождения повлекло за собой снижение уровня разработок...
Я эмбедом 22 года занимаюсь. Но здесь форум про Ардуино ваще-то)
понятно, я подумал, что двигатель как на квадрокоптерах, без датчика холла, тогда требуется три пина цифровых и три аналоговых на каждый движок и, возник вопрос - как? )))
Неуважаемый брехливый гандон, не далее, как вчера, Вы сбрехали, что
Beginer123 пишет:
не кашляй, урод. На этом форуме - меня больше не будет. Архат - прав, тут одни идиоты
Извинений ни за урода, ни за идиотов не последовало, а потому, "не будет", так "не будет", пошел на йюх, дурак брехливый. Может, хоть с моей помощью, у Вас раз в жизни получится правду сказать.
Нахера мне в код копировать
Рехнулись шоле на почве ООП.
Здоров ли ты, дорогой? Ты понимаешь значение простых фраз на упрощенном русском?
Например фразы: "Выложенный код не компилируется". И отличие этой фразы от: "Выложенный код легко исправить для компиляции".
А с коих пор у нас сообщения компилятора кодом считаются?
Вам знакомо понятие "overhead"? В данном коде overhead в 147 строк. Я не имею ничего против ООП-языков, и понимаю для чего они нужны. Но данный пример показывает не только что автор умеет в С++, но и то что классы здесь и нафиг не сдались.
Так и ни кто не против ООП. Просто популизаторам неймется попопулизировать им чешется. И доказать недоказуемое. Нет чтоб составить пример где ООП действительно разумно применять и демонстрировать его преимущества.
Вам знакомо понятие "overhead"?
Таки какой overhead Ви имеете в виду? Сomputing overhead пока что тут не наблюдается.
Вам знакомо понятие "overhead"?
Знакомо, только я не понял почему Вы начали со мною спорить. Я совершенно не оспаривал Вашего мнения, лишь сказал, что отлично, что оно у Вас есть - не более того.
Пример искусственный и, да, наверное, не самый удачный. Хотя, неясно, возможно ли вообще сделать удачный пример, демонстрирующий преимущества ООП так, чтобы он оставался разумного размера. Думаю, автор и не ставил такой цели. Цель, на мой взгляд, была показать, что все средства ООП, кроме виртуальных функций, можно использовать без перерасхода памяти и тормозов. Это он сделал. Может не самым очевидным образом, но сделал.
А overhead. Так overhead'а ни по памяти, ни по времени выполнения нет. А overhead по строкам исходного кода - лично мне он неинтересен - эти строки живут в отдельных файлах и никому не мешают.
Также можно сказать, что определение констант вместо использования литералов непосредственно в коде - это overhead по строкам исходного кода. Но все как-то определяют и признают это удобным.
(это моё мнение и я не навязываю его Вам и не настаиваю, чтобы Вы с ним соглашались).
А с коих пор у нас сообщения компилятора кодом считаются?
1. Не видел таких плагинов к ИДЕ, которые размещают сообщения компилятора на форуме под тэгом "code".
2. Путь непризнания своих косяков кончился для Архата печально. Тебе интересен этот путь?
3. Ты за него "просто по фану" вписываешься или концепция близка? Какая из, хочу поинтересоваться? Великий оставил много пахучих куч наследия, за баней ... там обычно много похожего.
А с коих пор у нас сообщения компилятора кодом считаются?
wdrakula, Ворота, раслабьтесь и забейте. Это ещё один никогда и ни в чём не ошибающийся персонаж. Вы забыли? :)))
А с коих пор у нас сообщения компилятора кодом считаются?
1. Не видел таких плагинов к ИДЕ, которые размещают сообщения компилятора на форуме под тэгом "code".
2. Путь непризнания своих косяков кончился для Архата печально. Тебе интересен этот путь?
3. Ты за него "просто по фану" вписываешься или концепция близка? Какая из, хочу поинтересоваться? Великий оставил много пахучих куч наследия, за баней ... там обычно много похожего.
Ох ты борзый какой! Банить собрался? Бань, жду.
ПС. Ахат хоть код писать умел, а ты пустые угрозы пишеш.
Таки какой overhead Ви имеете в виду? Сomputing overhead пока что тут не наблюдается.
Overhead по времени, затраченному на написание кода. А ещё ни дай бог этот код придётся другому кодеру разбирать и поддерживать. Тогда я точно выбираю вариант без ООП. Это применительно к данному коду. Есть много вариантов, когда ООП-подход удобней и изящней получается, но здесь тема не раскрыта.
Здесь такое - "парни я написал огромную малопонятную простыню, которая генерится в тот же код, что и эта простенькая программка". Где здесь профит?
Overhead по времени, затраченному на написание кода. А ещё ни дай бог этот код придётся другому кодеру разбирать и поддерживать. Тогда я точно выбираю вариант без ООП. Это применительно к данному коду. Есть много вариантов, когда ООП-подход удобней и изящней получается, но здесь тема не раскрыта.
Здесь такое - "парни я написал огромную малопонятную простыню, которая генерится в тот же код, что и эта простенькая программка". Где здесь профит?
Вам не кажеца, что ты вапще не прав?
но здесь тема не раскрыта.
А её тут и не раскрывали. Данный топик - отголосок другого, где шёл спор за безусловный ресурсный импакт от ООП при программировании МК.
Тема данного топика - "можно писать с использованием ООП без единого байта/такта оверхеда". Была поставлена несложная задача и решена именно так - "без единого байта/такта оверхеда". Так что, тема раскрыта полностью.
Очевидно, что в том, что Вы неправильно поняли тему, вина исклюительно автора - не донёс. Признаю. Но, теперь, надеюсь, недоразумение снято.
И ещё, с сведению тех, кто подобно Логику, собирается сказать, что программ дерьмо на том основании, что стоит внести в неё изменения (перенести в loop, сделать глобальными или любые другие), как она тут же потеряет свои качества.
Во-первых, Вы много видели программ, которые как ни изменяй – а они всё работают? Давайте я в Вашей самой лучшей программе заменю все вызовы digitalRead на вызовы pulseIn (или там что-нибудь в loop перенесу) и начну утверждать, что она дерьмо раз сломалась. Глупо? Ну, а Вы что пишете?
Во-вторых, что Вы пытаетесь доказать, внося изменения в мою программу? Я написал её так как написал и доказал, что могу обойтись без перерасхода памяти и снижения быстродействия. А вы что пытаетесь доказать внося в неё изменения? Что можете переделать её так, что у неё появятся перерасход памяти и тормоза? Ну, можете, я не сомневаюсь, только причём здесь я и моя программа? После Ваших изменений – это уже Ваш код, а не мой, так что предъявляйте претензии себе.
После Ваших изменений – это уже Ваш код, а не мой, так что предъявляйте претензии себе.
Да шо Вы нервничаете. Ложик даже к фастледу прикопался: видите-ли его личная реализация для частного случая, крепко завязанная на железе, и, больше чем уверен, немедля сломающаяся при использовании кем-то другим, работает оптимальней, чем универсальная на все случаи жизни. И виноват в этом, конечно же ООП. Я даже думаю, что он сумеет неоднократно и обильно усраться в попытке доказать, что только его код работает "хороше".
Да шо Вы нервничаете.
Не, не нервничаю. Ему-то я уже ответил выше, да и знаю я его, у него все его гуси - лебеди. Просто есть же и адекватные люди. Это я для них написал.
Вот, к примеру, Schwarz78 со мной не согласен, но он адекватен, и я ему адекватно ответил.
Не, не нервничаю.
ОФФТОП.
Вот просто завидую твоей сдержанности! И я не прикалываюсь.
Я, в свое время, выправил себе лицензию на ношение... но никогда не ношу с собой ствол. Потому, что в своей сдержанности совсем не уверен. :((
видите-ли его личная реализация для частного случая, крепко завязанная на железе, и, больше чем уверен, немедля сломающаяся при использовании кем-то другим, работает оптимальней, чем универсальная на все случаи жизни. И виноват в этом, конечно же ООП.
Конечно. Мозг, заточенный под ООП, о железе и не догадывается, почему-то. Главное - универсальность, та которая зло.
Конечно. Мозг, заточенный под ООП, о железе и не догадывается, почему-то. Главное - универсальность, та которая зло.
Все знают, что узкоспециализированное решение всегда оптимальней универсального. Что дальше? Выкинуть все библиотеки и под каждую задачу керогазить неделями персональные функции, которые работают настолько офигенно быстро, что в обычно-бытовом применении вообще не заметно разницы?
Или для того, чтобы сыканомить 300р на 2560-й меге, потратить месяц, но сука, таки втиснуть в 328-й мк прошивку, которая будет работать три месяца в году на единственном экземпляре девайса и только с определённым железом?
А я с 1992 оружия в руках не держал. Как-то после одиннадцати (считая учёбу) лет в армии не тянуло.
Или для того, чтобы сыканомить 300р на 2560-й меге, потратить месяц, но сука, таки втиснуть в 328-й мк прошивку
Зачем сравнивать убогое? Ваша либа будет работать на ПИК24 или СТМ32? Да она не будет работать даже на СТМ8 или ПИК16! Ну и толку с ваших либ? Где эта ваша хвалёная универсальность? ))))))))))
ssss, dosikus, прекращайте, добром прошу. Итак уж тему засрали. Давайте "не надо", пожалуйста.
Обычно берёшь FastLED, пишешь 10 строк и вуаля - бухаешь под весёлое моргание. Без вот этого безумного красноглазия.
Берёшь нормальный МК за копейки, с нормальным железом, "пишешь 10 строк" и не переживаешь, что при добавлении чего либо всё накроется медным тазом. ))))))))
Или для того, чтобы сыканомить 300р на 2560-й меге, потратить месяц, но сука, таки втиснуть в 328-й мк прошивку
Зачем сравнивать убогое? Ваша либа будет работать на ПИК24 или СТМ32? Да она не будет работать даже на СТМ8 или ПИК16! Ну и толку с ваших либ? Где эта ваша хвалёная универсальность? ))))))))))
А чего пик-то взял, чего не рельс, например, или не брус клеёный? В документации приведён английским языком список поддерживаемого железа. В рамках этого перечня библиотека работает нормально. Это всё, что нужно знать самодельщику.
Спасибо.
Действительно, похоже, я облажался с понятностью материала, раз меня "массово" неверно поняли :(
А чего пик-то взял, чего не рельс, например, или не брус клеёный?
А если надо малые размеры и малое потребление? И куда там ООП совать?
В документации приведён английским языком список поддерживаемого железа. В рамках этого перечня библиотека работает нормально. Это всё, что нужно знать самодельщику.
Ну и зачем себя самого ограничивать? Вот в чём вопрос.
Дык на это прививки делали (от переживаний по пустякам), на службе ещё, иммунитет до сих пор работает.
Растафаррай вайбрешен... и жизнь прекрасна.
Хрен вас всех знает. Всё вам ресурсов не хватает. У меня вот сейчас 4 bldc мотора, так я скромненько создал класс Motor, сделал четыре экземпляра и управляю потихоньку, и не парюсь ни о чём. Даже виртуальные методы есть (не особо нужны, но с ними на полкопейки удобнее показалось). Нехватка ресурсов вообще не проблема - главное, чтобы мозгов хватало.
А если надо малые размеры и малое потребление? И куда там ООП совать?
А если не надо малое потребление контроллера, управляющего лентой, которая сама по себе 25вт жрёт, а Mega вполне себе вписывается в конструктив?
Просто надо пытаться понять, что написано, а не мгновенно рефлексировать, увидев маркер "ООП". Тема не о том, что процедурное программирование должно умереть, а всем надлежит выучить C++ и писать исключительно на нём под страхом десяти лет расстрелов.
HSV в фастледе есть, кстати. И работает он на аппаратном SPI. Обратное утверждение только выдаёт отсутвие знаний о библиотеке у спорщика. Однако свидетельствует о том, что ему просто хочется говна на вентилятор бросить.
яркий пример ,кмк, где ООП более уместен , это библиотеки для описания GUI , в них удобно через ООП делать "сохранение контекста" - например когда энкодер в зависимости от состяния меню это либо "изменение параметра" или "скролл по меню"
или , есть датчик считывания давления , в одном меню его нужно отображать а в другом нет .очень удобно когда те меню где данные с датчика нужны наследуют считывание и реализуют отображение так как требует меню.
как примеры
TouchGFX(ООП MVP) vs STemWin
Хорошая тема скатилась в срач. Как и всегда - там, где отметился архат, такое бывает с вероятностью в 100%.
Хорошая тема скатилась в срач. Как и всегда - там, где отметился архат, такое бывает с вероятностью в 100%.
HSV в фастледе есть, кстати. И работает он на аппаратном SPI. Обратное утверждение только выдаёт отсутвие знаний о библиотеке у спорщика. Однако свидетельствует о том, что ему просто хочется говна на вентилятор бросить.
Вам срочно надо остыть и успокоиться, у меня "все ходы записаны". ))))))))))))
Я нигде не упоминал HSV и SPI. Не увлекайтесь так рьяно. )))))))))))
Я нигде не упоминал HSV и SPI. Не увлекайтесь так рьяно. )))))))))))
Это к dosikus было. Не успел дописать ник в пост, отвлёкся на более полезные дела.
Владимир, т.к. сегодня не пятница, я не понимаю в ООП, но хорошо понимаю в срачах, все диалоги с пользователем dosikus почистил. Надеюсь не в обиде?
To dosikus, предлагаю прекратить словоблудие и если есть желание, писать по существу. Цвет фекалий не относится к ООП и к данной теме.
bwn, абсолютно не в обиде хотя бы потому, что я очень (ну, очень) давно живу в сети и абсолютно и безоговорочно принимаю то, что модератор может тереть и банить без объяснения причин. Я реально это принимаю и никогда не возмущаюсь, и не обижаюсь. Мой вопрос был просто "не глючит ли форум".
А словоблудие пректратить я их с сс-овцем просил ещё в #72
Хрен вас всех знает. Всё вам ресурсов не хватает. У меня вот сейчас 4 bldc мотора, так я скромненько создал класс Motor, сделал четыре экземпляра и управляю потихоньку, и не парюсь ни о чём. Даже виртуальные методы есть (не особо нужны, но с ними на полкопейки удобнее показалось). Нехватка ресурсов вообще не проблема - главное, чтобы мозгов хватало.
так мозгов других не будет, довольствуемся тем, что есть )))
насчет BLDC интересно бы глянуть, публиковать будете?
насчет BLDC интересно бы глянуть, публиковать будете?
Да я вроде уж как-то про эту работу рассказывал
Двигатели с датчиками Холла находятся внутри колёс, вот такие .
Драйверы для них вот такие. Установлены на радиаторах, сделана схема включения обдува, когда температура уходит за 60. Включается обдув редко.
Питается вся конструкция от двух последовательных лодочных (тяговых) гелиевых аккумуляторов по 80 ампер/часов. Т.е. питание - 24 вольта. Слово "лодочный" - в том смысле, что аккумулятор, позволяющий глубокий разряд. Такие ещё для несколько-киловаттных UPS продаются. Автомобильный можно, но он заточен на выдачу огромных токов за короткое время, а тяговый на выдачу разумных токов долгое время. Гелиевый, это чтобы в случае аварии не выплеснулась кислота на ребёнка.
На каждый драйвер двигателя (ему нужно 36В) питание подаётся вот через такую "повышайку". Т.е. от аккумулятора на входы всех повышаек, а выходы повышаек - на драйверы.
На брюхе повышайки есть разъём и отверстия под резьбу М3 для установки вентиллятора 5015. Приобретаются отдельно (хотя у некоторых продавцов и в комплекте есть) - таких вентилляторов на али хоть попой кушай. Например такой, но этот очень дорогой, я брал раза в три дешевле.
Я сделал все 4 колеса на одном контроллере ATMega328P. Заняты все пины, кроме Reset (т.е. кварца нет и его пины тоже используются). Контроллер гальванически развязан от движков и их драйверов (земли разные) через оптопары. Таким образом, питание, которое даёт драйвер - оно только для "его стороны" оптопар. Аналоговый сигнал на пине VR (скорость) тоже развязан. Там через оптопару цифровой потенциометр подключён. Скоростью управляем через него.
Этот контроллер рулит движками на низком уровне. Он получает по SPI от главного контроллера команды со скоростями на каждом движке и возвращает по тому же SPI реальные скорости (с тахоимпульсов драйвера). Под низким уровнем я понимаю вот что: главный контроллер работает с идеальными скоростями, а этот, например, подкручивает их по таблице поправок. Сама таблица строится по специальной команде от главного контроллера. Машину надо поставить на домкраты и дать команду. Низкоуровневый контроллер начнёт крутить колёса и строить таблицу поправок, чтобы при одинаковых запрошенных скоростях, реальные тоже были одинаковыми. Затем записывает эту таблицу в еепром и потом использует для корректировки скоростей.
ну, вот как-то так.
Ну, я же уже давал тебе ссылку на #62 и говорил, что эта тема НЕ ПРИЗВАНА доказывать или опровергать чьи-то преимущества. Хочешь доказывать/опровергать - создай другую тему. Эта тема НЕ ПРО ЭТО.
Какое из этих слов тебе не понятно?
Да, вот так, не призвана и всё.
Так dosikus и у меня где-то доказательства преимуществ ООП углядел. Видимо, хочется человеку, чтобы кто-то что-то доказывал, чтобы было с чем поспорить, а тут не доказывают - беда :(
ради фразы
Нехватка ресурсов вообще не проблема - главное, чтобы мозгов хватало.
Мне просто захотелось её сказать на фоне развернувшейся дискусии. Надеюсь, Вы не восприняли её как доказательство чьих-то преимуществ?
И, да, кстати, хочется верить, что Вы не собираетесь учить меня, что мне писать в той или иной теме, а что - не писать.
Что-то всё скатилось как всегда. Тут по ссылочке за 2000-й год известное всем фейковое интервью Страуструпа. Тоже интересно, но уровень обсуждения чуть выше. Рекомендую ознакомиться.
https://www.linux.org.ru/forum/development/22475
Ворота, я не менял тему, я просто выразил непонимание - зачем делать сложно и долго, когда можно сделать просто и быстро. Я понимаю - машинный код будет один и тот же, я тоже так могу. Но зачем усложнять то, что можно не усложнять? Вот если бы вы показали как сделать исполняемый код короче за счёт ООП. Или ещё какие удобства ООП. Единственное (сомнительное) достоинство вашего кода - уровень абстракции выше на волосок.
Я эмбедом 22 года занимаюсь. Но здесь форум про Ардуино ваще-то)
понятно, я подумал, что двигатель как на квадрокоптерах, без датчика холла, тогда требуется три пина цифровых и три аналоговых на каждый движок и, возник вопрос - как? )))
Выдержка из письма Архата по теме (не дословно):
Ты ж выпилился отсюда, перед этим пообзывав других уродами, урод. Пшёл вон, гнилой архат.
Вижу сферический квонокод с бессмысленными дефайнами, так же выдающий увлечение автора стилистикой Маяковского.
Выдержка из письма Архата по теме (не дословно):
Неуважаемый брехливый гандон, не далее, как вчера, Вы сбрехали, что
Извинений ни за урода, ни за идиотов не последовало, а потому, "не будет", так "не будет", пошел на йюх, дурак брехливый. Может, хоть с моей помощью, у Вас раз в жизни получится правду сказать.
Даже жаль, что я не успел :(