Моделирование в среде proteus

Моделирование в среде proteus

Содержание

Интегрированная среда для разработки электронных устройств, в т.ч. на микроконтроллерах

  • Поддерживаемые этапы разработки
  • Разработка схемы электрической принципиальной (ввод в графическом редакторе)
  • Моделирование схемы с использованием разнообразных виртуальных приборов
  • Разработка печатной платы, включая 3D-визуализацию её сборки
  • Возможности отладки микропрограммного обеспечения
    • совместное моделирование работы микроконтроллера, исполняющего заданную программу, и окружающих его аналоговой и цифровой схем
    • широкие отладочные возможности, в т.ч. доступ к содержимому регистров и памяти, задание точек останова программы, пошаговое выполнение
    • отладка на уровне исходного кода (Си, Бейсик, Ассемблер, в зависимости от типа используемого для отладки файла с испытываемым микропрограммным обеспечением)
    • поддержка нескольких семейств микроконтроллеров от разных производителей, в т.ч.:
      • PIC12, PIC16, PIC18 и PIC24 (Microchip).
      • 8051/8052, в т.ч. производные от них, выпускаемые Philips и Atmel
      • AVR, Tiny AVR и Mega AVR (Atmel)
      • ARM7, в т.ч. LPC2000 (NXP)
      • HC11 (Freescale) и микроконтроллерные модули BASIC Stamp (Parallax)
      • ведется работа по добавлению поддержки других МК
      • Преимущества
        • Выполнение всех этапов разработки электронного устройства на основе микроконтроллера в единой среде
        • Возможность написания, отладки и тестирования микропрограммного обеспечения еще до физического изготовления опытного образца системы.
        • Генерируемые диагностические сообщения (например, при выполнении непредусмотренной инструкции) как со стороны ЦПУ, так и со стороны моделей устройств ввода-вывода, позволяют обнаружить сложные в поиске ошибки программирования
        • Ускоряет процесс разработки электронного устройства
        • Поддержка совместной работы с аппаратными устройствами, подключенными через порт компьютера
        • Адрес поддержки в Интернет: http://www.labcenter.co.uk/
        • Исполнения
          • множество коммерческих исполнений, различающихся возможностями программы для разработки печатных плат и поддерживаемыми семействами микроконтроллеров при моделировании работы схемы
          • 20%-ая скидка на любую коммерческую версию для учебных заведений
          • ограничения демонстрационной версии: невозможность сохранения и печати; невозможность создания своих собственных схем на основе МК, однако после открытия существующих схем имеется возможность изменить программу, исполняемую микроконтроллером, и пронаблюдать результат её исполнения.
          • Читайте также:  Не крутится замок в двери

            Proteus — среда для проектирования и отладки электронных устройств, в т.ч. выполненных на основе микроконтроллеров различных семейств. Предоставляет возможности ввода схемы в графическом редакторе, моделирования её работы и разработки печатной платы, включая трехмерную визуализацию её сборки. Уникальной чертой среды Proteus является возможность эффективного моделирования работы разнообразных микроконтроллеров (PIC, 8051, AVR, HC11, ARM7/LPC2000 и др.) и отладки микропрограммного обеспечения.

            Среда PROTEUS имеет огромную библиотеку электронных компонентов, а недостающие — можно сделать самостоятельно. Предусмотрена поддержка SPICE-моделей, которые часто предоставляются производителями электронных компонентов.

            В комплект профессиональной версии входят инструменты USBCONN для подключения моделируемой схемы к реальному USB порту компьютера и COMPIM для подключения к COM-порту ПК.

            Среда PROTEUS совместима с популярными средами разработки микропрограммного обеспечения, в т.ч.:

            • CodeVisionAVR (только МК AVR)
            • IAR (любые МК)
            • ICC (МК AVR, msp430, ARM7)
            • WinAVR (МК AVR)
            • Keil (МК 8051 и ARM)
            • HiTECH (МК 8051 и PIC)

            Снимок экрана в процессе моделирования шахматного компьютера на основе МК AVR и графического сенсорного монохромного экрана:

            Изучение программное среды Proteus для моделирования автоматических систем на базе микроконтроллеров, интеллектуальных датчиков и жидкокристаллических индикаторов информации. Предназначение программ ISIS и ARES. Выставление на поле микроконтроллера.

            Рубрика Программирование, компьютеры и кибернетика
            Вид лабораторная работа
            Язык русский
            Дата добавления 25.11.2014
            Размер файла 326,1 K

            Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

            Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

            Размещено на http://www.allbest.ru/

            Лабораторная работа№1. Моделирование приборов и систем в Proteus

            Цель работы: изучение программное среды Proteus для моделирования автоматических систем на базе микроконтроллеров, интеллектуальных датчиков и жидкокристаллических индикаторов информации.

            В PROTEUS VSM входят как простейшие аналоговые устройства, так и сложные системы на микроконтроллерах.

            — огромная библиотека моделей элементов, пополнять которую может сам пользователь;

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

            Proteus VSM состоит из двух самостоятельных программ:

            — ISIS (Intelligent Schematic Input System) — графический редактор принципиальных схем со встроенным менеджером библиотек;

            — ARES — графический редактор печатных плат со встроенным менеджером библиотек и трассировщиком.

            Основной программой является ISIS, в ней предусмотрена связь с ARES для передачи данных проекта, необходимых при создании печатной платы.

            При запуске программы появляется основное окно ISIS.

            Рисунок 4.1 Вид основного окна ISIS

            Самое большое пространство отведено под окно редактирования EDIT WINDOW, в котором происходят все основные процессы создания, редактирования и отладки схемы устройства.

            Слева вверху находится маленькое окно предварительного просмотра Overview Window. Щелкая левой кнопкой мыши по окну, можно перемещаться по окну предварительного просмотра, если схема имеет большие размеры.

            Перемещать окно редактирования по схеме можно другим способом: удерживая нажатой кнопку SHIFT, двигать курсор мыши, не нажимая ее кнопок.

            Приближать и отдалять схему в окне можно соответственно кнопками F6 и F7 или же колесом мыши. F5 центрирует схему в окне, а нажатие F8 подгоняет размер схемы под окно редактирования.

            Под окном предварительного просмотра находится Object Selector — список выбранных в данный момент компонентов, символов и других элементов. Выделенный в списке объект отображается в окне предварительного просмотра.

            Все возможные функции и инструменты Proteus VSM доступны через меню и пиктограммы, находящиеся под меню и слева от основного окна, а также через клавиши F1-F12.

            Внизу основного окна расположены слева направо: кнопки вращения и разворота объекта вокруг своей оси, панель управления интерактивной симуляцией (выглядит как панель магнитофона): ПУСК — ПОШАГОВЫЙ РЕЖИМ — ПАУЗА — СТОП и строка статуса, отображающая ошибки, подсказки, текущее состояние процесса симуляции и т.д. Справа отображаются в милидюймах (th) координаты курсора.

            Манипулирование объектами осуществляется после их выделения при выключенном процессе симуляции проекта. Для выделения объекта нужно щелкнуть по нему правой кнопкой мыши. Для выделения группы объектов можно либо, удерживая клавишу Ctrl, последовательно щелкать правой кнопкой по всем объектам, либо, удерживая правую кнопку, протащить область выделения по необходимым объектам. Выделять объекты надо очень осторожно, т.к. повторный щелчок правой кнопкой мыши по выделенному объекту удалит его. Удаление выделенных объектов происходит при нажатии кнопки DELETE. Отменить последние и все предыдущие действия по порядку можно с помощью кнопок отмены UNDO, REDO. Кнопки отмены действуют как назад, так и вперед.

            Выделенные объекты можно перемещать по схеме, ухватив их левой кнопкой мыши и передвинув в нужное место, отпустить кнопку.

            Процесс симуляции проекта осуществляется нажатием кнопки ПУСК, расположенной внизу основного окна панели управления.

            Все элементы находятся в библиотеке компонентов. Чтобы попасть в библиотеку, нужно перейти в режим COMPONENT, нажав на соответствующую пиктограмму. Теперь, либо щелкнув по пиктограмме Р (Pick Devices — выбор приборов), либо дважды щелкнув левой кнопкой в поле выбора компонентов Object Selector, попадем в библиотеку.

            Компоненты можно выбирать по категориям Category, подкатегориям — Subcategory, по производителю Manufacturer (используется очень редко) или же искать по ключевым словам в окне «маска», например, ATMega16.

            Порядок выполнения работы

            1. Выбор элементов схемы термометра

            В программе ISIS Proteus выбрать в компонентах микроконтроллер ATMega16, интеллектуальный датчик температуры DS18B20, LCD типа LM016L, резистор R=4.7k, осциллограф и собрать схему (рисунок 4.4).

            Выберем микроконтроллер ATMega16 библиотеки AVR2: нажатием на Р открывается окно Pick Devices, выбираем категорию — Microprocessor ICs, подкатегорию — AVR Family и в поле результатов выделяем левой кнопкой ATMega16 (справа появится условное обозначения и размеры корпуса), нажимаем справа внизу ОК, закрывается окно и на основном поле курсором в нужном месте устанавливается выбранная микросхема.

            Затем навести курсор на микроконтроллер и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором в пункте CKSEL Fuses выбрать — (0100) Int RC 8MHz, затем ОК.

            Датчик температуры DS18B20: категория — Data converter, подкатегория — Temperature sensors. Навести курсор на датчик и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором в пункте Granually поставить — 1, затем ОК.

            LCD типа LM016L: категория — Optoelectronics, подкатегория — Alphanumeric LCDs. Навести курсор на LCD и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором в окне Other properties написать — , затем ОК.

            Резистор R=4.7k: категория — Resistor, подкатегория — Generic. После установки на поле выделить курсором и нажать правую кнопку, в появившемся окне выделить строку Правка свойств, в окне которой выставить 4.7 К и нажать ОК.

            Осциллограф: справа нажимаем на пиктограмму «Визуальные инструменты», выделяем Oscilloscope и передвигая курсором, устанавливаем на поле нажатием левой кнопки. Навести курсор на осциллограф и щелчком правой кнопки мыши открыть окно Правка свойств с выпадающим меню, в котором поставить галочку в пункте Исключить из РСВ, затем ОК.

            Земля и + источника: нажимаем на правую пиктограмму «Terminals», нажимаем поочередно Ground и Power.

            Внимательно соединяем каждое устройство в строгом соответствии приведенной схемы (рисунок 4.2).

            Рисунок 4.2 Основное окно программы ISIS

            2. Сохранить файл, например, под названием Test.

            В результате должны появиться 2 файла с расширениями Test.DSN и Test.DBK.

            3. Прошивка hex-файла программы.

            Для создания hex-файла прошивки микроконтроллера AVR можно использовать компиляторы AVR STUDIO, AVR IAR или ICC AVR.

            Текст программы в Си имеет вид.

            //определяем порт и бит к которому подключено устройство 1-wire

            #define W1_PORT PORTC

            #define W1_DDR DDRC

            #define W1_PIN PINC

            #define W1_BIT 0

            //функция определяет есть ли устройство на шине

            unsigned char w1_find()

            unsigned char device;

            W1_DDR |= 1 1000)//если температура

            © 2000 — 2018, ООО «Олбест» Все права защищены

            Проектирование схем электрических принципиальных с использованием микроконтроллеров в программной среде Proteus 8.1. Часть 2

            В Proteus реализовано большое количество функций для профессионального проектирования микроэлектронных устройств, ориентированных на самые современные средства моделирования. Одной из таких функций является имитация работы микроконтроллеров.

            В этой статье процесс моделирования схем с использованием микроконтроллеров рассмотрен на примере микроконтроллера 80С51.

            Моделирование схемы включающей микроконтроллер и трансляция программного кода.

            Для наглядной демонстрации работы программы инициализации микроконтроллера воспользуемся цветными пробниками логических уровней 0 и 1. Для того, что бы добавить пробник в рабочее поле проекта, необходимо вызвать окно Pick Devices (рис. 1) и в поле Category выбрать из списка библиотеку Debugging Tools, в поле Sub-category выбрать строку Logic Probes, а в поле Results – строку LOGICPROBE, затем нажать кнопку ОК.

            Рис. 1. Выбор пробника логических уровней в окне Pick Devices.

            В результате чего окно Pick Devices будет закрыто, а символ пробника будет прикреплен к курсору мыши, при помощи которого необходимо поместить символ в нужное место на схеме — щелкнуть в нужном месте схемы левой кнопкой мыши столько раз, сколько пробников необходимо разместить.

            Добавим в рабочее поле проекта микроконтроллер 80С51 (подробно процесс создания нового проекта с использованием микроконтроллера в Proteus был рассмотрен в первой части статьи) и подсоединим пробники к исследуемым линиям портов микроконтроллера. В результате чего, при появлении на выходе линии порта значения логической единицы, пробник будет подсвечен красным цветом, при появлении же значения логического нуля пробник будет подсвечен синим цветом. Так же на пробниках визуально отображаются значения 0 и 1.

            После того как в рабочей области проекта собрана схема (рис. 2), а на вкладке Source Code введен код программы (рис. 3), можно запускать моделирование.

            Рис. 2. Демонстрационная схема с использованием микроконтроллера и цветных пробников логических уровней.

            Рис. 3. Программа инициализации микроконтроллера.

            Процесс моделирования запускается при помощи кнопки Run the simulation, которая находится в левом нижнем углу окна программы. Для того, что бы временно приостановить процесс симуляции, используйте кнопку Pause the simulation, or start up at time 0 if stopped (кнопка находится в левом нижнем углу окна программы). Остановить моделирование можно при помощи кнопки Stop the simulation.

            В результате, в том случае если компилятор в листинге программы не обнаружит ошибок, на диске вашего компьютера в рабочей папке проекта будут созданы следующие файлы:

            • *.hex – файл машинного кода (рис. 4);
            • *.asm – файл с ассемблерным кодом программы (рис. 5);
            • *.sdi – файл отладки программы инициализации, содержимое которого можно также просмотреть на вкладке 8051 CPU Source Code (рис. 6).

            Рис. 4. Нex файл машинного кода.

            Рис. 5. Файл с ассемблерным кодом программы.

            Рис. 6. Вкладка 8051 CPU Source Code.

            Программа инициализации микроконтроллера пишется на языке программирования asm51. Это язык ассемблера, который предназначен специально для написания программ для микроконтроллеров семейства х51. В том случае, если в ходе компиляции кода программы инициализации микроконтроллера были обнаружены ошибки, они будут отмечены компилятором в файле *.lst. При этом hex файл не будет сгенерирован до тех пор, пока ошибки не будут устранены. В файле листинга для каждой обнаруженной ошибки компилятор указывает причину ошибки и номер строки, в которой она была обнаружена. На рисунке 7 представлен фрагмент файла *.lst, в котором отладчик сообщает об ошибке номер 2 (Неопределенный идентификатор), которая состоит в том что в коде программы неверно указано название порта ввода/вывода данных (в используемом микроконтроллере нет порта с названием Р6).

            Рис. 7. Фрагмент файла листинга *.lst.

            Отладка программы инициализации выполняется на вкладке 8051 CPU Source Code, которая отображается после приостановки процесса симуляции. Для того, что бы временно приостановить симуляцию схемы, используйте кнопку Pause the simulation, or start up at time 0 if stopped (кнопка находится в левом нижнем углу окна программы). Отчет об ошибках полученных в результате трансляции программного кода отображается в нижней части вкладки Source Code на панели VSM Studio Output (рис. 8).

            Рис. 8. Отчет об ошибках полученных в результате трансляции программного кода.

            Состояние памяти и регистров микроконтроллера можно просмотреть при помощи следующих команд основного меню программы:

            • Debug/8051 CPU Registers (рис. 9а);
            • Debug/8051 CPU SFR Memory (рис. 9б);
            • Debug/8051 CPU Internal (IDATA) Memory (рис. 9в).

            Рис. 9. Состояние: (а) регистров, (б) памяти SFR, (в) внутренней памяти микроконтроллера.

            Меню Debug (рис. 10) доступно для вызова во время приостановки симуляции схемы.

            Рис. 10. Меню Debug.

            Проанализируем работу демонстрационной схемы, представленной на рисунке 2. На вкладке main.asm (рис. 3) при помощи команды mov были даны указания программе инициализации микроконтроллера записать в порт Р2 следующие значения линий порта Р2.7-Р2.0 – «00001111», а в порт Р1 – значения линий порта Р1.7-Р1.0 – «01010101». После запуска моделирования при помощи цветных пробников мы можем проверить правильность работы программы. Как видно из рисунка 2 на выводах портов микроконтроллера Р1 и Р2 действительно та комбинация которую мы указали в коде программы.

            Сопряжение микроконтроллера х51 с микросхемами 7-сегментных индикаторов в Proteus.

            Система, в которой используется микроконтроллер, может не только чем-то управлять, но и что-то отображать. Чаще всего в качестве узла отображения в схеме используют знакосинтезирующие индикаторы. Каких-либо стандартных правил сопряжения микроконтроллера с индикаторами не существует, и в каждом конкретном случае сопряжение может выполняться по-разному.

            На рисунке 11 представлен пример соединения микросхемы 7-сегментнного индикатора с микроконтроллером. Принцип соединения микроконтроллера с элементами схемы такой же, как и для других компонентов схемы.

            Рис. 11. Сопряжение микросхемы 7-сегментного индикатора с микроконтроллером.

            Для того, что бы отобразить цифру, нужно «зажечь» определенные сегменты индикатора. При использовании в схеме микроконтроллера сделать это можно программным способом. Разные комбинации светящихся элементов индикатора, обеспечиваемые внешней коммутацией, позволяют отображать цифры от 0 до 9 и децимальную точку. В представленном примере у индикатора элементы имеют общий катод.

            Для управления 7-сегментным индикатором в схеме используется двоично-десятичный дешифратор 74HC4511 (отечественный аналог 1564ИД23). Микросхема дешифратора выполняет преобразование двоичного кода полученного с микроконтроллера в код цифры для дальнейшего отображения на микросхеме 7-сегментного индикатора. Микросхема 74HC4511 – это специальный дешифратор, предназначенный для преобразования двоичного кода в семисегментный код и управления семисегментными и жидкокристаллическими индикаторами. Входы А, B, C, D – информационные входы. Выходы QA-QG – выходы на семисегментный индикатор. Двоичные коды и соответствующие им десятичные цифры представлены в таблице 1.

            Таблица 1. Двоичные коды и соответствующие им десятичные цифры.

            Оценить статью
            Добавить комментарий