1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <link rel=
"stylesheet" media=
"screen" type=
"text/css" href=
"./style.css" />
6 <link rel=
"stylesheet" media=
"screen" type=
"text/css" href=
"./design.css" />
7 <link rel=
"stylesheet" media=
"print" type=
"text/css" href=
"./print.css" />
9 <meta http-equiv=
"Content-Type" content=
"text/html; charset=utf-8" />
14 <em>Эта страница доступна также на следующих языках:
</em>
15 <a href=
"geda-tragesym_tutorial.html" class=
"wikilink1" title=
"geda-tragesym_tutorial.html">English
</a>,
<a href=
"geda-tragesym_tutorial.fr.html" class=
"wikilink1" title=
"geda-tragesym_tutorial.fr.html">Français
</a>.
18 <h1 id=
"быстроеилёгкоесозданиесимволовgschemспомощьюtragesymипрограммыработысэлектроннымитаблицами">Быстрое и лёгкое создание символов gschem с помощью tragesym и программы работы с электронными таблицами
</h1>
22 Создание
<a href=
"geda-glossary.ru.html#символ" class=
"wikilink1" title=
"geda-glossary.ru.html">символов
</a> для
23 <a href=
"geda-glossary.ru.html#принципиальнаясхема" class=
"wikilink1" title=
"geda-glossary.ru.html">принципиальных схем
</a> отнимает очень
24 много времени, чревато ошибками и вообще неимоверно мучительно. К счастью,
25 <strong>gschem
</strong> использует открытый текстовый формат файлов, легко поддающийся
26 скриптовой обработке. В этом кратком руководстве приводится описание того,
27 как с помощью скрипта
<strong>tragesym
</strong> очень быстро создать символ (может быть
28 гораздо быстрее, чем в любом из коммерческих пакетов).
33 <h2 id=
"необходимыешаги">Необходимые шаги
</h2>
36 <li class=
"level1"><div class=
"li"> Шаг
1: Открытие файла шаблона
<strong>tragesym
</strong></div>
38 <li class=
"level1"><div class=
"li"> Шаг
2: Загрузка спецификации устройства и поиск цоколёвки с перечнем выводов
</div>
40 <li class=
"level1"><div class=
"li"> Шаг
3: Копирование перечня выводов в редактор и его обработка
</div>
42 <li class=
"level1"><div class=
"li"> Шаг
4: Добавление недостающих данных в электронную таблицу
</div>
44 <li class=
"level1"><div class=
"li"> Шаг
5: Экспорт электронной таблицы в отдельный текстовый файл
</div>
46 <li class=
"level1"><div class=
"li"> Шаг
6: Запуск
<strong>tragesym
</strong> для создания символа
</div>
48 <li class=
"level1"><div class=
"li"> Шаг
7: Проверка результата в
<strong>gschem
</strong> и небольшая доводка
</div>
54 <h2 id=
"шаг1открытиефайлашаблонаtragesym">Шаг
1: Открытие файла шаблона tragesym
</h2>
58 В
<strong>tragesym
</strong> входят два файла-шаблона. Один --- в
<a href=
"media/tragesym/template2.txt.src" class=
"media" target=
"_blank" title=
"tragesym:template2.txt.src">текстовом варианте
</a>, второй --- в виде
<a href=
"media/tragesym/template2.ods" class=
"media" target=
"_blank" title=
"tragesym:template2.ods">электронной таблицы OpenOffice
</a>. Также их можно найти в пакете gEDA-утилит (
<em><code>utils/examples/tragesym/template.src
</code></em> и
<em><code>utils/examples/tragesym/template.ods
</code></em>).
59 Если вы предпочитаете другую программу работы с электронными таблицами, например
<strong>gnumerik
</strong> или
<strong>kspread
</strong>, то просто создайте свой собственный шаблон из текстового шаблона. Единственное различие между текстовым шаблоном и шаблоном в виде электронной таблицы --- синтаксис пар «ключ-значение» в разделах
<code>[options]
</code> и
<code>[geda_attr]
</code>. В текстовом файле они разделены знаком равенства (
<code>ключ=значение
</code>), в электронной таблице значение находится во втором столбце (что даёт разделитель в виде знака табуляции при экспорте).
64 <h2 id=
"шаг2загрузкаспецификацииустройстваипоискцоколёвкисперечнемвыводов">Шаг
2: Загрузка спецификации устройства и поиск цоколёвки с перечнем выводов
</h2>
68 В данном примере мы создадим символ для
<em>Philips Semiconductor PCA9555
69 16-bit IIC IO port
</em>. Описание продукта и спецификация доступны на сайте
71 http://www-us.semiconductors.philips.com/cgi-bin/pldb/pip/pca9555.html.
72 Загрузите спецификацию и откройте её в программе просмотра PDF, которая
73 позволяет копировать текст из pdf-файла, такой как
<strong>kpdf
</strong> или
74 <strong>acroread
</strong>. Пролистайте страницы, пока не найдёте
75 <a href=
"geda-glossary.ru.html#цоколёвка" class=
"wikilink1" title=
"geda-glossary.ru.html">цоколёвку
</a> устройства:
79 <a href=
"media/tragesym/kpdf_pinconfiguration.png" class=
"media" target=
"_blank" title=
"tragesym:kpdf_pinconfiguration.png">kpdf_pinconfiguration.png
</a>
80 <a href=
"media/tragesym/acroread_selectiontable.png" class=
"media" target=
"_blank" title=
"tragesym:acroread_selectiontable.png">acroread_selectiontable.png
</a>
84 Перечень выводов в спецификации может находиться только на изображении
85 конфигурации выводов («Pin configuration» на первом рисунке). Если же
86 имеется подробная таблица (второй рисунок из другой спецификации),
92 <h2 id=
"шаг3копированиеперечнявыводоввредакториегообработка">Шаг
3: Копирование перечня выводов в редактор и его обработка
</h2>
96 Выделите перечень выводов и скопируйте его в текстовый редактор. Этот
97 промежуточный шаг необходим, поскольку вашей программе работы с электронными
98 таблицами может понадобиться специальный разделитель полей, такой как,
99 например, запятая или знак табуляции.
103 <strong>Примечание:
</strong> поведение программ
<strong>kpdf
</strong> и
<strong>acroread
</strong> при выделении различается. Программа
<strong>kpdf
</strong>, кажется, создаёт копию, более похожую на графическое представление, в то время как
<strong>acroread
</strong> производит вывод, более ориентированный на «последовательность внутри файла». Если вам нужно создать много символов, попробуйте обе программы и сравните результаты.
107 <a href=
"media/tragesym/xemacs_rawselection.png" class=
"media" target=
"_blank" title=
"tragesym:xemacs_rawselection.png">xemacs_rawselection.png
</a>
108 <a href=
"media/tragesym/xemacs_modifiedselection.png" class=
"media" target=
"_blank" title=
"tragesym:xemacs_modifiedselection.png">xemacs_modifiedselection.png
</a>
109 <a href=
"media/tragesym/ooo_selection.png" class=
"media" target=
"_blank" title=
"tragesym:ooo_selection.png">ooo_selection.png
</a>
113 Представленные выше рисунки иллюстрируют шаги:
116 <li class=
"level1"><div class=
"li"> вставка выделения из программы просмотра PDF в текстовый редактор;
</div>
118 <li class=
"level1 node"><div class=
"li"> изменение перечня выводов на радость программе работы с электронными таблицами:
</div>
120 <li class=
"level2"><div class=
"li"> вырезание списка выводов с
24 по
13 с помощью прямоугольного выделения;
</div>
122 <li class=
"level2"><div class=
"li"> вставка прямоугольного выделения после вывода
12;
</div>
124 <li class=
"level2"><div class=
"li"> сортировка строк (
<strong>xemacs
</strong> это умеет ;-) )
</div>
126 <li class=
"level2"><div class=
"li"> удаление или исправление строк с номерами
2,
3,... Их части оказались в разных строках. Номера выводов можно легко воссоздать позже;
</div>
128 <li class=
"level2"><div class=
"li"> замещение пробелов символами табуляции (нет особой нужды, если используется
<strong>OpenOffice
</strong>);
</div>
132 <li class=
"level1"><div class=
"li"> копирование отредактированных данных куда-то в конец шаблона электронной таблицы.
</div>
138 <h2 id=
"шаг4добавлениенедостающихданныхвэлектроннуютаблицу">Шаг
4: Добавление недостающих данных в электронную таблицу
</h2>
142 Теперь переместите метки выводов в столбец меток (label) и номера выводов в
143 столбец номеров выводов (pinnr). Для создания номеров выводов можно также
144 использовать возможность автозаполнения своей программы работы с
145 электронными таблицами.
149 <a href=
"media/tragesym/ooo_rearanged.png" class=
"media" target=
"_blank" title=
"tragesym:ooo_rearanged.png">ooo_rearanged.png
</a>
153 Установите в столбцах тип (type), стиль (style) и позиция (posit.) наиболее
154 общие значения. Снова можно использовать возможность автозаполнения.
158 Теперь вам нужно изменить некоторые значения. Взгляните на таблицу описания
159 выводов в спецификации:
163 <a href=
"media/tragesym/kpdf_pindescription.png" class=
"media" target=
"_blank" title=
"tragesym:kpdf_pindescription.png">kpdf_pindescription.png
</a>
167 В соответствии с этой таблицей изменяем следующее (см. результат ниже):
170 <li class=
"level1"><div class=
"li"> вывод
1 --- выход, мы хотим иметь признаки отрицания --- кружок у вывода и черту над его меткой;
</div>
172 <li class=
"level1"><div class=
"li"> A1 -- A3 --- входы, изменяем тип и перемещаем их на левую сторону;
</div>
174 <li class=
"level1"><div class=
"li"> устанавливаем выводу SCL тип
"in
" (вход) и перемещаем SCL и SDA также влево;
</div>
176 <li class=
"level1"><div class=
"li"> изменяем тип выводов питания VSS и VDD и добавляем имена соединений. Мы используем более привычные GND и Vcc.
</div>
181 <strong>Примечание:
</strong> если одна из меток ваших выводов имеет внутри обратную косую черту
"\
", её необходимо заменить управляющей последовательностью
"\\
".
185 <a href=
"media/tragesym/ooo_changedpins.png" class=
"media" target=
"_blank" title=
"tragesym:ooo_changedpins.png">ooo_changedpins.png
</a>
189 Прежде чем продолжить, задайте надлежащие значения атрибутам (geda_attr) и
194 <a href=
"media/tragesym/ooo_attributes.png" class=
"media" target=
"_blank" title=
"tragesym:ooo_attributes.png">ooo_attributes.png
</a>
199 <h2 id=
"шаг5экспортэлектроннойтаблицывотдельныйтекстовыйфайл">Шаг
5: Экспорт электронной таблицы в отдельный текстовый файл
</h2>
203 Можно либо использовать функцию экспорта своей программы работы с
204 электронными таблицами, либо просто выделить таблицу и скопировать
205 содержимое в свой любимый текстовый редактор и сохранить файл.
210 <h2 id=
"шаг6запускtragesymдлясозданиясимвола">Шаг
6: Запуск tragesym для создания символа
</h2>
214 Запустите
<strong>tragesym
</strong> в оболочке
<sup><a href=
"#fn__28" id=
"fnt__28" class=
"fn_top">28)
</a></sup>:
216 <pre class=
"code">werner@werner-amd64:~/Desktop/tragesym_tutorial
> tragesym pca555.src
</pre>
223 Если
<strong>tragesym
</strong> выдаёт сообщения об ошибках, поправьте электронную таблицу
224 и снова выполните экспорт, либо просто отредактируйте файл, полученный в
225 результате экспорта ранее.
230 <h2 id=
"шаг7проверкарезультатавgschemинебольшаядоводка">Шаг
7: Проверка результата в gschem и небольшая доводка
</h2>
234 Теперь откройте созданный символ в
<strong>gschem
</strong> и проверьте результат
236 <pre class=
"code">werner@werner-amd64:~/Desktop/tragesym_tutorial
> gschem pca555.sch
</pre>
239 Разрешив скрытый текст (нажав «en» или выбрав из меню
240 <strong><em>Правка-
>Показать/скрыть невидимый текст
</em></strong>), можно увидеть
241 сгенерированный символ полностью. Вовсе не обязательно что-либо менять, но
242 небольшая перестановка выводов может немного улучшить вид символа.
246 <a href=
"media/tragesym/gschem_showhidden.png" class=
"media" target=
"_blank" title=
"tragesym:gschem_showhidden.png">gschem_showhidden.png
</a>
247 <a href=
"media/tragesym/gschem_finished.png" class=
"media" target=
"_blank" title=
"tragesym:gschem_finished.png">gschem_finished.png
</a>
251 Теперь символ готов. Его можно скопировать в свою локальную библиотеку
252 символов, например
<em><code>/usr/local/share/gEDA/sym/local/
</code></em>, и использовать
258 <h2 id=
"заключение">Заключение
</h2>
262 В простом примере, приведённом выше, используется не очень много выводов,
263 данный же метод окупается с лихвой, когда выводов очень много (как,
264 например, в bga-
272, tfqp-
100, и т. д.).
269 <h2 id=
"благодарности">Благодарности
</h2>
273 Большое спасибо
<Russ.Dill(AT)asu.edu
>, который написал первую версию
274 настоящего руководства. Эту версию можно найти на странице
275 http://www-mdp.eng.cam.ac.uk/web/CD/engapps/geda/geda-doc/tutorials/tragesym/tragesym.html.
279 <div class=
"footnotes">
280 <div class=
"fn"><sup><a href=
"#fnt__28" id=
"fn__28" class=
"fn_bot">28)
</a></sup>
281 <div class=
"content">Автор использует для символа расширение
282 <em><code>.sch
</code></em>, на самом деле принято использовать
<em><code>.sym
</code></em>. ---
<em>Прим.
283 перев.
</em></div></div>