//Ðта Ñтраница доÑтупна также на Ñледующих Ñзыках://
[[master_attributes_list|English]]
====== Перечень оÑновных атрибутов gEDA/gaf ======
//Ales Hvezda, ahvezda@geda.seul.org//
ÐаÑтоÑщий документ раÑпроÑтранÑетÑÑ Ð¿Ð¾Ð´ лицензией
[[http://www.gnu.org/copyleft/fdl.html|GFDL]]
10 Ð¸ÑŽÐ»Ñ 2007 г.
===== Обзор =====
Ð’ наÑтоÑщем документе приводитÑÑ Ð¾Ð¿Ð¸Ñание вÑех атрибутов, иÑпользуемых в
gEDA/gaf (GPL'd Electronic Design Automation / __g__schem __a__nd
__f__riends)((СÐПРÑлектроники под лицензией GPL / gschem и друзьÑ. ---
//Прим. перев.//)). Документ разбит на неÑколько разделов: Ð´Ð°Ð½Ð½Ð°Ñ Ð¾Ð±Ð·Ð¾Ñ€Ð½Ð°Ñ
чаÑть, атрибуты только Ð´Ð»Ñ [[geda:glossary.ru#Символ|Ñимволов]], атрибуты
только Ð´Ð»Ñ Ñхем, атрибуты Ð´Ð»Ñ Ñимволов и Ñхем, опиÑание уÑтаревших атрибутов
или атрибутов, иÑпользовать которые больше не рекомендуетÑÑ.\\ Далее в
наÑтоÑщем документе имена атрибутов выделены **жирным шрифтом**, примеры ---
''машинопиÑным''.
===== Что такое атрибуты? =====
Ðтрибуты в gEDA/gaf --- Ñто не что иное, как текÑтовые Ñлементы вида:
**имÑ_атрибута**=значение. Ð˜Ð¼Ñ Ð¼Ð¾Ð¶ÐµÑ‚ Ñодержать что угодно, за иÑключением
знака равенÑтва. Значение может также Ñодержать что угодно, но не может быть
пуÑтой Ñтрокой. **имÑ_атрибута**= (без значениÑ) не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым
атрибутом. Также не должно быть пробелов непоÑредÑтвенно до или поÑле знака
равенÑтва.\\ Ðтрибуты могут быть прикреплены к некоторой чаÑти Ñимвола. ЕÑли
атрибут неÑёт информацию, ÑпецифичеÑкую Ð´Ð»Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°, он должен быть
прикреплён непоÑредÑтвенно к Ñтому объекту, в противном Ñлучае он может быть
Ñвободным (плавающим, неприкреплённым). Свободные атрибуты проÑто находÑÑ‚ÑÑ
в файле Ñимвола как текÑтовые Ñлементы вида **имÑ_атрибута**=значение.
===== Ðтрибуты только Ð´Ð»Ñ Ñимволов =====
==== device ====
Ðтрибутом **device**= задаётÑÑ Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ðµ уÑтройÑтва в Ñимволе. Его нужно раÑположить где-нибудь в Ñимволе и Ñделать невидимым. Данный атрибут ÑвлÑетÑÑ Ñвободным. ЕÑли объект ÑвлÑетÑÑ Ð³Ñ€Ð°Ñ„Ð¸Ñ‡ÐµÑким, то атрибут **device**= должен иметь значение ''none'' (**device**=none), и в Ñимволе должен быть атрибут [[#graphical]]=. Ðе Ñледует путать данный атрибут Ñ Ð¿Ñ€Ð¾Ñтым текÑтовым обозначением уÑтройÑтва. Ðе Ñледует в названии уÑтройÑтва иÑпользовать пробелы, некоторым программам Ñто не нравитÑÑ. Как правило, название уÑтройÑтва указываетÑÑ Ð¿Ð¾Ð»Ð½Ð¾Ñтью пропиÑными буквами.\\ //Примеры://\\ ''device=7400\\ device=CONNECTOR_10\\ device=NPN_TRANSISTOR''
==== graphical ====
Ðаличие атрибута **graphical**=1 обÑзательно Ð´Ð»Ñ Ñимволов, не
предназначенных Ð´Ð»Ñ ÑлектричеÑких или ÑхемотехничеÑких целей. Такие Ñимволы,
как рамка оÑновной надпиÑи Ð´Ð»Ñ Ñ‡ÐµÑ€Ñ‚ÐµÐ¶ÐµÐ¹, ÑвлÑÑŽÑ‚ÑÑ Ñ‡Ð¸Ñто графичеÑкими. Любой
Ñимвол, имеющий **graphical**=1, игнорируетÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¾Ð¹ **gnetlist**.\\
ЧиÑто графичеÑкий Ñимвол должен Ñодержать невидимый атрибут
**graphical**=1. Данный атрибут ÑвлÑетÑÑ Ñвободным. При его наличии не
забудьте уÑтановить [[#device]]=none.\\
//Пример://\\
''graphical=1''
==== description ====
Ðтрибут **description**= задаёт проÑтое одноÑтрочное опиÑание того, какой
Ñимвол намеревалÑÑ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð·Ð¸Ñ‚ÑŒ автор.\\
//Примеры://\\
''description=4 NAND gates with 2 inputs''\\
''description=4x2И-ÐЕ''
==== author ====
Ðтрибут **author**= определÑет Ð¸Ð¼Ñ Ð°Ð²Ñ‚Ð¾Ñ€Ð° данного Ñимвола и его Ñлектронный
адреÑ. Данный атрибут ÑвлÑетÑÑ Ð½ÐµÐ¾Ð±Ñзательным, но порой проÑто приÑтно иметь
предÑтавление о том, кто какой Ñимвол Ñделал. Ещё он Ñлужит Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, чтобы
узнать, Ñ ÐºÐµÐ¼ можно ÑвÑзатьÑÑ, еÑли еÑть вопроÑÑ‹ о назначении
Ñимвола. Данный атрибут имеет Ñвободную форму и поÑтому может также
Ñодержать и имена изменÑвших Ñимвол людей, и множеÑтво Ñлектронных
адреÑов. Ещё может быть было бы неплохо как-то изменить адреÑ, чтобы он не
Ñтал жертвой Ñпама.\\
//Пример://\\
''author=Ales Hvezda ahvezdaATgeda.seul.org''
==== comment ====
Ðтрибут **comment**= может Ñодержать вÑÑ‘ что угодно. С его помощью может
передаватьÑÑ Ð»ÑŽÐ±Ð°Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ, которую Ð½ÐµÐ»ÑŒÐ·Ñ Ð²ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒ в
другие атрибуты. Ð’ Ñимволе может быть неÑколько ÑкземплÑров данного
атрибута.\\
//Пример://\\
''comment=Ðто комментарий внутри Ñимвола''
==== pinseq ====
Данный атрибут иÑпользуетÑÑ Ð´Ð»Ñ Ð·Ð°Ð´Ð°Ð½Ð¸Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¼Ñƒ выводу уникального
порÑдкового номера. Ðтрибуты **pinseq**=# должны быть прикреплены к каждому
из выводов. Их Ñледует Ñделать невидимыми. Данные атрибуты широко
иÑпользуютÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð°Ð¼Ð¸ **gschem** и **gnetlist**.\\ При работе некоторых
драйверов (оÑобенно драйвера SPICE) **gnetlist** выдаёт выводы в порÑдке
возраÑÑ‚Ð°Ð½Ð¸Ñ Ð¸Ñ… порÑдковых номеров. ПорÑдковые номера должны начинатьÑÑ Ñ 1
и поÑледовательно увеличиватьÑÑ, причём пропуÑкать их не допуÑкаетÑÑ. Данный
атрибут не ÑвлÑетÑÑ Ð½Ð¾Ð¼ÐµÑ€Ð¾Ð¼ вывода (Ñ‚. е. номером вывода компонента, как,
например, вывод GND имеет номер 7 Ð´Ð»Ñ Ð¼Ð½Ð¾Ð³Ð¸Ñ… TTL-микроÑхем). Ð”Ð»Ñ Ð½ÑƒÐ¼ÐµÑ€Ð°Ñ†Ð¸Ð¸
выводов Ñлужит атрибут [[#pinnumber]]=.\\
//Примеры://\\
''pinseq=1\\
pinseq=2\\
pinseq=3''
Данный атрибут замещает уÑтаревший **pin#**=#.
==== pinnumber ====
Ðтрибут **pinnumber**=# определÑет номер вывода компонента (как, например,
вывод GND имеет номер 7 Ð´Ð»Ñ TTL Ñерии 74). Он должен быть прикреплён к
каждому выводу.\\
Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ задаватьÑÑ Ñ†Ð¸Ñ„Ñ€Ð°Ð¼Ð¸ или буквами. Ðтрибут должен быть видимым,
причём видимым должно быть только значение. Также необходим атрибут
[[#pinseq]]=.\\
//Примеры://\\
''pinnumber=1\\
pinnumber=13\\
pinnumber=A0''
Данный атрибут замещает уÑтаревший **pin#**=#.
==== pintype ====
Ðтрибут **pintype**=значение должен быть прикреплён к каждому выводу. Его
Ñледует Ñделать невидимым. Ð’ таблице 1 приведены допуÑтимые Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾
атрибута.\\
Ðтрибут **pintype**= не очень широко применÑетÑÑ Ð² библиотеке Ñимволов, но
он иÑпользуетÑÑ Ð´Ð»Ñ [[geda:glossary.ru#Проверка ÑоответÑÑ‚Ð²Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð½Ñ‹Ð¼
нормам|проверки ÑоответÑÑ‚Ð²Ð¸Ñ Ð¿Ñ€Ð¾ÐµÐºÑ‚Ð½Ñ‹Ð¼ нормам]] (DRC) и Ð´Ð»Ñ ÑозданиÑ
[[geda:glossary.ru#СпиÑок Ñоединений|ÑпиÑков Ñоединений]]. ЕÑли никакой
другой тип Ð´Ð»Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð° не подходит, иÑпользуйте «паÑÑивный» («pas»).\\
//Примеры://\\
''pintype=clk\\
pintype=in\\
pintype=pas''
**Таблица 1:** Ð—Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð° pintype
| in | Input | Вход |
| out | Output | Выход |
| io | Input/Output | Вход/выход |
| oc | Open collector | Открытый коллектор |
| oe | Open emitter | Открытый Ñмиттер |
| pas | Passive | ПаÑÑивный |
| tp | Totem pole | ИдольÑкий Ñтолб((Ð¨ÑƒÑ‚Ð¾Ñ‡Ð½Ð°Ñ Ñ€Ð°Ñшифровка. Ðа Ñамом деле раÑшифровываетÑÑ ÐºÐ°Ðº «test pin/point» ([[geda:glossary.ru#ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ°]]/[[geda:glossary.ru#контрольный вывод]]). --- //Прим. перев.//)) |
| tri | Tristate (high impedance)| ТрёхÑтабильный, третье ÑоÑтоÑние --- выÑокоимпеданÑное |
| clk | Clock | Тактовый |
| pwr | Power/Ground | Питание/общий |
==== pinlabel ====
Ðтрибут **pinlabel**= уÑтанавливает метку вывода. Главным образом он нужен
программе **gnetlist** Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¸ иерархичеÑких проектов.\\
Данный атрибут нужно прикрепить к выводу и Ñделать видимым. Он должен быть
зелёного цвета (вмеÑто жёлтого, Ñтандартного цвета атрибутов).\\
//Примеры://\\
''pinlabel=A0\\
pinlabel=DATA1\\
pinlabel=CLK''
==== numslots ====
ЕÑли компонент Ñодержит неÑколько [[geda:glossary.ru#СекциÑ
компонента|Ñекций]] (Ñлементов) в одном физичеÑком корпуÑе (как, например,
7400, имеющий 4 логичеÑких Ñлемента 2И-ÐЕ в одном корпуÑе), то необходим
атрибут **numslots**=#. ЧиÑло # задаёт количеÑтво Ñлементов в физичеÑком
уÑтройÑтве. Ðтрибут **numslots**= нужно раÑположить где-нибудь в Ñимволе и
Ñделать невидимым. Данный атрибут ÑвлÑетÑÑ Ñвободным. ЕÑли Ñимволу не нужно
[[geda:glossary.ru#Ðазначение логичеÑких Ñекций|назначать Ñекции]], в файл
Ñимвола Ñледует помеÑтить **numslots**=0.\\
//Пример://\\
''numslots=4''
==== slotdef ====
ЕÑли компонент Ñлужит Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ [[geda:glossary.ru#МногоÑекционный
компонент|многоÑекционного прибора]], Ñодержащего неÑколько Ñекций в одном
физичеÑком корпуÑе, то Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ из Ñтих Ñекций необходимо задать атрибут
**slotdef**=номер_Ñекции:#,#,#... \\
ЧиÑло ''номер_Ñекции'' ÑоответÑтвует номеру Ñекции. Двоеточие поÑле номера
Ñекции обÑзательно. Ðапример, Ð´Ð»Ñ ÑƒÑтройÑтва, Ñодержащего 4 Ñекции, в Ñимвол
нужно было бы добавить атрибуты **slotdef**=1:..., **slotdef**=2:...,
**slotdef**=3:... и **slotdef**=4:... и Ñделать их невидимыми. Данный
атрибут ÑвлÑетÑÑ Ñвободным.\\
ЧиÑла # однозначно ÑоответÑтвуют значениÑм атрибутов [[#pinseq]]= и
определÑÑŽÑ‚ номера выводов [[#pinnumber]]=#, иÑпользуемые Ð´Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð½Ð°
Ñкране (в **gschem**) и Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑпиÑка Ñоединений (Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ
**gnetlist**).\\
Ð”Ð»Ñ Ð²Ñех Ñимволов, определÑющих неÑколько Ñекций, рекомендуетÑÑ Ð·Ð°Ð´Ð°Ð²Ð°Ñ‚ÑŒ
атрибут [[#slot]]=1, прикреплÑемый таким же образом, как и [[#device]]=.\\
См. Ñимвол 7400-1.sym как пример реального Ð¿Ñ€Ð¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ **slotdef**=.\\
//Примеры://\\
''slotdef=1:1,2,3\\
slotdef=2:4,5,6\\
slotdef=3:7,8,9''
Данный атрибут замещает уÑтаревший **slot**#=#.
==== footprint ====
Ðтрибут **footprint**=название_корпуÑа нужно раÑположить где-нибудь в Ñимволе и Ñделать невидимым. Он иÑпользуетÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¾Ð¹ **gnetlist** и главным образом Ð´Ð»Ñ Ð¿Ð°ÐºÐµÑ‚Ð° **pcb**.\\
Ðтрибут прикреплÑетÑÑ Ñ‚Ð°ÐºÐ¸Ð¼ же образом, как и [[#device]]=. Он ÑвлÑетÑÑ Ñвободным.\\
''название_корпуÑа'' определÑет поÑадочное меÑто Ð´Ð»Ñ **pcb** или типоразмер корпуÑа, как, например, DIP14 или DIP40. Ð¥Ð¾Ñ‚Ñ Ð² принципе Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ атрибута завиÑÑÑ‚ от пакета **pcb**, в gEDA/gaf ÑущеÑтвуют ÑÐ¾Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð¾ том, чтобы делать их как можно лучше переноÑимыми Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð¾ÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñм возможноÑтей удобного ÑотрудничеÑтва и ÑовмеÑтного иÑпользованиÑ. См. [[gEDA:pcb_footprint_naming_conventions.ru|Ð¡Ð¾Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð¿Ð¾ именованию поÑадочных меÑÑ‚]].\\
ЕÑли Ð´Ð»Ñ Ñимвола поÑадочное меÑто не нужно или еÑли оно должно переопределÑтьÑÑ Ð² Ñхеме, Ñледует уÑтановить **footprint**=none. ЕÑли название поÑадочного меÑта неизвеÑтно, Ñледует уÑтановить **footprint**=unknown.
==== documentation ====
Ðтрибут **documentation**=ÑÑылка_на_документацию можно раÑположить где-нибудь в Ñимволе и Ñделать невидимым. Данный атрибут иÑпользуетÑÑ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¾Ð¹ **gschemdoc** Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка подходÑщей документации по Ñимволу, или, вернее, по уÑтройÑтву или компоненту, определÑемому данным Ñимволом.\\
Ðтрибут прикреплÑетÑÑ Ñ‚Ð°ÐºÐ¸Ð¼ же образом, как и [[#device]]=. Он ÑвлÑетÑÑ Ñвободным.\\
''ÑÑылка_на_документацию'' определÑет либо Ð¸Ð¼Ñ Ð¾Ñновного файла документации, либо полный интернет-адреÑ. ЕÑли в атрибуте задано Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°, программа попытаетÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ его в локальном каталоге //''documentation''// пакета gEDA.\\
//Пример имени файла://\\
''documentation=sn74ls00.pdf''\\
//Пример интернет-адреÑа://\\
''%%documentation=http://www-s.ti.com/sc/ds/sn74ls00.pdf%%''
===== Ðтрибуты только Ð´Ð»Ñ Ñхем =====
==== netname ====
Ðтрибут **netname**= должен прикреплÑтьÑÑ Ðº объекту
<<[[geda:glossary.ru#Ñоединение]]>> Ð´Ð»Ñ ÑƒÑтановки его имени. Крайне не
рекомендуетÑÑ Ð¸Ñпользовать разные имена Ð´Ð»Ñ ÑвÑзанных Ñегментов
Ñоединений. Одинаково названные ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÑчитаютÑÑ ÑлектричеÑки замкнутыми
между Ñобой. ÐедопуÑтимо иÑпользовать данный атрибут внутри Ñимволов (так
как внутри Ñимволов ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¸Ñпользовать нельзÑ).\\
//Примеры://\\
''netname=DATA0 H\\
netname=CLK L''
==== source ====
Ðтрибут **source**= указывает, что Ñимвол ÑвлÑетÑÑ Ð¿Ñ€ÐµÐ´Ñтавлением
[[geda:glossary.ru#ПодÑхема|подÑхемы]]. Он прикреплÑетÑÑ Ð½ÐµÐ¿Ð¾ÑредÑтвенно к
Ñимволу компонента.\\
Данный атрибут должен прикреплÑтьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ к ÑкземплÑрам Ñимволов
компонентов в Ñхеме. Ðтрибут Ñледует прикрепить к Ñимволу и задать значение
в виде имени файла подÑхемы (например, ''block.sch''), но не полного пути
доÑтупа. Указанный файл подÑхемы должен находитьÑÑ Ð² одном из каталогов,
перечиÑленных Ñреди путей доÑтупа к [[gEDA:glossary.ru#Библиотека иÑходных
данных|библиотекам иÑходных данных]]. Можно прикреплÑть неÑколько таких
атрибутов Ñ Ñ€Ð°Ð·Ð»Ð¸Ñ‡Ð½Ñ‹Ð¼Ð¸ значениÑми, что, по ÑущеÑтву, означает, что подÑхема
предÑтавлÑет Ñобой набор из неÑкольких ÑвÑзанных между Ñобой Ñхем.\\
//Примеры://\\
''source=underlying.sch\\
source=memory.sch''
===== Ðтрибуты Ð´Ð»Ñ Ñимволов и Ñхем =====
==== refdes ====
Ðтрибут **refdes**= определÑет позиционное обозначение конкретного
ÑкземплÑра компонента в Ñхеме. Данный атрибут должен быть у КÐЖДОГО
компонента, имеющего какой-либо ÑлектричеÑкий ÑмыÑл. Ð”Ð»Ñ ÑƒÑтановки
позиционного обозначениÑ, иÑпользуемого Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ‚Ð° по умолчанию (такого
как 'U?', например), данный атрибут может задаватьÑÑ Ð½ÐµÐ¿Ð¾ÑредÑтвенно в
Ñимволе (и еÑли он видим, то при помещении Ñимвола в Ñхему будет вынеÑен, то
еÑть прикреплён вне Ñимвола).\\
//Примеры://\\
''refdes=U1\\
refdes=R10\\
refdes=CONN1''
=== ÐžÐ³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿Ð¾Ð·Ð¸Ñ†Ð¸Ð¾Ð½Ð½Ñ‹Ñ… обозначений ===
Ð’ качеÑтве Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð° **refdes**= **gschem** принимает любые
Ñтроки. Ðо некоторые драйверы **gnetlist** накладывают Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð½Ð°
допуÑтимый ÑинтакÑиÑ.
Ð’ чаÑтноÑти [[geda:faq-gsch2pcb.ru|gsch2pcb]] требует:
* Ðе должно быть пробелов.
* Ðе должно быть дефиÑов. Ðто может привеÑти к Ñбою интерпретатора макроÑзыка M4, потенциально иÑпользуемого Ð´Ð»Ñ Ð³ÐµÐ½ÐµÑ€Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ñадочных меÑÑ‚. Символ Ð¿Ð¾Ð´Ñ‡Ñ‘Ñ€ÐºÐ¸Ð²Ð°Ð½Ð¸Ñ Â«_» допуÑтим.
* Любой ÑÑƒÑ„Ñ„Ð¸ÐºÑ Ð¸Ð· Ñтрочных букв игнорируетÑÑ. Таким образом в Ñхему можно добавить 4 диÑкретных Ñлемента И-ÐЕ Ñ Ð¾Ð±Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñми ''U1a'', ''U1b'', ''U1c'' и ''U1d''. При Ñоздании ÑпиÑка Ñоединений они будут отноÑитьÑÑ Ðº одному поÑадочному меÑту Ñ Ð½Ð°Ð·Ð²Ð°Ð½Ð¸ÐµÐ¼ ''U1''.
* Символы, не входÑщие в [[geda:glossary.ru#ASCII]], такие как, например, üöäß, не выводÑÑ‚ÑÑ Ð² **pcb**.
=== Ð¡Ð¾Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð¿Ð¾ позиционным обозначениÑм ===
СущеÑтвует Ñоглашение о применÑемых позиционных обозначениÑÑ… Ð´Ð»Ñ Ñ€Ð°Ð·Ð½Ñ‹Ñ… типов компонентов. ЗдеÑÑŒ приведены некоторые из них((Данные ÑÐ¾Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð² Ñ€Ñде Ñлучаев не ÑоответÑтвуют отечеÑтвенным Ñтандартам, Ñм. ГОСТ 2.710-81. --- //Прим. перев.//)) (''?'' заменÑетÑÑ Ñ‡Ð¸Ñлом):
^ Обозначение ^ Тип компонента ^
| R? |РезиÑтор|
| RN? |Ðабор резиÑторов|
| FB? |Ферритовый фильтр |
| L? |Катушка индуктивноÑти, дроÑÑель|
| C? |КонденÑатор|
| B? |БатареÑ|
| F? |Предохранитель|
| J? |Соединитель, разъём |
| P? |Соединитель, разъём (обычно ÑопрÑгаемый Ñ Ð¾Ð±Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ‹Ð¼ как J?)|
| K? |Реле|
| S? |Выключатель, переключатель|
| T? |ТранÑформатор|
| TP? |ÐšÐ¾Ð½Ñ‚Ñ€Ð¾Ð»ÑŒÐ½Ð°Ñ Ñ‚Ð¾Ñ‡ÐºÐ°|
| M? |Двигатель|
| D? |Диод|
| Q? |ТранзиÑтор|
| U? |ИС (Ð¸Ð½Ñ‚ÐµÐ³Ñ€Ð°Ð»ÑŒÐ½Ð°Ñ Ñхема)|
| X? |Кварцевый оÑциллÑтор|
==== slot ====
Ðтрибут **slot**= иÑпользуетÑÑ Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° конкретного уÑтройÑтва (Ñекции) в
[[geda:glossary.ru#МногоÑекционный компонент|многоÑекционном приборе]]. Ð’
Ñхеме он должен прикреплÑтьÑÑ Ðº ÑкземплÑру Ñимвола компонента. Ð”Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð°
Ñекции по умолчанию данный атрибут может задаватьÑÑ Ð² Ñимволе (и еÑли он
видим, то при помещении Ñимвола в Ñхему будет вынеÑен, то еÑть прикреплён
вне Ñимвола).
==== net ====
Ðтрибут **net**= иÑпользуетÑÑ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñоединений Ð¿Ð¸Ñ‚Ð°Ð½Ð¸Ñ Ð¸ Ñпециальных
целей. ПодробноÑти Ñм. в [[gEDA:na_howto.ru|Мини-HOWTO по атрибуту
net=]]. ЕÑли данный атрибут находитÑÑ Ð² Ñимволе, он иÑпользуетÑÑ Ð´Ð»Ñ
ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñоединений. ЕÑли же он прикреплÑетÑÑ Ðº ÑкземплÑру компонента в
Ñхеме, то может иÑпользоватьÑÑ Ñ‚Ð°ÐºÐ¶Ðµ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ñ‹Ñ… Ñоединений и
Ð¿ÐµÑ€ÐµÐ¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ ÑƒÐ¶Ðµ ÑущеÑтвующих.
==== value ====
Ðтрибут **value**= в оÑновном иÑпользуетÑÑ Ð² драйвере
[[geda:glossary.ru#Генератор ÑпиÑка Ñоединений|генератора ÑпиÑка
Ñоединений]] Ð´Ð»Ñ SPICE Ñ Ñ†ÐµÐ»ÑŒÑŽ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ð¹ различных Ñлементов. Он
не переводитÑÑ Ð¸ помещаетÑÑ Ð² ÑпиÑок Ñоединений как еÑть.\\
//Примеры://\\
''value=1K\\
value=10V''
==== symversion ====
Ðтрибут **symversion**= иÑпользуетÑÑ Ð´Ð»Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð²ÐµÑ€Ñии Ñодержимого
Ñимвола. Так как по умолчанию Ñимволы в Ñхему не внедрÑÑŽÑ‚ÑÑ, а приводитÑÑ
лишь ÑÑылка на них, то в Ñхеме, иÑпользующей какой-либо конкретный Ñимвол,
при изменении файла Ñтого Ñимвола могут возникнуть проблемы. Ðапример,
изменение раÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð¾Ð² в Ñимволе приведёт к тому, что линии
Ñоединений в Ñхеме уже не будут подключены к надлежащим выводам. Ðтрибут
**symversion**= позволÑет отÑлеживать такие разрушительные Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð²
Ñимволах и уведомлÑть Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¾ потенциальных проблемах при загрузке
Ñхемы.
Данный атрибут необÑзателен, но при наличии в Ñимволе он должен принимать
Ñледующую форму:\\
**Ñтарший_номер.младший_номер**,\\
где ''Ñтарший_номер'' и ''младший_номер'' --- целые чиÑла. Старший номер при
вводе новой верÑии инкрементируетÑÑ((УвеличиваетÑÑ Ð½Ð° 1. ---
//Прим. перев.//)) в Ñлучае таких изменений в Ñимволе, которые могут
привеÑти к порче ÑущеÑтвующих Ñхем, иÑпользующих предыдущие верÑии
Ñимвола. Младший номер инкрементируетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ в Ñлучае небольших изменений
(изменений, не приводÑщих к порче ÑущеÑтвующих Ñхем, таких как коÑметичеÑкие
Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ Ñохранении Ñтруктуры, то еÑть Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð¾Ð²).
ЕÑли Ñимвол, Ñодержащий данный атрибут, помещаетÑÑ Ð² Ñхему, атрибут
**symversion**= автоматичеÑки «выноÑитÑÑ», то еÑть Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ ÑкземплÑра
Ñимвола ÐºÐ¾Ð¿Ð¸Ñ Ð°Ñ‚Ñ€Ð¸Ð±ÑƒÑ‚Ð° **symversion**=M.N ÑохранÑетÑÑ Ð½ÐµÐ¿Ð¾ÑредÑтвенно в
файле Ñхемы. При загрузке Ñимвола Ñ Ð´Ð¸Ñка значение атрибута **symversion**=
в файле Ñимвола (при его наличии) ÑравниваетÑÑ Ñо значением атрибута,
прикреплённого к ÑкземплÑру Ñимвола в Ñхеме. ЕÑли Ñти Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ñ€Ð°Ð·Ð»Ð¸Ñ‡Ð°ÑŽÑ‚ÑÑ,
то **libgeda** выдаÑÑ‚ предупреждение (при изменении младшего номера верÑии)
или ошибку (при изменении Ñтаршего номера верÑии).
Обычно при помещении данного атрибута в файл Ñимвола его лучше Ñделать
невидимым. ЕÑли при добавлении Ñимвола в Ñхему в нём найден Ñтот атрибут, то
он вÑегда выноÑитÑÑ. Ðе Ñледует прикреплÑть данный атрибут к имеющимÑÑ Ð²
Ñхеме ÑкземплÑрам Ñимволов вручную.\\
//Примеры: //\\
''symversion=1.1\\
symversion=2.0''
==== dist-license ====
Ðтрибут **dist-license**= иÑпользуетÑÑ Ð´Ð»Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð»Ð¸Ñ†ÐµÐ½Ð·Ð¸Ð¸, под которой
раÑпроÑтранÑетÑÑ Ñимвол или Ñхема. Ð’ нём должна задаватьÑÑ Ð¸Ð·Ð²ÐµÑтнаÑ
лицензиÑ. Вот неÑколько примеров его возможных значений: ''GPL'', ''GPL
version 2 only'', ''GPL version 3 only'', ''public domain'', ''Apache
version 2'', ''Modified BSD'', ''X11'' и т. д.\\
\\
Перечни ÑущеÑтвующих лицензий можно найти по Ñледующим адреÑам:
[[http://www.gnu.org/philosophy/license-list.html|Перечень лицензий FSF]] и
[[http://www.opensource.org/licenses/category|Перечень лицензий OSI]].
==== use-license ====
Ðтрибут **use-license**= иÑпользуетÑÑ Ð´Ð»Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ Ð»Ð¸Ñ†ÐµÐ½Ð·Ð¸Ð¸, определÑющей,
как другие пользователи могут иÑпользовать данный Ñимвол или данную Ñхему в
Ñвоих Ñхемах и платах. Вот примеры его значений: ''unlimited''
(неограниченнаÑ), ''personal use only'' (только Ð´Ð»Ñ Ð»Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ пользованиÑ),
''not for sale'' (не Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð°Ð¶Ð¸) и Ñ‚. д.\\
\\
FIXME: добавить Ñюда набор примеров получше.
===== УÑтаревшие атрибуты =====
==== uref ====
Ðтрибут **uref=** уÑтарел и иÑпользоватьÑÑ Ð½Ðµ должен. Он применÑлÑÑ Ð´Ð»Ñ Ñ‚ÐµÑ…
же целей, что и [[#refdes]]=.
==== name ====
Ðтрибут **name**= не должен ни иÑпользоватьÑÑ Ð² Ñимволе, ни прикреплÑтьÑÑ Ð²
Ñхеме. СчитаетÑÑ, что такое название атрибута неоднозначно. Данный атрибут
никогда не иÑпользовалÑÑ Ð² gEDA/gaf.
==== label ====
Ðтрибут **label**= уÑтарел и иÑпользоватьÑÑ Ð½Ðµ должен. Он применÑлÑÑ Ð´Ð»Ñ
Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ð¹/меток Ñоединений и меток выводов. Теперь Ñти функции
выполнÑÑŽÑ‚ ÑоответÑтвенно атрибуты [[#netname]]= и [[#pinlabel]]=.
==== pin# ====
Ðтрибут **pin#**=# уÑтарел и иÑпользоватьÑÑ Ð½Ðµ должен. Он применÑлÑÑ Ð´Ð»Ñ
Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñ€Ñдковых номеров выводов в Ñимволе и номеров выводов длÑ
компонента. Теперь Ñти функции выполнÑÑŽÑ‚ ÑоответÑтвенно [[#pinseq]]= и
[[#pinnumber]]=.
==== slot# ====
Ðтрибут **slot#**=# уÑтарел и иÑпользоватьÑÑ Ð½Ðµ должен. Ранее в нём
предоÑтавлÑлаÑÑŒ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ [[geda:glossary.ru#Ðазначение логичеÑких
Ñекций|назначении Ñекций]] компонентов. Теперь Ñту функцию выполнÑет атрибут
[[#slotdef]]=.
==== type ====
Ðтрибут **type**= уÑтарел и иÑпользоватьÑÑ Ð½Ðµ должен. Он применÑлÑÑ Ð´Ð»Ñ
уÑтановки типа выводов. Теперь Ñту функцию выполнÑет атрибут [[#pintype]]=.
==== email ====
Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¸Ð· данного атрибута вынеÑена в атрибут [[#author]]=.
===== ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ документа =====
| 14 Ð¸ÑŽÐ»Ñ 2002 г. | Создан attributes.tex из attributes.txt. |
| 14 Ð¸ÑŽÐ»Ñ 2002 г. | Документ обновлён Ð´Ð»Ñ Ñинхронизации Ñ post-20020527. |
| 25 авгуÑта 2002 г. | Добавлен уÑтаревший атрибут type=. |
| 14 ÑентÑÐ±Ñ€Ñ 2002 г. | Добавлен атрибут description=. Ðебольшие иÑÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ |
| 7 октÑÐ±Ñ€Ñ 2002 г. | Добавлен атрибут doc=; Egil Kvaleberg. |
| 11 Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ 2003 г. | Добавлена ÑÑылка на ÑÐ¾Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð¿Ð¾ поÑадочным меÑтам. |
| 23 Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ 2003 г. | Добавлены атрибуты author=, email=, и comment=. |
| 6 Ð¸ÑŽÐ»Ñ 2004 г. | Добавлен атрибут symversion=. |
| 10 Ð¸ÑŽÐ»Ñ 2007 г. | Добавлены атрибуты dist-license= и use-license=. |