Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Штатні моделі в ISIS можна розділити на три класи - моделі реальних пристроїв (наприклад 74HC595), моделі віртуальних пристроїв (наприклад осцилограф або Voltage probe) і моделюються примітиви. Моделюються примітиви це умовні моделі реальних пристроїв, без прив'язки до конкретної марки пристрою - наприклад пристрій RESISTOR з бібліотеки ASIMMDLS це умовна модель резистора, яка як і належить має опір, але не має ні корпусу ні виробника ні чого-небудь ще. З резистором все просто - при імпорті в ARES, система сама запропонує вибрати для нього корпус і сама його радісно прив'яже - дійсно, резистор то прив'язати не складно, а ось з нашим 7мі сегментним індикатором все дещо гірше - якщо просто імпортувати схему з його участю в ARES, то ми ... його не побачимо, навіть якщо зняти галку в його властивості з "Exclude from PCB layout". Це погано, але ми це виправимо!

Отже для початку відкриваємо ISIS і створюємо новий документ, додаємо новий компонент з бібліотеки

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Виглядає він ось так:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Тут нас чекає маленьке (а для кого-то і велике!) Розчарування - у моделі всього один комплект висновків AG, і поробити з цим на жаль якщо щось і можна, то досить складно (я особисто простого шляху на жаль не знайшов, а вчити isis sdk заради пари потрібних мені модельок відверто кажучи бажання не виникло). З іншого боку, багато хто (і я в їх числі) використовують тільки один комплект висновків в 7ми сегментних дисплеях, підключаючи другий комплект (для 3х цифрових дисплеїв і третій і так далі) ніжок до першого і вибираючи включається число ніжками 1/2 (/ 3 для 3х цифрового і т.д) - в загальному це стандартна практика дозволяє економити ноги мікроконтролера або зсувних регістрів, так що біда то в цілому і не біда, але треба трохи переробити наш вчорашній корпус. Відкриваємо ARES, створюємо порожній файл, розміщуємо на ньому наш корпус 7S2D, виділяємо його натиснувши правою кнопкою миші наприклад на висновок під ніжку (нагадаю що натискати треба в сіру "дірку" по центру виведення) і вибираємо Decompose Tagged Objects

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Це розбере наш корпус на складові

Я довго намагався збагнути як додати нетліст до моделі, але так і не зрозумів, на щастя на радіокоте підказали що якщо призначити пінам в корпусі однакові номери, то вони стануть автоматично об'єднуватися при автоматичній прокладці доріжок! Розібравши корпус ліземо в даташит і дивимося які ноги з якими нам треба об'єднати:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Це пін-аут нашого дисплея, видно що номер Піна А1 = 15, а номер Піна А2 = 10 тобто що-б вони автоматично об'єднувалися в одну доріжку, треба номер 10 замінити на 15, і так з усіма парними буквами (12 міняємо на 13, 8 на 1, 6 на 3 тощо). В результаті у нас виходить ось такий набір пинов в корпусі:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Корпус готовий, треба його знову зібрати - виділяємо все елементи, натискаємо правою мишкою і натискаємо Make Package - зауважте що треба виділяти не тільки Піни і ободок корпусу, а й назва (рядок NAME = 7S2D)!

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

При складанні корпусу система сама підхопить ім'я, опис і все опції що ми вводили при початковому його створенні, при натисканні на ОК в віконці діалогу створення корпусу, система запитає чи дійсно ми хочемо оновити вже наявний в бібліотеці корпус з такою назвою ... да хочемо! )

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Треба натиснути на Yes, система запитає оновити чи все входження корпусу в поточному документі - не критично але краще теж натиснути на OK

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Тепер повертаємося з ARES в ISIS, де нам треба нашу модельку дособрать! Наскільки я зрозумів, ряд властивостей моделі, ISIS використовує тільки при створенні власне моделі, і редагувати або додавати їх до вже готового пристрою на жаль марно. Отже клацають правою кнопкою миші на нашому екрані і натискаємо на Decompose

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Наш дисплей розвалився на атоми, але найголовніше що ми бачимо над ним рядки з кодом, який описує власне модель:

Акуратно натискаємо на текст з кодом правою кнопкою миші (акуратно це що-б не натиснути на дисплей наприклад) і вибираємо Edit Properties

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

В результаті вискакує менюшка з кодом опису поки ще не нашої моделі:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Ось код стандартної моделі з протеуса:

Нам же потрібно додати всього два рядки і змінити одну, а саме:

NAME = 7S2D-CA-RED <- Это будет имя нашего устройства, вообще его можно добавить и в следующем шаге (при компоновке устройства), но мне лично почему-то так удобней. Имя естественно можно придумать свое – я пользовался вчерашней логикой по сокращениям: 7Segment2Digits-CommonAnode-Red т.е. 7ми сегментник 2х цифровой с общим анодом, красный. Вроде просто )

<- Это префикс, который будет инициализатором устройства при переносе в ARES, опять-же может быть своим, но у него есть ограничение – его длинна не может быть больше пяти символов. Его надо добавить где-нить под строчкой , например прямо перед строкой . Опять-же его можно ввести и позже ручками при создании компонента

<- Эта строка у вас уже есть, нам она указывает что начались настройки свойств модели и далее под ней надо найти вот эту строку:
<- Эту строчку надо найти и заменить, штатно ISIS считает что у этой модели HIDDEN PACKAGE т.е. корпус “спрятан”, нам же нужно указать имя, вчера созданного корпуса в ARES – у меня это было 7S2D

В результаті у мене вийшло так:

Натискаємо на ОК в нашій формі редагування коду, і виділяємо всі елементи розібраного дисплея (просто виділяємо їх як файліки в провіднику наприклад), після чого жмакаем правою кнопкою миші і вибираємо Make Device

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

І бачимо ось таку форму:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Якщо ми ввели ім'я і префікс під час редагування коду, то вони автоматично підхопить і будуть відображені у відповідних полях, якщо ви їх не вводили то введіть тут - далі можливості не буде)

Натискаємо на Next і бачимо наш чудовий корпус 7S2D з однаковими номерами пинов, натискаємо на Add / Edit.

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Мета цієї форми - для визначення балансу висновків моделі до пінам в корпусі. Знову ліземо в даташит на дисплей і дивимося що до чого має підключатися. Що-б задати зв'язку висновок-пін, треба клацнути мишкою в клітинку в колонці А в ряду з тим висновком, який ми прив'язуємо, після чого треба клацнути мишкою на номер Піна на малюнку з корпусом в правій частині форми:

За фактом нам треба заповнити всі осередки з номерами висновків, крім останнього висновку Н, який в нашому дисплеї не використовується (це мабуть точка - у нас її немає). Висновки моделі 1 і 2 це Піни ПЕРЕМИКАННЯ ЦИФР! тобто харчування індкатора (яким міняємо включену на певний момент цифру!) Коли дійдемо до Піна H робимо наступну річ - натискаємо на його ряд (в табличці) правою кнопкою миші і вибираємо Suppress Pin

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Це створить пусте зіставлення цього висновку в моделі тобто пін ні до чого підключений не буде - а нам і не треба! )

Для мого дисплея таблиця в результаті виходить ось така:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Тепер можна створити простеньку схемку з дисплеєм і експортувати її в ARES:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Схема трохи безглузда але корпусу покаже)) Вообщем атмега 168 керма дисплейчик через п'ятсот дев'яносто п'ятого зсувний регістр і сама вибирає цифру на дисплеї. Натискаємо на кнопочку ARES в панелі інструментів або йдемо в tools і там netlist to ares:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Відкривається ARES, розставляємо як зазвичай в ньому наші компоненти і натискаємо auto router (можна і auto placer'ом розставити - кому як подобається) В результаті бачимо ось таку картинку:

Створення свого корпусу для моделі isis (proteus), продовження, stanislav orlov сфера

Як бачимо все Піни в нашому корпусі вдало поєдналися з іншими компонентами, а потрібні з'єдналися і всередині корпусу!

За сім перемога, нехай і маленька але перемога - на виході у нас робоча моделька 2х цифрового 7мі сегментного дисплея, що показує всі що треба показувати в ISIS і корпус, готовий до розміщення в ARES!