26 декабря 2011 г.

Делаем курсач по VMEbus. Часть 10. Добавляем собственную микросхему в SchemaGee

SchemaGee очень даже прекрасна, и стоит научиться рисовать в ней собственные схемки, если вам не хватает 555 и 564 серий. А вам не должно их хватать, если вам нужен ЦАП или АЦП или еще какая заморочка.

Скажу по чесноку сразу - готовые схемы можно импортировать, например, из P-CAD, но это не соответствует дзэну АСНИ. но сейчас предлагаю поизобретать велосипед - нарисовать схемку самим. Вдруг потом полезно окажется, мало ли, не найдется нарисованной даже в P-CADе. И вообще я читал, что многие опытные конструктора иногда вручную правят готовые схемки, потому что они "корявые и бажные".

Приступим.




Извлекаем информацию из datasheet

Допустим, нам надо нарисовать одноканальный 10-битный АЦП AS1528 с последовательным выходом (первое, что пришло в голову). Нам необходимо знать назначение всех его выводов. Для этого качаем его datasheet и смотрим на распиновку (pin assignment) и табличку с описанием выводов (pin description). Вот распиновка:

Посмотрели, запомнили, забыли. В некоторых программах компоненты рисуются так, что выводы располагаются так же, как они растут на живом корпусе, но SchemaGee не такая - она же делает по ГОСТу! ГОСТ 2.743 предписывает располагать входы слева, а выходы справа, группировать выводы по функциям и не показывать VDD и GND.

Так что актуальнейшей информацией для нас станет назначение выводов. Смотрим табличку:


Узнаем, что 2,3,5 - статические входы, 6 и 8 - динамические входы (реагируют на фронт сигнала), 7 - выход, 1 - питание, 4 - земля. Слева получается пять входов, справа - 1 выход.

Рисуем

Без магии никак не обойдется, поэтому сразу <magic>

Запускаем Schemagee. Жмем Файл -> Создать библиотеку. Теперь сразу Файл -> Сохранить. Обзываем нашу библиотеку ASNI.



Жмем Добавление -> Компонент. Обзываем его AS1528 (это название АЦП, которого мы рисуем, кто забыл). Потом сразу жмем Добавление -> Элемент. Обзываем его тоже AS1528. Что за хрень, спросите вы? И будете правы.

Дело в том, что в одном компоненте может быть несколько элементов. Если вы уже ковырялись сами в SchemaGee, вы заметили, что там есть всякие штуки типа "555ТЛ2 - шесть триггеров Шмидта с инверсией". Компонент состоит из элементов. Компонент может состоять из одного элемента, а может из нескольких. Компоненты в библиотеках SchemaGee называются кириллицей, а элементы - латинницей. А наш АЦП и так называется латинницей, поэтому у нас получилось одно и тоже. Мистер Пофик!

Если вы все правильно сделали, у вас получилось вот так:

Едем дальше. Жмакаете правой кнопкой по элементу, тыкаете Редактировать, получаете вот такую вкладку:



Перечеркнутый квадратик - это место, за которое будет таскаться элемент, когда он будет готов. Не трогайте его. {RefDes} - это обозначение элемента на схеме. Ну помните там.. DD1, DD3, DD100500. {Type} - название микросхемы. Это мы все потом подредактируем.

Воспользуемся мастером создания элемента:


Вводим количество выводов слева 5, справа 1. Остальное не трогаем. Жмем ОК, получаем схемку:



Нам здесь совсем ничего не нравится. Много нужно переделать: подписать выводы, сгруппировать их, увеличить левое поле, поскольку у нас есть длинные названия. И по номерам выводы стоят неправильно. Например, справа должен быть 7, и т.д.

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



Цельтесь в каждый проводок, двигайте его, меняйте свойства, чтобы получилось так:



Текст AD я добавил инструментом Т вот так:




Жмем на дискетку - сохраняем. С элементом покончили. Но это еще не все! Приступаем к компоненту. Выбираем редактирование библиотеки на панели вкладок:



Жмем правой кнопкой на компонент, Редактировать, и сразу видим вот такую муру:



Видим в ней 4 столбца: № вывода компонента, № вывода элемента, Имя вывода и № секции. Пока у нас первые два столбца не соответствуют между собой. А должны. Тыкаем по очереди строки первого столбца и пишем цифры, равные цифрам во втором. Приравняли.

Теперь вспоминаем, что у нас есть выводы питания (VDD) и земли (GND), которые мы не рисовали в элементе. Мы все правильно сделали, их рисовать и не нужно было. А вот в компоненте их надо указать. Жмем Добавить, меняем номер вывода компонента и имя вывода:


Обратите внимание, что № вывода элемента и № секции равны 0 и не изменяются. Это правильно: выводов питания и земли на элементе нет и ни в какой из секций их тоже нет.

Осталось совсем немного: перейдем на вкладку Атрибуты и попишем кой-чего:


Еще я включил Видимость атрибута Type и обвел в кружочек где это делается. Жмакаем ОК.

Всё.

</magic>

Осталось подключить свою свеженькую библиотечку к проекту. Как это делается, я писал в прошлой статье. Если вы будете что-то менять в библиотеке, не забывайте потом в режиме редактирования электрической схемы жмакать на библиотеку в списке правой кнопкой и выбирать Обновить источники.

Вот как наша микросхема стоит рядом со своими подругами:



*слезы умиления*

P.S.

How-to такие how-to.... В общем, любые вопросы по теме можете оставлять в комментариях, постараюсь на них ответить.

Минздрав предупреждает: грамотное оформление схемы курсового проекта делается не за час, и не за два, и не за три, так что запасайтесь временем заранее! И вообще начните делать не в последнюю ночь, а в предпоследнюю. :)

Список статей

Часть 1. Введение. Евромеханика
Часть 2. Шины и устройства
Часть 3. Шина DTB
Часть 4. Slave-устройство на шине DTB. Циклы записи и чтения
Часть 5. Чтение адреса slave-устройством. Типы адресации. Регистр-защелка и компаратор
Часть 6. Программное управление slave-устройством. Дешифратор, D-триггер и свичи
Часть 7. Прерывания, прерыватели, шина приоритетных прерываний,вектор прерывания
Часть 8. Шинные формирователи
Часть 9. Рисуем схему по ЕСКД. Schemagee. Автоматическое создание списка элементов
Часть 10.Добавляем собственную микросхему в Schemagee
Часть 11. Импорт микросхемы из P-CAD в SchemaGee с последующим допиливанием