Видео:Шина данных i2c - декодируем/синхронизируем с помощью осциллографа Lecroy!Скачать
Моделирование работы микроконтроллеров в Proteus или как зашить ПИК в Протеусе
Proteus – многофункциональная программа. Одна из функций – моделирование работы микроконтроллеров с непосредственным взаимодействием (управлением) во время работы. Кратко рассмотрим механизм моделирования. Выбираются необходимые элементы и устройства из библиотек, указываются электрические связи, указывается прошивка и запускается симуляция в реальном времени. И всё. Не нужно собирать макетных плат и опытных образцов. Значительную часть отладки можно сделать в Протеусе. Экономится колоссальное количество времени (и деталей).
Где скачать и как установить – всё это здесь. Приступаем к ознакомлению с программой. У меня стоит версия ISIS 7 Professiona 7.6 SP4.
Запускаем. Идём в библиотеку элементов (нажимаем выделенное красным).
Открывается новое окно с категориями элементов
Можно найти нужные элементы перебором в категориях, но проще по названиям.
Дважды щелкаем по обнаруженному элементу. Этот элемент добавляется к списку выбранных элементов.
Даже этого одного элемента достаточно чтобы уже оценить элементарные проекты. Но мы сейчас наберем немного других элементов, чтобы не возвращаться к этому вопросу.
В данном случае я набрал всякой ерунды для примера (вы их тоже найдите и посмотрите). Множество из компонентов анимированы, т.е. их можно покрутить и повертеть во время симуляции и посмотреть на реакцию приборов и индикаторов. Собственно это и привлекает в работе симулятора.
Теперь научимся делать электрические связи.
1. Цмыкаем компонент в нашем списке (выделить).
2. Цмыкаем в поле редактора (вставить).
3. Цмыкаем в поле редактора повторно (фиксация).
Колесом мыши увеличиваем-уменьшаем зум (масштаб).
Кинем в редактор еще что-нибудь, например, индикатор.
Компоненты можно перемещать и вращать. Для этого цмыкаем по компоненту правой кнопкой мыши и выбираем нужное действие.
В данном случае я повернул к лесу задом, а к себе передом. Таким образом, располагаем компоненты более удобно относительно друг друга.
Как сделать электрические соединения? Я использую 3 вида соединений: напрямую, через шину, через указатели. Напрямую, т.е. вывод с выводом объединяется электрической линией.
Наводим указатель мыши на вывод до появления выделения, цмыкаем, затем ведем линию к другому выводу до появления выделения, снова цмыкаем. Ок, соединение сделано. Если соединение не нужно, то цмыкаем по соединению правой кнопкой мыши.
Читайте также: Подбор шин по параметрам подбор шин по автомобилю
Если нужно несколько выводов объединить, то тянем линию до предполагаемой точки объединения и двойным цмыком соединяем – образуется точка.
Соединений может быть очень много, особенно в цифровой технике. Соединения линиями настолько путаны и в результате захламляют схему. Можно использовать соединение в шину.
Одинарным цмыком указываем начало шины. Тянем шину, одинарным цмыком указываем повороты, двойным цмыком указываем конец шины.
Далее вывода компонентов соединяем с шиной. Наводим указатель мыши на вывод компонента до появления выделения, цмыкаем, тянем до шины линию до появления выделения, снова цмыкаем для фиксации линии.
Для того, чтобы программа понимала что с чем соединяется в шине, мы должны именовать линии.
Цмыкаем на линию правой кнопкой мыши и выбираем в меню Place Wire Label .
В открывшемся окне либо выбираем имеющиеся именования, либо вручную дописываем новое + Ок. Я именую линии именами выводов микроконтроллера (и вам рекомендую). В результате рядом с линией появляется именование, которое однозначно указывает её соединение в шине. Несколько выводов может быть объединено между собой; для этого вы присваиваете линиям одни и те же имена.
Однако, иногда более удобно использовать указатели (терминалы).
Цмыкаем как на рисунке выше. Затем кидаем терминал в поле редактора, крутим и объединяем.
Теперь нам надо именовать терминал. Дважды цмыкаем по терминалу. В открывшемся окне либо выбираем имеющиеся именования, либо вручную дописываем новое + Ок (аналогичное окно из примера выше).
В результате получаем нечто похожее на это
Понятное дело, что в данном случае можно было по-простому объединить прямыми линиями. Но мне этот вариант больше нравится, т.к. сразу видно какая линия к какому выводу микроконтроллера идёт.
Будем считать, что объединили. Дальше нам надо указать используемую прошивку. Дважды цмыкаем по микроконтроллеру. Открывается следующее окно.
Сразу указываем нужную частоту. Затем цмыкаем на обзор и в стандартном окне диалога находим прошивку (*. hex файл). Нажимаем Ок.
Важный момент! Линии питания у микроконтроллера явно не указаны. По-умолчанию микроконтроллер уже запитан. По умолчанию микроконтроллер уже тактируется, т.е. кварц не нужен. И это радует. Также радует, что микроконтроллеров (и соответствующих прошивок) может быть несколько в одном проекте Протеуса.
Всё готово. Обязательно сохраняемся, т.к. в сложных проектах симуляция может не запуститься без сохранения.
Как запустить симуляцию? Да всё просто. Как в проигрывателе (или выигрывателе) цмыкаем эти кнопки.
Видим сообщения; для просмотра цмыкните по ним.
Также видим загрузку процессора вашего ПК. Бывает, что не хватает сил ПК и процент загрузки по максимуму. Иногда это может привести к зависанию симуляции. Как лечить? Закрываем все посторонние программы (проигрыватели, антивирусы, другие окна) и заново запускаем. Симуляция довольно тяжелый процесс для ПК.
Ставим нужное напряжение 5.
Виртуальные измерительные приборы.
Кратко прокомментирую те, которые реально полезны для меня.
Осциллоскоп 4х канальный – можно отслеживать последовательность, длительность и уровни цифровых сигналов.
Виртуальный терминал – обмен данными с микроконтроллером по UART (виртуальный COM -порт и терминал).
I 2 C дебагер – анализ пакетов данных.
Сигнал генератор – периодически нужен (не забудьте его «минус» соединить с общим проводом Vss ).
Разные вольтметры – ну это понятно.
Разумеется, в библиотеках можно обнаружить кучу компонентов – как аналоговых, так и цифровых. Очень много PIC -микроконтроллеров разных семейств. Дополнительные настройки компонента вызываются двойным цмыком.
Уверен, что со временем вы сделаете массу открытий в Протеусе.
О сайте.
Электронные устройства и модели,
обучение и консультация,
документация и средства разработки.
Принимаем на реализацию проекты,
услуги, идеи. Возмездная помощь.
Здесь может быть
ваша реклама
Понравилась конструкция,
но не можете собрать?
Обращайтесь, мы удовлетворим
ваши запросы и пожелания!
Напишите нам письмо.
В русском Интернете бестолку защищать свои права. Хотите использовать материалы — используйте,
но с письменного согласия авторов. В противном случае будут высланы соответствующие письма
в поисковые системы об ограничении индексации ваших сайтов. Не доводите до греха.
Видео:Сигнальная шина в Proteus-eСкачать
Проектирование электронных устройств в Proteus 8.1. Часть 8
Использование виртуальных инструментов в Proteus позволяет сравнивать теоретические данные с реальными непосредственно в процессе создания схемы, что снижает количество проектных итераций, число ошибок в прототипе и ускоряет разработку устройства. Однако, для эффективного использования виртуальных инструментов в Proteus необходимо понимание алгоритмов, реализованных в программе, знание принципов работы используемых инструментов и принципов построения моделей электронных компонентов. Неправильное применение моделей компонентов, настройка виртуальных приборов и использование вычислительных алгоритмов могут привести к получению ошибочных результатов моделирования.
Читайте также: Рейтинг шин по характеристикам
Работа с цифровым генератором шаблона в Proteus.
Цифровой генератор шаблона это цифровой эквивалент аналогового сигнал-генератора, работа с которым была рассмотрена в статье «Проектирование электронных устройств в Proteus 8.1. Часть 6». Данный виртуальный прибор генерирует выходные цифровые сигналы по заданному 8-битовому шаблону и может использоваться для подачи данных сигналов в моделируемую схему.
Цифровой генератор шаблона имеет следующие возможности:
- внутренний и внешний режим тактирования и синхронизации;
- подстройка для тактовой частоты и шкалы переключения;
- режим отображения шестнадцатеричной и десятичной сетки;
- загрузка и сохранение шаблона.
Прибор имеет следующие выводы:
- B[0..7] (выход) – шина данных;
- Q0 – Q7 (выходы) – выводы данных;
- CLKIN (вход) – данный вывод используется для подключения внешнего тактового генератора;
- HOLD (вход) – положительный сигнал на данном входе приводит к остановке (паузе) генератора шаблона;
- TRIG (вход) – данный вывод используется для подачи внешнего сигнала синхронизации;
- OE (вход) – отрицательный сигнал на данном входе запрещает вывод шаблона на выходные выводы генератора шаблона;
- CLKOUT (выход) – отображение импульсов внутреннего генератора при внутреннем тактировании;
- CASCADE (выход) – данный вывод переходит в высокое состояние, когда первый бит шаблона поступает на выходы, и остается в низком состоянии все остальное время.
Для того, что бы добавить цифровой генератор шаблона в рабочее поле программы, необходимо нажать на строку с его названием (PATTERN GENERATOR) на панели INSTRUMENTS и разместить его с помощью мыши в необходимом месте на схеме. Шаблон можно создать вручную на дисплее лицевой панели генератора либо загрузить из файла. Дисплей лицевой панели представляет собой таблицу, которая содержит 8 строк, соответствующих 8 битам выходного сигнала, подающимся на выходы Q0-Q7 и/или на шину B[0..7] генератора шаблона. Создать шаблон на дисплее можно посредством щелчков левой кнопки мыши по пустым ячейкам таблицы, в результате чего ячейка заполнится цветом. Комбинация закрашенных ячеек создает рисунок/надпись, которую можно сохранить как шаблон для последующего использования. Снять выделение ячейки можно путем повторного щелчка левой кнопки мыши. Сохранить созданный шаблон или загрузить уже имеющийся (рис. 1) можно при помощи команд контекстного меню:
- Load Pattern (загрузить шаблон);
- Save Pattern (сохранить шаблон);
- Save Pattern As (сохранить шаблон как).
Рис. 1. Создание надписи в области дисплея лицевой панели и обзор команд контекстного меню цифрового генератора шаблона
Рис. 2. Соответствие комбинации сигналов на выходе цифрового генератора шаблона и комбинации пустых и закрашенных ячеек последнего столбца таблицы лицевой панели прибора.
Рисунок 2 наглядно демонстрирует работу цифрового генератора шаблона. Как видно из рисунка, комбинация сигналов на выходе прибора соответствует комбинации пустых и закрашенных ячеек последнего столбца таблицы лицевой панели прибора. Визуально отобразить разработанный шаблон можно при помощи виртуального терминала (рис. 3).
Рис. 3. Вывод шаблона на экран виртуального терминала
Для того чтобы добавить данный прибор в рабочее поле проекта необходимо нажать на строку с его названием (VIRTUAL TERMINAL) на панели INSTRUMENTS и разместить его с помощью мыши в необходимом месте на схеме. Так как виртуальный терминал имеет последовательный интерфейс, то символы шаблона необходимо представить в двоичном коде. Для этого создадим на диске компьютера текстовый файл с кодировкой надписи (рис. 4), сохраним его с расширением *.ptn и загрузим в качестве шаблона.
Рис. 4. Кодирование символов в файле шаблона
В данном случае мы будем выводить на экран виртуального терминала слово Privet. Исходя из таблицы соответствия (таблица 1) символов английского алфавита и двоичного кода, слово Privet в файле шаблона будет иметь следующий вид:
- P – 01010000 (0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x00);
- r – 01110010 (0x00,0x80,0x00,0x00,0x80,0x80,0x80,0x00);
- i – 01101001 (0x80,0x00,0x00,0x80,0x00,0x80,0x80,0x00);
- v – 01110110 (0x00,0x80,0x80,0x00,0x80,0x80,0x80,0x00);
- e – 01100101 (0x80,0x00,0x80,0x00,0x00,0x80,0x80,0x00);
- t – 01110100 (0x00,0x00,0x80,0x00,0x80,0x80,0x80,0x00).
Необходимо отметить, что строка в файле шаблона, начинающаяся с символа «;» расценивается как комментарий и игнорируется анализатором программы.
Таблица 1. Таблица соответствия символов английского алфавита и двоичного кода.
Символ | Двоичный код | Символ | Двоичный код | Символ | Двоичный код | Символ | Двоичный код |
A | 01000001 | N | 01001110 | a | 01100001 | n | 01101110 |
B | 01000010 | O | 01001111 | b | 01100010 | o | 01101111 |
C | 01000011 | P | 01010000 | c | 01100011 | p | 01110000 |
D | 01000100 | Q | 01010001 | d | 01100100 | q | 01110001 |
E | 01000101 | R | 01010010 | e | 01100101 | r | 01110010 |
F | 01000110 | S | 01010011 | f | 01100110 | s | 01110011 |
G | 01000111 | T | 01010100 | g | 01100111 | t | 01110100 |
H | 01001000 | U | 01010101 | h | 01101000 | u | 01110101 |
I | 01001001 | V | 01010110 | i | 01101001 | v | 01110110 |
J | 01001010 | W | 01010111 | j | 01101010 | w | 01110111 |
K | 01001011 | X | 01011000 | k | 01101011 | x | 01111000 |
L | 01001100 | Y | 01011001 | l | 01101100 | y | 01111001 |
M | 01001101 | Z | 01011010 | m | 01101101 | z | 01111010 |
Задать использование шаблона из файла можно в окне настройки параметров цифрового генератора шаблона Edit Component (рис. 5) в поле Pattern Generator Script, путем нажатия на значок открытой папки и выбора необходимого файла на диске.
Читайте также: Размер шин инфинити qx80 r22
Рис. 5. Окно настройки параметров цифрового генератора шаблона
Открыть окно Edit Component можно следующим образом – выделите при помощи левой кнопки мыши пиктограмму генератора шаблона в области схемы, при помощи правой кнопки мыши вызовите контекстное меню и выберите в нем пункт Edit Properties. Также в данном окне можно задать следующие параметры цифрового генератора шаблона:
- Part Reference — позиционное обозначение прибора;
- Clock Rate – частота внутреннего тактирования;
- Reset Rate – частота внутренней синхронизации;
- Clock Mode – режим тактирования генератора: Internal (внутренний), External Pos Edge (внешний по фронту), External Neg Edge (внешний по срезу);
- Reset Mode – источник и сигнал синхронизации: Internal (внутренний источник синхронизации), Async External Pos Edge (внешний асинхронный положительный фронт), Sync External Pos Edge (внешний синхронный положительный фронт), Async External Neg Edge (внешний асинхронный отрицательный фронт), Sync External Neg Edge (внешний синхронный отрицательный фронт);
- Clockout Enabled in Internal Mode — отображение импульсов внутреннего генератора при внутреннем тактировании: Yes (да), No (нет);
- Output Configuration – вывод данных: Output to Pins Only (вывод данных только на выводы Q0-Q7), Output to Bus Only (вывод данных только на шину B[0..7]), Output to Both Pins and Bus (вывод данных на выводы и на шину).
Лицевая панель генератора шаблона используется для ввода установок данного прибора. Рассмотрим эту панель более подробно. В ее левой части расположено два окна:
- CLOCK – в данном окне задается режим тактирования генератора: внешний или внутренний. Выбор производится при помощи кнопки посредством многократного ее нажатия до тех пор, пока включенный индикатор не будет соответствовать нужному режиму тактирования. Индикаторы не имеют названий, но их функции интуитивно понятны, так как рядом с каждым индикатором визуально отображен значок-подсказка. В том случае, если в окне CLOCK был выбран режим внутреннего тактирования, можно подстроить частоту при помощи ручки-переключателя Clock;
- TRIGGER – в данном окне производится выбор источника синхронизации (внешнего или внутреннего) и сигнала синхронизации (фронт или срез). Если выбрана внешняя синхронизация, то необходимо указать будет ли она синхронной или асинхронной с тактовым генератором. Выбор всех параметров производится при помощи кнопок посредством многократного их нажатия до тех пор, пока включенный индикатор не будет соответствовать нужному значению. В том случае, если в окне TRIGGER был выбран режим внутренней синхронизации, можно подстроить частоту при помощи ручки-переключателя Trigger.
Внутренний режим тактирования генератора переключается отрицательным фронтом и может быть задан либо до симуляции в окне настройки параметров цифрового генератора шаблона, либо в процессе симуляции на лицевой панели прибора в окне CLOCK. Есть два режима внешнего тактирования: по фронту и по срезу. Для того, что бы тактирование выполнялось при помощи внешнего генератора, необходимо подключить вывод выходного сигнала внешнего тактового генератора к входу CLKIN генератора шаблона и выбрать один из двух режимов тактирования (по фронту или по срезу) в окне настроек параметров генератора шаблона или на лицевой панели прибора в окне CLOCK.
Рассмотрим режимы синхронизации цифрового генератора шаблона. В режиме внутренней синхронизации шаблон переключается в заданных интервалах. Если тактирование внутреннее, то в момент переключения внутренний тактовый генератор сбрасывается. Вывод CASCADE переходит в высокое состояние и первый бит шаблона выводится на выходные выводы генератора. Временные диаграммы работы цифрового генератора шаблона в разных режимах синхронизации показаны на рисунке 6.
Рис. 6. Временные диаграммы работы цифрового генератора шаблона в разных режимах синхронизации: (а) режим внутренней синхронизации, (б) синхронизация внешним асинхронным положительным фронтом, (в) синхронизация внешним синхронным положительным фронтом, (г) синхронизация внешним асинхронным отрицательным фронтом, (д) синхронизация внешним синхронным отрицательным фронтом.
В цифровом генераторе есть возможность задать вывод определенной части шаблона. Сделать это можно на лицевой панели генератора шаблона в области дисплея, для чего необходимо определить запрещенную для вывода область шаблона посредством перемещения курсора при помощи левой кнопкой мыши. Запрещенная для вывода область будет отображена более светлым оттенком (рис. 7).
Рис. 7. Запрещенная для вывода часть шаблона в области дисплея лицевой панели цифрового генератора шаблона
Продвижение по шаблону во время симуляции можно выполнять при помощи кнопки STEP расположенной в окне CLOCK лицевой панели прибора. При этом симуляция будет длиться до завершения цикла тактового генератора, после чего остановится.
- Свежие записи
- Нужно ли менять пружины при замене амортизаторов
- Скрипят амортизаторы на машине что делать
- Из чего состоит стойка амортизатора передняя
- Чем стянуть пружину амортизатора без стяжек
- Для чего нужны амортизаторы в автомобиле
🎦 Видео
Передача данных - шина SPIСкачать
Configurator, тестирование в Proteus.Скачать
PROTEUS 8 для начинающих 1Скачать
СПРОСИ ЭКСПЕРТА: Выпуск 1. Чем отличается шина данных от ETL?Скачать
Как использовать шину данных для передачи значений между компонентамиСкачать
ProteusСкачать
скорость параллельной шины данных 16 битСкачать
Общие принципы работы с дисплеем 1602Скачать
MCP2515, контроллер CAN шины с интерфейсом SPIСкачать
Шина данныхСкачать
лекция 417 Чтение и запись данных на общую шинуСкачать
Системная шина процессораСкачать
Шина ДанныхСкачать
Изготовление фотошаблона в PROTEUSСкачать
PROTEUS УРОК 3 первая схемаСкачать
Лекция 308. Шина I2CСкачать
CAN шина👏 Как это работаетСкачать
Шина I2C.Скачать