Поинтересовался у Гугла, есть ли симулятор для Ардуино? И нашел очень интересный симулятор, который может заинтересовать как школьников, так и радиолюбителей, и не только их. Программа называется SimulIDE и имеет сайт разработчиков. Там есть несколько версий симулятора и не только. Но вот скачать оттуда SimulIDE_1.0.0 мне не удалось, но удалось найти в другом месте. Вот ссылка: https://drive.google.com/file/d/1Lfh4zAjiZQjBySkbaIU5I6BYIycQsgKe/view?pli=1
Если сразу перейти не удастся, то скопируйте эту ссылку и вставьте в адресную строку, и все получится.
Распакуете архив и найдете в папке программы исполняемый файл - ни какой установки программа не требует. Если вы скачали более раннюю версию, например 0.4.13 (исполняемый файл находится в папке bin), то при запуске увидите вот такое окно программы:
Как видно, этот симулятор может работать не только с пассивными и активными электронными элементами, но и с микропроцессорами PIC, AVR и, что особенно мне понравилось - с Arduino. Сразу хочу сказать, что симулятор простой - это не Протеус, но и освоить его можно за несколько часов.
А вот окно версии 1.0.0. :
Эта версия гораздо круче, в ней больше компонентов, измерительных приборов и т.д. В окне, у левого края, всего две вкладки: "Файловый проводник" и "Инструменты". В инструментах есть приборы, генераторы и множество компонентов. У многих названий компонентов слева стрелочка - нажмите и выпадет список этих элементов. Рабочее поле разделено на 4 части. В верхней части окна значки файлового менеджера, настройки, пуска, остановки и паузы, а так же работы с программой. Все это интуитивно понятно и вопросов не вызывает.
Давайте попробуем сотворить простейшую схему и посмотрим как все работает. Устройство будет зажигать светодиод при нажатии кнопки. Для этого перетащим в поле схемы нужные элементы. В качестве источника питания можно взять батарею, но проще взять линию питания.
Увеличить изображение можно с помощью колесика мыши. Не забывайте использовать заземление, а то току некуда будет течь. Чтобы соединить элементы, нужно навести курсор на конец вывода - появиться крестик, щелкнуть левой кнопкой мыши и тянуть линию к выводу другой детали.
Правильно устанавливайте светодиод - анод (длинный вывод) к +. Резистор по умолчанию имеет сопротивление 100 Ом, но его можно изменить, нажав правой кнопкой мыши.
В меню все, что можно сделать с элементом, но нужно выбрать "свойства" и в появившемся окне выбрать единицы измерения и номинал.
Я взял сопротивление резистора 200 Ом. Теперь жмем на красную кнопочку и симулятор запускается. Внизу, в темном окне появится надпись.
Если мы нажмем курсором на кнопку, то светодиод загорится. Но светится он не ярко. Верните значение резистора к 100 Ом, и диод горит ярче.
Усложним схему:
Здесь светодиод быстро загорается и медленно гаснет.
Что мне понравилось в этом симуляторе - так это наличие приборов и большая номенклатура цифровых микросхем. Самый простой прибор - пробник, он показывает напряжение в той точке, к которой подсоединен. Входное сопротивление у него очень большое. Вы можете поставить их сколько угодно в разных точках и наблюдать динамику процессов.
Вот наглядная иллюстрация закона Ома.
А теперь соберу что-нибудь с логикой.
На двух элементах И-НЕ собран генератор, на третьем - буферный элемент, на 4-м - ключ. Вот здесь и проявились ошибки. Как бы не менял я номиналы резистора и конденсатора частота не менялась - 50 МГц. Ключ работает так: если на нижнем входе 4В элемента логический 0 и поэтому на выходе 1 и это состояние не меняется независимо от уровней на втором входе. Когда кнопка замкнута, то на входе 4В логическая единица и состояние на выходе зависит от уровня на входе 4А.
Я подключил еще мою любимую 74НС74, которая содержит два D-триггера. Подтянув входы сброса к напряжению питания 5В получим делитель на 4. Размыкаю кнопку и включаю эмулятор - все частотомеры показали 0 - значит сигнал генератора не проходит на делитель. Замыкаю выключатель - все частотомеры показывают частоту в разных точках, делитель работает. Размыкаю выключатель - ничего не меняется. Может это я чего-то не доделал - первый день использую симулятор :) Точно, это мой промах - нужно подождать секунд 30 - и показания обнуляются.
Теперь подам на входы 3А и 3В, отключенные от 2Y, сигнал от внешнего генератора.
По умолчанию частота генератора 1 кГц, амплитуда импульсов 5 В. Все работает. А теперь подключу логический анализатор.
Отлично видно, как инвертируется сигнал элементами, и как меняется длительность импульсов после делителя.
Вот такой интересный, симпатичный и легко осваиваемый симулятор. С ним хорошо поработать с внуками или детьми в субботу и воскресенье.
А далее - Ардуино. Не ругайтесь сильно, что существуют более мощные и быстрые процессоры. Для меня Ардуино - это достаточно просто, дешево и с избытком покрывает мои запросы. Я в деле программирования - начинающий, поэтому и писать буду для начинающих. А крутых юзеров прошу не заморачиваться моими детскими экспериментам.
Всем здоровья и успехов!