ВНИМАНИЕ! 💚💲 В сегодняшних условиях канал существует только на Ваши донаты. Чтобы поддержать канал, пройдите по ссылке: musbench.com/all/donate/ Проект с ответом на "домашнее задание" в конце этой статьи musbench.com/all/arduino-breakout-boards/ Всем Спасибо!
Это лучший автор видеоуроков. Короткими и простыми объяснениями начинающим становится понятно то, что читая многие учебники кажется сложным. С нетерпением буду ждать продолжений этой темы. Огромная благодарность Автору. Mbs это сила.
Понравилось видео. Главное рассказываете подробно и не возникает вопросов, почему здесь не раскрыли тему, почему здесь не рассказали об этом функционале.
Бодро,бодро Жду от вашего канала больше сложностей) ЛСД дисплеи(от мало до велико) Энкодер Работа с часами Многозадачность дисплея и энкодера))) А так достаточно хорошо разжевано,спасибо
Большое спасибо. Как раз сейчас изучаю протэус, и ардуино. Только не знал, что можно сделать так как показали Вы. Пришлось установить доп. библиотеки непосредственно с платами ардуино, а скетч пишу в ардуино IDE. Обязательно попробую Ваш метод. Ведь он помогает освоить алгоритм программы. Однозначно ЛАЙК! ( Подписан давно))) ) Жду следующего урока.
Я тоже поначалу использовал дополнительные библиотеки Ардуино. Кстати они лежат у меня на сайте. Позже узнал о том что в протеус уже все есть начиная с 8 версии (вроде). Просто почитал англоязычную документацию по протеус. И метод когда вы пишете в ардуино IDE а симулируете а Протеус тоже имеет место быть.
Здравствуйте, Олег. Хотя это и первый урок по данной теме, но у меня сразу все получилось. Были нюансы с настройкой доступа к библиотекам, но в инете инфы полно и все решил. Очень интересуюют подобные уроки. Пожалуйста продолжайте , усложняя примеры до максимальных возможностей платформы Proteus.
Очень нужная тема подоспела... Как всегда, грамотное и подробное объяснение. 👏👍 Кстати, а можно ли импортировать в Протеус другую периферию ? Например, дисплеи другого формата ...
Отличный урок по proteus и программированию. Давно хотел разобраться с протеусом. Для визуального программирования лучше использовать FLProg. Но и в данном случае это тоже отлично совмещается.
Я пробовал FLprog, нормальная штука. Но протеус это протеус. Это связка лучший симулятор+ VSM Studio. Здесь можно не только рисовать эти алгоритмы, но и писать нормальным образом как обычно и все в одной программе. стоимость 8 с половиной тысяч долларов ($8622) в максимальной версии...
программист я ещё тот)) информатику учил в 1986 году) огромное спасибо за урок, очень понятно, даже пенсионеру, жду первую посылку с Али, а пока здесь по практикуюсь))
Большего бреда придумать трудно)) В идеале ассемблер конечно хотя бы по верхам для понимания почему, куда и что)) Ну или хотя бы Си + куча документации...)) Вы прям считаете себя умней всех? Хочу вас разочаровать)) Эта хрень требует даже больше знаний чем ардуино)) В ардуино вы не видите только как работает перефирия и как вы с ней взаимодействуете а тут вы вообще не понимаете как оно работает всё...))
@@ПавелДубровин-у8е, ваш комментарий, прекрасный образчик бреда, дислексии, дисграфии и хамства. 😆 Не имей винда визуальной оболочки и популярности не имела б она. Не понимает это только тупая ма...а дошедшая до ручки, до точки и это только цветочки...
Да, для начинающих визуальный редактор протеуса - отличная штука для вхождения в тему микроконтроллеров. Никто не мешает открыть скетч, создаваемый визуальным редактором и посмотреть как там все устроено. Если человек почувствует что это ему вообще нужно.
Иногда важно именно по нажатию кнопки... Например в споттере(авторихтовка вытягивание вмятин). Так там некоторое количество импульсов по событию кнопки шли в нагрузку. Так мастер по рихтовке попросил что бы именно по нажатию начинался отсчёт... Т.е. не важно сколько держишь кнопку нажатой... При первом нажатии должно отработать процедура. Следующая при повторном нажатии и т.д. тут удобство работы - нажал кнопку что-то произошло(1раз) и пока не отпустишь тишина. Лично я, использовал флаги, правда пишу на cavr. За урок спс.
Перечитал ваш комментарий 5 раз. Нифига не понял. Какой-то поток сознания. Нажатие кнопки можно обработать тремя алгоритмами: 1) Падение уровня. Как только уровень на пине падает с 1 до 0, то случается прерывание и далее по программе. 2) Удержание. Как только уровень на пине изменился, запускаем таймер, если время удержания вышло, то прерывание и обработка. 3) Срабатывание по отпусканию. Контроллер ловит падение уровня на пине и ждет когда уровень восстановится. Далее обработка.
Прикольно. Хотя мне больше FLProg нравится. По поводу шильда, что-то с одной кнопкой экрана не видел, обычно 5 кнопок последовательных с резисторами в режиме делителя включенных на аналоговый вход. Т.е. для опроса необходимо замерить напряжение для каждой кнопки.
Отличный урок! Не знал что Proteus может работать как FlowCode. А вот есть ли возможность так же работать с Node MCU 8266? Это более перспективный проц. Да и возможностей у него гораздо больше. Но всё равно спасибо за Ваши уроки. Учился у Вас работать в SolidWorks. Спроектировал в нём свою комнату, сделал мебель . Жена счастлива от вида новой обстановки. Как раньше обходился без 3D моделирования - не знаю! А начинал с Ваших уроков! Вы делаете большое дело. Успехов и СПАСИБО!!!
@@chestbslava2735 да сразу так и не вспомню. Где то на торрентах. У меня стоит 17го года. Скачал уже давно 21го года, но до сих пор не устанавливал, его достаточно сложно корректно установить. Те ещё танцы с бубном. )
Отличный урок!, в процессе просмотра понял ошибку в бетта версии одного своего большого проекта (я ее тогда решил через прерывание). Скоро буду делать новый проект, попробую написать его в этой программе.
Добрый день Олег ! Урок Ардуино и Proteus,который Вы показали все отлично, а я вот захотел сделать включение диода кнопкой на другой pin ардуино и не могу сообразить - ничего не работает, может как-нибудь будет урок о кнопках и диодах, СПАСИБО!
Как не возникает вопросов...? А что с дребезгом контактов? Кнопки любят дребезжать... Или ардуина , каким то скрытым от глаз способом устраняет этот дребезг?
Немного пригорел, нажимаем кнопку и вешаем мк на пустом цикле, почему не использовать триггер? И io1 я так понимаю это первый пин uno, пин uart(a), а потом тысячи жалоб, почему плата не шьётся...потому, что в железе она у тебя к земле - 5в притянута...такие вещи надо с азов вдалбливать!
Не понял как в условии if( треугольник) проверить переменную на равенство заданному параметру,там только тру или фолс. Создал переменную volume при нажатии на кнопки она увеличивается или уменьшается на единицу.надо чтобы при достижении ей 0 и 63 она оставалась равной нулю и 63,но в блоке if не понял как задать сравнение ,там только проверка на true и false.
Не знал что такое в Шпротеусе есть. Минус всех этих систем в том им не хватает гибкости, всегда нужны какие-то блоки того или другого. Подключить свой дисплей очень сложно и накладно в плане вычислительной мощности.
Спасибо за материал. А с ATMega8 работать получится? И ещё вопрос. А как у протеуса обстоят дела с захламлением памяти глобальными переменными? Я как-то пробовал FLProg, вот там ужос с этим делом. ПС - Всегда интересный контент. Ещё раз спасибо!
Я так понимаю, что и для обычных микроконтроллеров можно таким образам писать программы? Если да то сделайте потом также и по ним уроки, очень интересно! Я думаю, что это лучший способ начать путь в программировании микроконтроллеров, сначала разобраться визуально как всё работает, а потом уже влазить в дебри и писать всё вручную..)
Ардуино - обычный контроллер AtMega установленный на плату со светодиодом, кнопкой и преобразователем USB-COM. Никто не мешает эту прошивку залить в отдельный контроллер через отдельный программатор, и это будет также работать. То есть мы уже пишем для обычного контроллера
@@MbsElectronics Ардуино это фреймворк, то есть набор высокоуровневых функций, скрывающих конкретную реализацию, посему работающее на различных семейтвах МК, это просто изначально только AVR. Но за все нужно платить, в данном случае размером кода и производительностью, когда вместо записи операции МК выполняется функция ардуино, которая должна еще отпарсить параметры и только обработав вызвать соответствующую команду. А по причине того что и библиотеки пишутся кем попало, все вместе оставляешь желать лучшего. Такая же ситуация и с HAL на stm32. Все это если что то быстро слепить что-то не задумываясь. И ты не хочешь тратить время разбираться в МК, хотя зачем тебе тогда МК, если тебе это не интересно :). И получается для примера беру устройство на stm32 с прошивкой написанной человеком на HAL и занимающей 120кБ и прям видно как прорисывается экран, пишу свою прогу на регистрах и выходит 60кБ и 100fps на этом экране получил, написав свою либу :). Лично я пишу код непосредственно на регистрах, я знаю и AVR и x51 и STM8 и STM32 вплоть до ассемблера, знаю как СИ код записать чтобы компилятор преобразовал его наиболее эффективно. Но это мое хобби для души, мне это нравится, сделать для себя хорошо. Я никогда не зарабатывал этим и не планирую. Всякие надстройки типа ардуино просто не приемлю всеми фибрами. Оно скрывает от изучения устройство и работу МК, оно добавляет лишний код влияя на производительность. Но понимаю что для совсем новичков, которые вообще еще ничего не знают как старт подойдет. Но когда человек годами сидит на ардуино, это уже печаль, очевидно МК это вообще не его тема. Он за это время так и не захотел ничего изучить. AVR из 90х давно не актуален, сейчас эта древняя поделка, которая даже не имеет на борту отладчика чтобы можно было по человечески отлаживать программу, просто слать по UART что-то, вы серьезно? Какие то фьюзы, когда в нормальных МК все настройки делаются из кода на лету, выглядит честно просто убого. В AVR, кстати, даже операции деления нет. Я уж не говорю про убожество периферии, 328p сливающий даже самому простому брату по 8мибитам stm8s003, который при этом и дешевле даже тини, ахаха, от чего не глупые киты на stm8 все и штамповали, а не на AVR. А уж когда люди брали attiny13 по цене (а то и дороже) того же s003 и корячились с этим убожеством с шорами на глазах это просто финиш. Кстати 32бит stm32 лет 5 назад пробили планку в 0.5$ и можно было купить 32бит stm32 дешевле 8бит stm8. Просто люди в большинстве своем не хотят думать. Просто дерут поделки друг у друга. А т.к. AVR появился еще в 90х, то тогда на нем много чего делали, вот так шлейф и тянется тех поделок, хахаха. И вот они друг у друга все тянут и тянут его, шел 2022 год.... Платки на STM32F401 по 2$ на али. Всякие esp с WIFI, BT аналогично. Даже того же класса 8 бит stm8 на голову выше AVR. Поражает человеческая лень....
@@dekus80 Да этот урок не для Вас, а для начинающих, что бы поиграться, и понять надо оно вообще, или нет? А там уже, когда человек вникнет, и уже решит нырять ему глубже типо stm 32 или ему возможности Ардуино хватит с головой. Чем хороша Ардуино? Купил плату по цене шаурмы, скачал бесплатную программу с официального сайта, воткнул плату в компьютер, и ты уже программист МК!!! )))) А с STM-32 этот номер не прокатит. Даже с Атмега-8 этот номер не прокатит. Так что Вы все правельно написали, но для "чайников" поиграться лучше ардуино вариантов НЕТ. Я так думаю!!!
@@zamer_garage Я прекрасно знаю что это не для меня. Я же и сам написал что для совсем начинающих. Я постарался ответом раскрыть что вообще такое ардуино, т.к. автор не верно передал что это такое, описав это как МК AVR. Хотя смысл ардуино это, как я написал, оболочка из простых функций, скрывающая более сложную и конкретную реализацию для МК, почему и ставшая популярной для начинающих. Но по этой же причине набора высокоуровневых функций и не привязанная к железу, т.к. реализацию можно уже написать под разные МК. То есть по идее ты можешь взять плату с avr, с stm32 и этот же код будет работать и там и там. Когда вы ставите ардуино в ее папке расположены исходные СИ файлы в которых и написана реализация этих функций под МК и ваш скетч компилируется вместе с этими файлами компилятором этого МК. По этой же причине если вы захотите добавлять или писать код непосредственно под мк обращаясь к его регистрам вы можете это делать и в ардуино ide, т.к. это все компилируется компилятором этого мк, ему все равно это код обращения к регистрам из файла ардуино или ваш. Я еще добавлю что МК ограничен в ресурсах и тут постоянно нужно думать :). Скажем берем мы 8бит МК, как в видео. Вот для него умножение чисел больше 255 (то есть больше 8 бит) уже будет не выполнение одной команды МК, а вызов функции простыни из команд программной реализации. А для 32бит МК это одна команда МК. Берем бездумно float. У простых МК нет команд с плавающей точкой. Опять на каждую операцию простыня из команд программной реализации на каждый символ операции в вашем коде. Хотя, для примера, можно использовать целочисленную арифметику, храня например числа с одним знаком после запятой как целое число с умножением на 10. И на 32бит stm32 это будет всего одна команда МК. Вот у меня тоже есть код по работе с 18B20 и мне не потребовалось задействовать float и программные простыни кода на математические операции для работы с ними, соответственно кратно быстрее работающая программа. Всякие умножения и деления кратные 2 это более быстрые операции смещения >. И т.д. По коду автора видно что вообще ничего из этого он не знает, да и знать не желает, без обид. Не развивается никак, застопорился где то в начале и все. Для этого не нужны никакие статьи или видео людей неизвестной компетенции, какие то книги, достаточно одной официальной документации от производителя МК и желание развиваться и совершенствоваться (кстати последние 2 слова это не блажь, а необходимость, чтобы оставаться дольше в своей жизни в ясном уме :) ). Вот чем мне и нравится работать с МК, позволяет лишний раз поработать мозгами, учитывать кучу моментов что бы сделать хорошо.
Доброго времени суток. У меня не выбирается контроллер из семейства ардуино. список контроллеров выходят но они как будто не активны. Подскажите пожалуйста в чем может быть проблема
"BITTON" - )) А в целом - познавательно. Как раз во-время подоспело видео - никак не мог приступить к программированию индикаторов. Казалось будет сложно.
Конечно. Переключитесь в окно схемы, дважды кликните по микроконтроллеру. В строке program file скопируйте путь. Там лежат все файлы, включая hex для прошивки и файл на языке C. В нашем случае это будет main.cpp. Обычно это временная папка пользователя винды и может быть очищена после выхода из протеус. Смотрите сразу после компиляции и если нужно сохраните файлы в другое место Вот скетч нашего визуального проекта ++++++++++++++++ #line 1 "../main.ino" #include #line 1 // Generated by Proteus Visual Designer for Arduino // Peripheral Configuration Code (Do Not Edit) //---CONFIG_BEGIN--- #pragma GCC push_options #pragma GCC optimize ("Os") #include // Required by cpu #include #include // Required by LCD1 #include // Required by LCD1 #include #include void peripheral_setup (); void peripheral_loop (); void chart_SETUP (); void chart_LOOP (); void setup (); void loop (); #line 14 #pragma GCC pop_options // Peripheral Constructors CPU &io_cpu = Cpu; AlphanumericLcd io_LCD1 = AlphanumericLcd (7, 6, 5, 4, 3, 2); GenericButton io_BTN1 = GenericButton (1); void peripheral_setup () { io_LCD1.begin (16, 2); } void peripheral_loop() { } //---CONFIG_END--- // Flowchart Variables long var_i; // Flowchart Routines void chart_SETUP() { var_i=0; io_LCD1.clear(); io_LCD1.print().arg("BITTON PRESSED").end(); io_LCD1.setCursor(0,1); io_LCD1.print().arg(toString(var_i)).end(); } void chart_LOOP() { if(io_BTN1()) { while (io_BTN1()) { } var_i=var_i+1; io_LCD1.setCursor(0,1); io_LCD1.print().arg(toString(var_i)).end(); } } // Entry Points and Interrupt Handlers void setup () { peripheral_setup(); chart_SETUP(); } void loop () { peripheral_loop(); chart_LOOP(); }
Дело в том что программы - это же не религиозные конфессии, это инструменты для работы и творчества. Никто не мешает пробовать и то и это, а потом время покажет
Получается, если кто-то нажмёт на кнопку, но не отпустит её, он погрузит программу в бесконечную петлю и до момента отпускания кнопки ничего далее работать не будет. Разве не так?
Вы можете посмотреть в исходниках в файле Generic.h в папке протеуса по пути ....\Proteus 8 Professional\DATA\VSM Studio\drivers\arduino\Generic\ Фактически для модуля кнопки это обычный digitalRead(pin) без каких либо задержек, поэтому все ложится на плечи разработчика. Для опроса по прерыванию есть модуль evеnt. При желании можно посмотреть все исходники подключаемых библиотек. Во время компиляции создается обычный файл на C, его тоже можно посмотреть. Путь к файлу найдете в свойствах микроконтроллера на вкладке схемы
Доброго дня. Хочу напомнить программу для визуального программирования Horizont Configurator может будит кому полезна. Это старая прога до Flproga появилась но она получила новые обновления. На ней тини2313 программирую и esp есть...
In the reality this will not work as smooth as in the simulation due to contact bouncing so there must be some delay set prior to proceed with a decision.
ВНИМАНИЕ! 💚💲 В сегодняшних условиях канал существует только на Ваши донаты. Чтобы поддержать канал, пройдите по ссылке: musbench.com/all/donate/
Проект с ответом на "домашнее задание" в конце этой статьи musbench.com/all/arduino-breakout-boards/
Всем Спасибо!
Вангую, что эти графики создают кучу ненужного повторяющего кода.
Это лучший автор видеоуроков. Короткими и простыми объяснениями начинающим становится понятно то, что читая многие учебники кажется сложным. С нетерпением буду ждать продолжений этой темы. Огромная благодарность Автору. Mbs это сила.
Благодарю!
Присоединяюсь! Жду всегда продолжения! Жажда знаний - наше всё! Очень классная подача материала!
@@MbsElectronics Я ему про Протеус, а он мне про донаты. Прям кек на базаре
автору лайк,доходчиво,лаконично.автор владеет темой,чего не скажешь о большинстве блоггеров.спасибо.
Олег, моё вам почтение. Наконец-то новое видео. Спасибо вам за ещё один полезный материал! Всех благ!
Вот такой темы реально не хватало. Спасибо огромное! Жду продолжения.
Супер. Спасибо за видео. Жду продолжения с более сложными проектами. Интересно было бы прикрутить к проекту TFT дисплей с тач экраном.
Понравилось видео. Главное рассказываете подробно и не возникает вопросов, почему здесь не раскрыли тему, почему здесь не рассказали об этом функционале.
Отличный урок! Большое спасибо вам за это и хотелось бы продолжить общение с вами.
Лучший урок, который я встречал по теме программирования Ардуино для новичков :)) Благодарю Вас!
Очень подробно, понятно, интересно, доходчиво и с нюансами, может наконец-то научусь программировать контроллеры . Большое спасибо. Ждём продолжения.
Очень интересно! Я открыл для себя новое! Спасибо большое!
Спасибо большое!!! Не знал о такой функции в Протеусе. Всё время только симулировал, а писал в IDE.
Бодро,бодро
Жду от вашего канала больше сложностей)
ЛСД дисплеи(от мало до велико)
Энкодер
Работа с часами
Многозадачность дисплея и энкодера)))
А так достаточно хорошо разжевано,спасибо
Хм, сколько занимаюсь в протеусе, но....даже не представлял о возможности визуального программирования. Спасибочки за гайд!!)
Большое спасибо.
Как раз сейчас изучаю протэус, и ардуино.
Только не знал, что можно сделать так как показали Вы.
Пришлось установить доп. библиотеки непосредственно с платами ардуино, а скетч пишу в ардуино IDE.
Обязательно попробую Ваш метод. Ведь он помогает освоить алгоритм программы. Однозначно ЛАЙК! ( Подписан давно))) ) Жду следующего урока.
Я тоже поначалу использовал дополнительные библиотеки Ардуино. Кстати они лежат у меня на сайте. Позже узнал о том что в протеус уже все есть начиная с 8 версии (вроде). Просто почитал англоязычную документацию по протеус.
И метод когда вы пишете в ардуино IDE а симулируете а Протеус тоже имеет место быть.
Видео очень понравилось. Очень простые и понятные объяснения. 3сек и проект готов.Подписался.
Урааа, очень полезное видео) Спасибо.
Когда-то научили меня солидворксу. Теперь это. Уважение и поклон.
Здравствуйте, Олег. Хотя это и первый урок по данной теме, но у меня сразу все получилось. Были нюансы с настройкой доступа к библиотекам, но в инете инфы полно и все решил. Очень интересуюют подобные уроки. Пожалуйста продолжайте , усложняя примеры до максимальных возможностей платформы Proteus.
Здравствуйте. Спасибо за очень интересные уроки👍🏻
Мой Вам поклон за труды! И естественно помощь - отправлена.
Очень нужная тема подоспела... Как всегда, грамотное и подробное объяснение. 👏👍 Кстати, а можно ли импортировать в Протеус другую периферию ? Например, дисплеи другого формата ...
Спасибо за отличный урок ) было очень интересно )
Хороший урок. Разработайте на ESP что то. Хотелось бы увидеть как можно добавлять плату в протеусе. Спасибо
Грамотно и доступно.
Спасибо, добрый человек.
Бомбезный видос! Очень понравилось. Чётко, подробно. Короче, то что надо.
Пожалуйста ещё таких уроков !!!
Спасибо за такое видео я как раз только начинаю осваивать👍
Отличный урок по proteus и программированию. Давно хотел разобраться с протеусом. Для визуального программирования лучше использовать FLProg. Но и в данном случае это тоже отлично совмещается.
Я пробовал FLprog, нормальная штука. Но протеус это протеус. Это связка лучший симулятор+ VSM Studio. Здесь можно не только рисовать эти алгоритмы, но и писать нормальным образом как обычно и все в одной программе. стоимость 8 с половиной тысяч долларов ($8622) в максимальной версии...
@@MbsElectronics Согласен
@@MbsElectronics Это цена протеуса?
@Astral Amigo У вас в ролике это максималка?
программист я ещё тот)) информатику учил в 1986 году) огромное спасибо за урок, очень понятно, даже пенсионеру, жду первую посылку с Али, а пока здесь по практикуюсь))
Олег, спасибо за Ваш урок и жду продолжения. Моё почтение учителя от учителя Слова.
Благодарю!
Вообще визуальное программирование - отличный вход. Помню начинал с wap-кострукторов, увлёкся XML, HTML и
CSS. Буквально затянуло.
Большего бреда придумать трудно))
В идеале ассемблер конечно хотя бы по верхам для понимания почему, куда и что)) Ну или хотя бы Си + куча документации...))
Вы прям считаете себя умней всех? Хочу вас разочаровать))
Эта хрень требует даже больше знаний чем ардуино)) В ардуино вы не видите только как работает перефирия и как вы с ней взаимодействуете а тут вы вообще не понимаете как оно работает всё...))
@@ПавелДубровин-у8е, ваш комментарий, прекрасный образчик бреда, дислексии, дисграфии и хамства. 😆
Не имей винда визуальной оболочки и популярности не имела б она. Не понимает это только тупая ма...а дошедшая до ручки, до точки и это только цветочки...
Да, для начинающих визуальный редактор протеуса - отличная штука для вхождения в тему микроконтроллеров. Никто не мешает открыть скетч, создаваемый визуальным редактором и посмотреть как там все устроено. Если человек почувствует что это ему вообще нужно.
Иногда важно именно по нажатию кнопки... Например в споттере(авторихтовка вытягивание вмятин). Так там некоторое количество импульсов по событию кнопки шли в нагрузку. Так мастер по рихтовке попросил что бы именно по нажатию начинался отсчёт... Т.е. не важно сколько держишь кнопку нажатой... При первом нажатии должно отработать процедура. Следующая при повторном нажатии и т.д.
тут удобство работы - нажал кнопку что-то произошло(1раз) и пока не отпустишь тишина.
Лично я, использовал флаги, правда пишу на cavr.
За урок спс.
По нажатию также просто, нужно слегка по другому включить второй опрос кнопки. Это - "домашнее задание" )
Перечитал ваш комментарий 5 раз. Нифига не понял. Какой-то поток сознания.
Нажатие кнопки можно обработать тремя алгоритмами:
1) Падение уровня. Как только уровень на пине падает с 1 до 0, то случается прерывание и далее по программе.
2) Удержание. Как только уровень на пине изменился, запускаем таймер, если время удержания вышло, то прерывание и обработка.
3) Срабатывание по отпусканию. Контроллер ловит падение уровня на пине и ждет когда уровень восстановится. Далее обработка.
Прикольно. Хотя мне больше FLProg нравится.
По поводу шильда, что-то с одной кнопкой экрана не видел, обычно 5 кнопок последовательных с резисторами в режиме делителя включенных на аналоговый вход. Т.е. для опроса необходимо замерить напряжение для каждой кнопки.
Очень интересно, большое спасибо за хорошую работу.
Отличный урок! Не знал что Proteus может работать как FlowCode. А вот есть ли возможность так же работать с Node MCU 8266? Это более перспективный проц. Да и возможностей у него гораздо больше. Но всё равно спасибо за Ваши уроки. Учился у Вас работать в SolidWorks. Спроектировал в нём свою комнату, сделал мебель . Жена счастлива от вида новой обстановки. Как раньше обходился без 3D моделирования - не знаю! А начинал с Ваших уроков! Вы делаете большое дело. Успехов и СПАСИБО!!!
если не секрет , где скачивали солид ?
@@chestbslava2735 да сразу так и не вспомню. Где то на торрентах. У меня стоит 17го года. Скачал уже давно 21го года, но до сих пор не устанавливал, его достаточно сложно корректно установить. Те ещё танцы с бубном. )
Сейчас занят домашней автоматикой. Осваиваю Home Assistant. И Klipper установил на свои 3d принтера. Кстати хорошая тема для Ваших видосов.
Спасибо! Не знал про такую функцию Протеуса.
Кстати многие не знают, поэтому и сделал видео
Спасибо. Очень нужная тема.
Спасибо за отличный урок
Отличный урок!, в процессе просмотра понял ошибку в бетта версии одного своего большого проекта (я ее тогда решил через прерывание). Скоро буду делать новый проект, попробую написать его в этой программе.
Всё ясно и чётко, спасибо
видео просто бомба спасибо за видео.
Великолепный урок.
41:30 приветствую, как же легко и понятно, а какой код будет интересно если писать в си именно эту команду? ))
Посмотрев всего два Ваших урока, многое стало понятно. Но увы ещё много чего надо освоить. Жаль что мало уроков у вас записано.
Прикольно спасибо. Мне как чайнику оч полезная примочка
Уважаю и жму руку
Как сконфигурировать таймер обратного отсчета времени с четырех сегментным led индикатором ?
Отличное видео. Я и не знал, что Proteus такое умеет.
А с обычными контроллерами AVR он может так же?
Спасибо вам большое за ваш труд вроде бы всё понятно и ясно и круто подача супер 👍
Четко, подробно, интересно,
Спасибо за новый ролик))
Добрый день Олег ! Урок Ардуино и Proteus,который Вы показали все отлично, а я вот захотел сделать включение диода кнопкой на другой pin ардуино и не могу сообразить - ничего не работает, может как-нибудь будет урок о кнопках и диодах, СПАСИБО!
Как к этому же проекту прицепить датчик DS18B20 пользуясь этой же программой?
Здравствуйте! У меня всё получилось! Спасибо за лекцию! Мне 66 лет, мне интересно!
Отличное видео! Автору большое спасибо за его труд! Для STM32 возможно что-то реализовать в этой среде?
спасибо за видео.
не нахожу ArduinoDue.
подскажите где взять...
А как добавить библиотеку в visual designer. Peripherals - cpu есть свои функции, а мне нужно DS2413 и библиотека OneWire
Как не возникает вопросов...? А что с дребезгом контактов? Кнопки любят дребезжать... Или ардуина , каким то скрытым от глаз способом устраняет этот дребезг?
Требую еще👍👍👍👍👍
Немного пригорел, нажимаем кнопку и вешаем мк на пустом цикле, почему не использовать триггер? И io1 я так понимаю это первый пин uno, пин uart(a), а потом тысячи жалоб, почему плата не шьётся...потому, что в железе она у тебя к земле - 5в притянута...такие вещи надо с азов вдалбливать!
Спасибо ясно четко понятно будет ли продолжение?
Обязательно. Сейчас выложил про мультиметр и буду делать по ардуино
Не понял как в условии if( треугольник) проверить переменную на равенство заданному параметру,там только тру или фолс. Создал переменную volume при нажатии на кнопки она увеличивается или уменьшается на единицу.надо чтобы при достижении ей 0 и 63 она оставалась равной нулю и 63,но в блоке if не понял как задать сравнение ,там только проверка на true и false.
Отлично!
Здравствуйте! Является ли эта программа мультиязычной? Спасибо.
а где скачать данную версию протея
Очень интересно
Не знал что такое в Шпротеусе есть. Минус всех этих систем в том им не хватает гибкости, всегда нужны какие-то блоки того или другого. Подключить свой дисплей очень сложно и накладно в плане вычислительной мощности.
Спасибо за материал. А с ATMega8 работать получится?
И ещё вопрос. А как у протеуса обстоят дела с захламлением памяти глобальными переменными? Я как-то пробовал FLProg, вот там ужос с этим делом.
ПС - Всегда интересный контент. Ещё раз спасибо!
А где скачать программу Proteus ?
Я так понимаю, что и для обычных микроконтроллеров можно таким образам писать программы? Если да то сделайте потом также и по ним уроки, очень интересно! Я думаю, что это лучший способ начать путь в программировании микроконтроллеров, сначала разобраться визуально как всё работает, а потом уже влазить в дебри и писать всё вручную..)
Ардуино - обычный контроллер AtMega установленный на плату со светодиодом, кнопкой и преобразователем USB-COM. Никто не мешает эту прошивку залить в отдельный контроллер через отдельный программатор, и это будет также работать. То есть мы уже пишем для обычного контроллера
@@MbsElectronics Ардуино это фреймворк, то есть набор высокоуровневых функций, скрывающих конкретную реализацию, посему работающее на различных семейтвах МК, это просто изначально только AVR. Но за все нужно платить, в данном случае размером кода и производительностью, когда вместо записи операции МК выполняется функция ардуино, которая должна еще отпарсить параметры и только обработав вызвать соответствующую команду. А по причине того что и библиотеки пишутся кем попало, все вместе оставляешь желать лучшего. Такая же ситуация и с HAL на stm32. Все это если что то быстро слепить что-то не задумываясь. И ты не хочешь тратить время разбираться в МК, хотя зачем тебе тогда МК, если тебе это не интересно :). И получается для примера беру устройство на stm32 с прошивкой написанной человеком на HAL и занимающей 120кБ и прям видно как прорисывается экран, пишу свою прогу на регистрах и выходит 60кБ и 100fps на этом экране получил, написав свою либу :).
Лично я пишу код непосредственно на регистрах, я знаю и AVR и x51 и STM8 и STM32 вплоть до ассемблера, знаю как СИ код записать чтобы компилятор преобразовал его наиболее эффективно. Но это мое хобби для души, мне это нравится, сделать для себя хорошо. Я никогда не зарабатывал этим и не планирую. Всякие надстройки типа ардуино просто не приемлю всеми фибрами. Оно скрывает от изучения устройство и работу МК, оно добавляет лишний код влияя на производительность. Но понимаю что для совсем новичков, которые вообще еще ничего не знают как старт подойдет. Но когда человек годами сидит на ардуино, это уже печаль, очевидно МК это вообще не его тема. Он за это время так и не захотел ничего изучить.
AVR из 90х давно не актуален, сейчас эта древняя поделка, которая даже не имеет на борту отладчика чтобы можно было по человечески отлаживать программу, просто слать по UART что-то, вы серьезно? Какие то фьюзы, когда в нормальных МК все настройки делаются из кода на лету, выглядит честно просто убого. В AVR, кстати, даже операции деления нет. Я уж не говорю про убожество периферии, 328p сливающий даже самому простому брату по 8мибитам stm8s003, который при этом и дешевле даже тини, ахаха, от чего не глупые киты на stm8 все и штамповали, а не на AVR. А уж когда люди брали attiny13 по цене (а то и дороже) того же s003 и корячились с этим убожеством с шорами на глазах это просто финиш. Кстати 32бит stm32 лет 5 назад пробили планку в 0.5$ и можно было купить 32бит stm32 дешевле 8бит stm8.
Просто люди в большинстве своем не хотят думать. Просто дерут поделки друг у друга. А т.к. AVR появился еще в 90х, то тогда на нем много чего делали, вот так шлейф и тянется тех поделок, хахаха. И вот они друг у друга все тянут и тянут его, шел 2022 год.... Платки на STM32F401 по 2$ на али. Всякие esp с WIFI, BT аналогично. Даже того же класса 8 бит stm8 на голову выше AVR. Поражает человеческая лень....
@@dekus80 Да этот урок не для Вас, а для начинающих, что бы поиграться, и понять надо оно вообще, или нет?
А там уже, когда человек вникнет, и уже решит нырять ему глубже типо stm 32 или ему возможности Ардуино хватит с головой.
Чем хороша Ардуино?
Купил плату по цене шаурмы, скачал бесплатную программу с официального сайта, воткнул плату в компьютер, и ты уже программист МК!!! ))))
А с STM-32 этот номер не прокатит. Даже с Атмега-8 этот номер не прокатит.
Так что Вы все правельно написали, но для "чайников" поиграться лучше ардуино вариантов НЕТ. Я так думаю!!!
@@zamer_garage Я прекрасно знаю что это не для меня. Я же и сам написал что для совсем начинающих. Я постарался ответом раскрыть что вообще такое ардуино, т.к. автор не верно передал что это такое, описав это как МК AVR. Хотя смысл ардуино это, как я написал, оболочка из простых функций, скрывающая более сложную и конкретную реализацию для МК, почему и ставшая популярной для начинающих. Но по этой же причине набора высокоуровневых функций и не привязанная к железу, т.к. реализацию можно уже написать под разные МК. То есть по идее ты можешь взять плату с avr, с stm32 и этот же код будет работать и там и там.
Когда вы ставите ардуино в ее папке расположены исходные СИ файлы в которых и написана реализация этих функций под МК и ваш скетч компилируется вместе с этими файлами компилятором этого МК. По этой же причине если вы захотите добавлять или писать код непосредственно под мк обращаясь к его регистрам вы можете это делать и в ардуино ide, т.к. это все компилируется компилятором этого мк, ему все равно это код обращения к регистрам из файла ардуино или ваш.
Я еще добавлю что МК ограничен в ресурсах и тут постоянно нужно думать :). Скажем берем мы 8бит МК, как в видео. Вот для него умножение чисел больше 255 (то есть больше 8 бит) уже будет не выполнение одной команды МК, а вызов функции простыни из команд программной реализации. А для 32бит МК это одна команда МК. Берем бездумно float. У простых МК нет команд с плавающей точкой. Опять на каждую операцию простыня из команд программной реализации на каждый символ операции в вашем коде. Хотя, для примера, можно использовать целочисленную арифметику, храня например числа с одним знаком после запятой как целое число с умножением на 10. И на 32бит stm32 это будет всего одна команда МК. Вот у меня тоже есть код по работе с 18B20 и мне не потребовалось задействовать float и программные простыни кода на математические операции для работы с ними, соответственно кратно быстрее работающая программа.
Всякие умножения и деления кратные 2 это более быстрые операции смещения >. И т.д. По коду автора видно что вообще ничего из этого он не знает, да и знать не желает, без обид. Не развивается никак, застопорился где то в начале и все. Для этого не нужны никакие статьи или видео людей неизвестной компетенции, какие то книги, достаточно одной официальной документации от производителя МК и желание развиваться и совершенствоваться (кстати последние 2 слова это не блажь, а необходимость, чтобы оставаться дольше в своей жизни в ясном уме :) ).
Вот чем мне и нравится работать с МК, позволяет лишний раз поработать мозгами, учитывать кучу моментов что бы сделать хорошо.
@@dekus80 большое спасибо за разъяснения.
Классные очки! Ярко очень или просто глаза болят?
Интересно почему у вас шилды и борды отображаются визуально а у меня только в виде значков?
Esp8266 и DFpleer есть ?
Доброго времени суток. У меня не выбирается контроллер из семейства ардуино. список контроллеров выходят но они как будто не активны. Подскажите пожалуйста в чем может быть проблема
привет.
скиньте ссылку на proteus .
спасибо.
Прикольная тема.🙂
Добрый день! Олег дайте ссылку откуда можно взять безопасную полноценную программу без ограничений. Если можно киньте ссылку в лычку!
"BITTON" - )) А в целом - познавательно. Как раз во-время подоспело видео - никак не мог приступить к программированию индикаторов. Казалось будет сложно.
Доброго времени суток.
А возможно скетч где то посмотреть, если прошивку писать в формате алгоритма, как в вашем видео?
Конечно. Переключитесь в окно схемы, дважды кликните по микроконтроллеру. В строке program file скопируйте путь. Там лежат все файлы, включая hex для прошивки и файл на языке C. В нашем случае это будет main.cpp. Обычно это временная папка пользователя винды и может быть очищена после выхода из протеус. Смотрите сразу после компиляции и если нужно сохраните файлы в другое место
Вот скетч нашего визуального проекта
++++++++++++++++
#line 1 "../main.ino"
#include
#line 1
// Generated by Proteus Visual Designer for Arduino
// Peripheral Configuration Code (Do Not Edit)
//---CONFIG_BEGIN---
#pragma GCC push_options
#pragma GCC optimize ("Os")
#include // Required by cpu
#include
#include // Required by LCD1
#include // Required by LCD1
#include
#include
void peripheral_setup ();
void peripheral_loop ();
void chart_SETUP ();
void chart_LOOP ();
void setup ();
void loop ();
#line 14
#pragma GCC pop_options
// Peripheral Constructors
CPU &io_cpu = Cpu;
AlphanumericLcd io_LCD1 = AlphanumericLcd (7, 6, 5, 4, 3, 2);
GenericButton io_BTN1 = GenericButton (1);
void peripheral_setup () {
io_LCD1.begin (16, 2);
}
void peripheral_loop() {
}
//---CONFIG_END---
// Flowchart Variables
long var_i;
// Flowchart Routines
void chart_SETUP() {
var_i=0;
io_LCD1.clear();
io_LCD1.print().arg("BITTON PRESSED").end();
io_LCD1.setCursor(0,1);
io_LCD1.print().arg(toString(var_i)).end();
}
void chart_LOOP() {
if(io_BTN1()) {
while (io_BTN1()) {
}
var_i=var_i+1;
io_LCD1.setCursor(0,1);
io_LCD1.print().arg(toString(var_i)).end();
}
}
// Entry Points and Interrupt Handlers
void setup () { peripheral_setup(); chart_SETUP(); }
void loop () { peripheral_loop(); chart_LOOP(); }
@@MbsElectronics Спасибо большое!!!
Если можно то дайте ссылку где скачать бесплатно протеус в русскоязычной версии и с уверенностью отсутствия вирусов. Спасибо
Рпмкажи как програмировать пик контролер в протеусе.
Добрый день. Софт платный и где скачать?
Добавте ссылку на эту прогу
В реальности, из-за дребезга контактов, одно нажатие кнопки будет вызывать мнгократные увеличения счетчика.
тоже об этом подумал, жаль автор на настоящую ардину не загрузил :)
загрузим)
достаточно ввести задержку 50...100 ms для подавления дребезга. в реальной плате
Вариант-стяните из FlProg кусок кода подавления дребезга...
👍👍👍 , а тензодатчик с блютуз будем стоить? )))
скопированный код в Arduino IDE из Proteus показывает ошибку. В Proteus симулирует, но код с ошибкой. Чего-то не работает в Proteus
там красным указан путь к файлу, пройти туда, открыть в блокноте файл и удалить закомментированные строки
При первом компилирование возникла ошибка 2, что делать?
там красным указан путь к файлу, пройти туда, открыть в блокноте файл и удалить закомментированные строки
Спасибо, класно обьясняете, очень очень подробно! Не знаю, стоит с флпрога переходить на протеус? Единственное - разводка дорожек платы подкупает ..
Дело в том что программы - это же не религиозные конфессии, это инструменты для работы и творчества. Никто не мешает пробовать и то и это, а потом время покажет
Нет
Спасибо 😀
Любопытно. Но Proteus стоит 250$. Кто знает где взять стабильную версию? И бесплатную.
А есть там блок для работы с любой микросхемой по шине I2C
в дереве CPU он же есть по умолчанию. надо активировать просто по правой кнопке.
Для меня это понятнее чем програмировать в arduino ide.
Получается, если кто-то нажмёт на кнопку, но не отпустит её, он погрузит программу в бесконечную петлю и до момента отпускания кнопки ничего далее работать не будет. Разве не так?
Именно так. Это не противоречит логике решения данной задачи
Даёшь продолжение!
стоимость у этой проги 50к+ ?
Всё бы ничего, но шпрот виснет при попытке передвинуть какой-нибудь блок. Какая у вас версия?
8.13 сборка 31525. У меня ничего не виснет. Попробуйте установить другую версию или из другого источника. Кстати может быть проблема с видеоадаптером
Как происходит опрос кнопки в таком коде? Просто задержка или по прерываниям?
Вы можете посмотреть в исходниках в файле Generic.h в папке протеуса по пути
....\Proteus 8 Professional\DATA\VSM Studio\drivers\arduino\Generic\
Фактически для модуля кнопки это обычный digitalRead(pin) без каких либо задержек, поэтому все ложится на плечи разработчика. Для опроса по прерыванию есть модуль evеnt.
При желании можно посмотреть все исходники подключаемых библиотек. Во время компиляции создается обычный файл на C, его тоже можно посмотреть. Путь к файлу найдете в свойствах микроконтроллера на вкладке схемы
Доброго дня. Хочу напомнить программу для визуального программирования Horizont Configurator может будит кому полезна. Это старая прога до Flproga появилась но она получила новые обновления. На ней тини2313 программирую и esp есть...
In the reality this will not work as smooth as in the simulation due to contact bouncing so there must be some delay set prior to proceed with a decision.
А мне сможете написать прошивку?