Программа, которая позволяет распечатывать электронные схемы и схематически называть их Proteus. В целом он состоит из двух разных программ как ISIS и ARES. Наряду со схемотехникой ISIS одновременно используется для анализа схем.
Что такое Proteus PCB?
Proteus — это программа, с помощью которой вы можете рисовать электронные схемы по вашему выбору и делать чертежи печатных плат.
Компоненты Proteus Для чего используются программы ISIS и ARES?
Программа Proteus состоит из двух программ: подпрограмм isis (чертеж схемы) и ares (чертеж печатной платы). При выполнении процесса рисования электронной схемы в Isis также может быть выполнен анализ схемы.
Что означает Isis?
Аббревиатура ISIS соответствует точному эквиваленту организации ISIS (The Исламское государство Ирака и Шама). делается. Аббревиатура ИГИЛ расшифровывается как Исламское Государство Ирака и Леванта (страны Восточного Средиземноморья). Аббревиатура IS также используется для организации. Эта аббревиатура (Исламское государство) означает сокращенно Исламское государство.
The surprising way groups like ISIS stay in power | Benedetta Berti
Что можно сделать с помощью программы Proteus?
ПРИЛОЖИТЕЛЬНАЯ ПРОГРАММА Proteus, продукт компании Labcenter Electronic, представляет собой программу для рисования схем, моделирования, анимации и рисования печатных плат, которая может визуально моделировать электронные схемы.
Что делает Proteus 8 Professional?
p> программа Proteus Design Suite 8; Это одна из самых талантливых программ в области электроники, способная к рисованию схем, симуляции (имитации), анимации (анимации), ручному или автоматическому рисованию печатных плат (печатных плат) и визуальному 3D-моделированию.
Как работает Proteus заземление сделано?
Что вам нужно сделать, так это выбрать землю в «Режиме терминалов» и использовать ее. Удачи с. Как описано в «slayer_ank», с помощью этого выбора вы можете получить желаемую Землю.
Что делает Proteus 8?
Что такое программа Ares и что она делает?
Он используется для автоматического или непосредственного ручного рисования печатной платы схемы, нарисованной в программе ISIS. Это делает схему простой и небольшой по размеру. Это облегчает ремонт, техническое обслуживание и сборку цепей. Он может производить двухстороннюю печатную плату с максимальным количеством слоев 16.
Что мы можем сделать с PCB Layout Ares?
Больше видео на YouTube
Автоматически или прямая ручная печатная плата схемы, нарисованной в программе IIS, используемой для рисования. Это делает схему простой и небольшой по размеру. Это облегчает ремонт, техническое обслуживание и сборку цепей. Двусторонняя печать позволяет напечатать до 16 слоев печатной платы. Максимальный размер области рисования.
Это 100 м2.
Segirt Last Minute Последние новости
Источник: ru.segirt.com
02. ISIS Overview
Система моделирования ISIS Proteus. Быстрый старт.
Вообще существует масса систем моделирования электронных схем. Из всех, что я видел мне наиболее понравились Multisim и ISIS Proteus . Multisim обладает очень удобным интерфейсом, и в нем удобно отлаживать аналоговые девайсы, т.к. он позволяет использовать виртуальные (т.е. параметры ты указываешь сам) транзисторы и усилители, но совершенно не поддерживает сложные системы, вроде микроконтроллеров или разного рода драйверов. Точнее поддерживает, но крайне вяло. Только недавно в нем появилась поддержка древних АТ89C2051 и нескольких PIC ‘ов
Напротив, Proteus умеет замечательно работать с контроллерами, но ограничен своей библиотекой реальных элементов, поэтому без знания какая тебе именно деталь нужна ты там мало что сделаешь, а ещё обладает ну просто убожеским интерфейсом, однако это лучшая система моделирования, что я когда либо видел. А потому буду описывать именно её.
Весит порядка тридцати метров в архиве, самая поздняя версия которая мне известна это 7.2 Учти только, что крякнутая версия Proteus работает порой ну очень странно , например код процессора ты видишь, а отладка не идет и в регистрах левые значения. Потому ищи тщательно ;))))
Предлагаю сразу же взять быка за рога и по быстрому смоделировать какую-нибудь несложную схему на микроконтроллере. Объяснять где что я буду по ходу процесса.
Запускай Proteus , сразу же должно отрыться бежевое окно в точечках. Это рабочее поле. Тут мы и будем строить нашу схему. Для примера сварганим схему на моем любимом контроллере АТ89С51 она не будет делать ничего путного, будет просто отсылать в окошко терминала буковки по нажатиям кнопок приделанных к портам контроллера.
Чтобы добавить компонент нужно выбрать вначале черную стрелку в левом верхнем углу, а потом нажать кнопочку с лупой и треугольничком она расположена на верхней панели инструментов в середине.
Откроется огроменный список элементов которые знает Proteus . Библиотеки постоянно дополняются и обновляются, поэтому пошарь по инету в поисках новых деталек.
В списке найди контроллер АТ89С51 , чтобы не возиться заюзай поиск по ключевым словам – набери просто « АТ89 » увидишь все семейство MSC-51 известные Proteus’у .
Выбирай нужный и тыкай « ОК ». После чего размещай микросхему в удобное тебе место. Сразу оговорюсь, что модели процов в Proteus несколько упрощенные, поэтому они не требуют наличия в виртуальной схеме кварца, системы сброса (подтяжка RESET до нужного уровня), наличия сигнала на использования внутренней памяти (+5 на EA, особенность процов С51 , умеющих работать от внешней ПЗУ ) и об этом не стоит забывать когда в итоге будем делать реальную схему, а то, в итоге, искать причину неработающей схемы можно очень долго.
Хоть они и не нужны, но детали обвески мы все же добавим. Опять тыкай на лупу с треугольником и ищи там кварц, буржуи зовут его « crystal » вот его и ставь на схему рядом с выводами XTAL .
![]() |
Библиотека элементов |
Главная убогость интерфейса Proteus в том, что всегда правый клик сначала выделяет, а потом удаляет компонент, а левый ставит новый такой же. Ужасно напрягает, в Multisim все сделано в разы удобней и традиционней, но, увы, Multisim не столь могуч.
Теперь наведи курсор на вывод кварца и соедини его с выводом XTAL1 процессора, то же проделай с второй ногой кварца, только на XTAL2 . Теперь нам нужны кондеры, опять лезь в библиотеку и ищи там Capacitors . Будет огромный список реальных кондеров, выбери какой нибудь SMT конденсатор емкостью порядка 33pF . В верхнем окошке справа будет его обозначение в схеме, а внизу габаритные размеры, а точнее контактные площадки под его запайку.
Кстати, обрати взгляд в окошко чуть ниже строки поиска. Видишь там строку Modeling Primitive ? Вот там есть виртуальные примитивы. Они не имеют корпуса, потому при разводке печатной платы выскочат с ошибкой, но если ты не собираешься разводить плату, а лишь хочешь смоделить схему, то возьми лучше его – его значения можно менять как угодно.
Воткни пару кондеров рядом с кварцем и повесь их на ноги кварца одним выводом, а второй объедини и повесь на землю. Где взять землю ? Хороший вопрос :). Ищи в левой панели инструментов такие две фиговины похожие на бирки, зовется Terminal mode . Тыкай в неё, откроется тут же рядом, слева, панелька где нужно выбрать строку GROUND это и есть земля. Установи ее где тебе удобно.
Power там же — это напряжение питания схемы. Обычно оно общее, но иногда могут быть замороки с тем, что у схемы множественное питание (как, например, в компе, там и 5 и 12 и 3.3 вольта и вообще тьма разных напряжений).
Далее надо собрать схему сброса. Протеусу это не требуется, он и так будет нормально отрабатывать, но реальной схеме это нужно. Делается это просто. Ставим резистор и конденсатор. При включении, когда конденсатор не заряжен, то его сопротивление равно нулю и на вывод RST подается +5 вольт, т.е. логическая 1, а как только кондёр зарядится, произойдет это через пару миллисекунд, то ножка через резистор будет лежать на земле, а это уже самый настоящий логический нуль и проц запустится в штатном режиме.
Сделай всё как на картинке и приступай к навеске кнопок на наш девайс. Вешать лучше на порт 1. Почему? А резисторы дополнительные не нужны. Дело в том, что у С51 порт 0 сделан с возможностью работы на шину данных, а это значит имеет так называемое Z состояние. Это когда на выходе не 1 и не 0, высокое сопротивление (импенданс), почти обрыв, но порт может без палева в это время снифферить шину на предмет пролетающих там значений, ничуть не выдавая себя и не мешая другим устройствам.
Порт 3 обвешан всякой дополнительной периферией, а порт 2 не очень удобно расположен в модели протеуса. Поэтому юзаем порт 1 :))))) . Ищи в библиотеке какой нибудь switch или button. Мне нравится компонент button, потому я заюзаю именно его. Поставлю четыре кнопочки и повешу их на выводы P1.0, P1.2, P1.4, P1.6, а другие выводы кнопки приложу всем скопом на землю. Как это будет работать?
Да просто! Вначале вывожу в порт единичку на все выводы. Ножки изнутри сразу же подтягиваются к логической единице. Теперь, чтобы считать данные, достаточно забрать значение из регистра порта P1, а если мы нажимаем какую-либо из кнопок, то эта ножка жестко сажается на землю, пересиливая внутренний подтяг до единицы. Т.е. нажатая кнопка дает в порту нуль на своем бите.
Такой принцип определения нажатия кнопки во всех микроконтроллерах. Также настоятельно рекомендую шунтировать кнопки конденсаторами на 40pF – не будет ложных срабатываний от импульсных помех.
Но это только в реальных устройствах, в Proteuse это все равно не имеет значения, но я добавлю. Всё, ввод данных готов. Теперь надо сделать вывод. Для вывода можно тупо повесить на ножки виртуальные светодиоды и также виртуально ими помигать, но это моветон, хотя, не спорю, помогает зачастую отлаживать программу.
Я же предпочитаю побаловаться моим любимым UART ом. Проще говоря, терминалкой. Лезем в раздел виртуальных приборов. Ищи на левой панели инструментов пиктограмму с нарисованным стрелочным прибором и лезь туда. Тебе будет список всякого хлама который ты можешь юзать.
Тут тебе и вольтметр, и амперметр, и осциллограф, цифровой анализатор и разные узкоспециализированные приблуды вроде монитора протокола SPI или I2C . Для прикола возьми осциллограф ( oscilloscope ) и повесь его одним каналом на вывод TxD . Еще нам нужен Virtual Terminal . Выбирай его и вставляй на схему. А теперь соединяй его выходы с выходами проца, крест накрест. Rx c Tx, Tx с Rx.
Готово! Ну и, для полного счастья, поставь еще светодиод на порт Р2 . Как подключать светодиоды к портам проца? Да очень просто! Вешаешь плюс светодиода на питание, а минус на резистор, а этот резистор уже на выход процессора. Чтобы зажечь диод надо на эту ногу выдать 0.
Тогда разница напряжений между напряжением питания и напряжением нуля на ножке будет максимальной и диод будет гореть. Ищи в компонентах LED ну и втыкай его как я тебе сказал. Обратил уже наверное внимание, что чаще мы событие определяем или устанавливаем по нулю, а не по единице. Это связано с тем, что ноль легче получить принудительно, чем подтягивать ножки вверх.
Но далеко не всегда так, например, контроллеры семейства AVR умеют свои ножки сажать наглухо и на нуль и на напряжение питания, так что там диод зажечь можно и единичкой. Для этого его надо будет перевернуть и вторым концом через резистор повесить не на Power , а на землю.
Так, аппаратную часть мы нарисовали. Пора приступать к настройке и отладке.
Выдели микроконтроллер и кликни на нем дважды, откроется окно свойств.
PCB Packadge — это тип корпуса, он важен при разводке печатной платы. Пусть стоит DIL40
Program File – это собственно файл прошивки. Вот сюда нужно прописать путь к hex файлу.
Clock Frequency – частота на которой будет работать проц.
![]() |
Отладка по исходному коду |
В реале частота зависит от кварца, либо от встроенного тактового генератора. В Proteus она выставляется тут. Не забудь выставить ее правильно, так как дефолтные значения зачастую отличаются от тех что ты собрался юзать.
Выставь нужную частоту проца и пропиши путь к прошивке, на этом настройка схемы завершена. Можно запускать отладку.
Жми кнопку с значком Play , как на магнитофоне. Тут всё просто, никаких сложностей. Отмечу только, что пошаговый режим это просто прерывистый запуск с небольшой временной задержкой. Для отладки нужно юзать дебаг по коду.
Теперь твоя схема работает. Можешь понаблюдать процессы, происходящие в ней. Если выберешь в панели инструментов вольтметр, то увидишь напряжение, или можно измерить ток, если заюзать амперметр. Цветные квадратики, что зажглись на ножках процессора это логические уровни. Синий – ноль, он же земля. Красный – логическая единица, а серый это высокий импенданс, он же Hi-Z .
В принципе уже этого достаточно, чтобы отладить работу дейвайса. А что, прогу отлаживаем в Keil uVision (если речь идет о С51) или в AVR Studio , компилим и смотрим что получилось. Это отлично работает на простых девайсах с одним управляющим контроллером и обвязкой.
Но вот когда у тебя в системе работают несколько микроконтроллеров или контроллер и какое либо шибко умное устройство, например ключ Dallas, тотут начинается неслабый геморрой, так как трудно сказать в какой момент времени какой из контроллеров что выполняет. В такой ситуации нам на помощь придет внутренний отладчик Proteus , позволяющий отлаживать программу по исходному коду, не выходя из симуляции.
![]() |
Отладка предыдущей версии контроллера робота |
![]() |
Пошаговая отладка одновременно двух процов связанных по программному i2c. МОЩЬ |
Добавляем исходник.
Лезь в меню и ищи там пункт Source и смело тычь в него недрогнувшей рукой. Выбирай Add/Remove source и добавляй исходник. Советую сразу, чтобы компилятор не тупил, исходники ныкать по простым путям, без пробелов и русских букв. Например, как у меня: “ d:codingC51hack_2.asm ” Добавляя исходник не забудь указать компилятор которым его надо будет компилить. Для данного случая в “Code generation tools” надо указать “ ASEM51 ”, то есть компилятор архитектуры MCS-51 .
Жми ОК и в меню Source появится еще один пункт – добавленный исходный файл, выбрав который автоматом открывается редактор и можно по быстрому подправить текст программы.
Настройка компилятора.
Опять же лезь в меню Source и ищи там пункт “ Define Code Generation Tools ” это опции компилера. Изначально настроены они криво — в разделе “ Make rules ” тычь в строку “ Command Line ” и выноси оттуда весь мусор, что там есть. Оставь только “%1 ” без кавычек. ASEM51 умная зараза, он сам добавит нужные файлы с описаниями регистров и переменных, тем более, что у всего семейства MСS-51 все адреса одинаковые.
Компиляция
Жми в том же меню Source пункт Build All и получай на выходе hex файл , но уже местной выделки. Там же моргнет окно комплиятора, в котором будут сведения об ошибках и ряд служебных данных.
Запуск
Запускай схему кнопкой Play в нижней панельке и сразу же нажимай либо паузу, либо пошаговый режим. Сразу же должно открыться окно с кодом программы как в уже привычном тебе отладчике. Если не открылось, то ты его найдешь в меню Debug -> 8051CPU -> Source Code — U1
Там же будет масса других полезных вещей, как, например, содержимое регистров процессора или памяти программ/данных.
Ну, а далее всё просто – обычный отладчик в котором ты, надеюсь, работал уже не раз. Кнопочки вверху окна исходного кода управляют исполнением кода.
Красный бегущий чувак – запуск кода на исполнение.
Нога перепрыгивающая через фиговину – исполнение с пропуском процедур
Нога со стрелкой вниз – выполнить одну инструкцию, сделать шаг.
Нога со стрелкой вверх – выйти из подпрограммы.
Нога и стрелка вперед – исполнять до курсора.
Кружочки со стрелочками – установка/снятие/отключение точек останова BreakPoint. Бряк-поинт это такое место в программе, где твоя прога встанет как вкопанная и дальше пойдет лишь с твоего согласия – незаменимая вещь в отладке.
При добавлении в проект второго проца его код, регистры и память будут там же, но называться будет уже Source Code – U2 и так далее.
Кроме того, в директории Proteus’a есть папка SAMPLES вот в ней куча разных примеров, весьма сложных, показывающих возможности системы ISIS Proteus .
- Файл с проектом ISIS Proteus к данной статье
- Исходный код примера для контроллера АТ89С51
З.Ы.
Эту статью я писал для журнала Хакер. В несколько ином виде (чуть более подробном) она была опубликована в журнале за декабрь 2007 года.
Спасибо. Вы потрясающие! Всего за месяц мы собрали нужную сумму в 500000 на хоккейную коробку для детского дома Аистенок. Из которых 125000+ было от вас, читателей EasyElectronics. Были даже переводы на 25000+ и просто поток платежей на 251 рубль. Это невероятно круто. Сейчас идет заключение договора и подготовка к строительству!
А я встрял на три года, как минимум, ежемесячной пахоты над статьями :)))))))))))) Спасибо вам за такой мощный пинок.
143 thoughts on “Система моделирования ISIS Proteus. Быстрый старт.”
Sublimator :
Спасибо, я как-то пробовал протеус, но мня он очень сильно задолбал, из-за его интерфейса =). Может сейчас, успокоившись, попробую что-нибудь на нем намутить. Но все равно, ручное паяние наверное лучше, ведь не может же эта програмулина предусмотреть все. Взять хотя б дребезг контактов…
DI HALT :
Ручное паяние рулит, но прежде чем что либо новое спаять я всегда смоделиру, проверю хотя бы в теории свою идею.
Прога реально нужная. p.s. В добавок к исходникам добавляю руководство по MSC-51 на русском языке.
http://rapidshare.com/files/143361973/mcs51_full_guide_rus.zip.html
DI HALT :
О пасиб. А у меня есть какая то русская дока по С51 но там на примере нашего клона. ВМ что то там, на 100% совместимо с классическим 8051
Добрый день, Dmin.
Если руководство сохранилось, можно его выложить куда-нибудь?
Ссылка не работает.
Протеус порой бывает очень полезен, но ничто не сравнится с отладкой прошивки на реальном микроконтроллере — протеус симулирует далеко не идеально, порой на экране микроконтроллер работает совсем не так, как в реале. Например, он не учиывает, что в МК многое отключается в спящем режиме. Да и скорость симуляции всегда не совпадает с реальной.
Источник: easyelectronics.ru