Перейти к содержанию
    

Модернизация скрипта переключения между сетками

Здравствуйте господа.

В процессе работы в Аллегро часто приходится менять сетку.

Для удобства пользуюсь скриптами, которые в этой ветке любезно поделился Uree.

Однако, для себя я решил что процедуру их вызова и использования можно сделать удобнее.

Но т.к. в программировании слабоват, есть одна трудность....

 

Как организовано переключение между сетками сейчас:

В файле env назначил горячие клавиши

alias CF9 replay grid_01

alias CF10 replay grid_1

и т.д.

 

Данные горячие клавиши вызывают скрипты .scr содержание которых следующее:

 

# Allegro script

# file: E:/_IKra/M22_ADBA/DESIGN/MAIN/work/worklib/silver_grove/physical/grid_01.scr

# start time: Fri Jul 02 11:08:21 2010

# Version: 16.3 S011 (v16-3-85AN) i86

version 16.6

 

define grid

setwindow form.grid

FORM grid non_etch non_etch_x_grids .01

FORM grid non_etch non_etch_y_grids .01

FORM grid all_etch all_etch_x_grids .01

FORM grid all_etch all_etch_y_grids .01

FORM grid done

 

# stop time: Fri Jul 02 11:09:09 2010

 

Хочу освободить горячие клавиши, для этого назначить все переключения сетки на одну допустим CF9. Чтобы при повторном нажатии на CF9 вызывалась следующая по порядку сетка (перебераем по очереди пока не установится нужная).

На подобии такого примера:

funckey w 'settoggle width 0.15 0.2 0.25 0.35 0.5 0.75 1.0; echo "Using width"$width; options acon_line_width $width' (перебор различной толщины дороги при повторных нажатиях W)

 

Возможно ли такое сделать?

Как проще:

1. Изменять файл env, чтобы при повторном нажатии CF9 вызывался следующий скрипт .scr

2. Или править сам скрипт, задавая grid all_etch all_etch_y_grids .01 как переменную.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня вызывались скрипты - т.е. вариант 1. Могу попробовать поискать свои готовые скрипты, но это будет не раньше чем завтра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня вызывались скрипты - т.е. вариант 1. Могу попробовать поискать свои готовые скрипты, но это будет не раньше чем завтра.

 

Конечно посмотрите, хоть какой то пример для меня будет! =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашел у себя, но только половину :(. Вот файл переключающий сетку (их должно быть несколько). А скрипт который вызывает эти файлы я найти не смог...

Нашел!!!1111100

вот пример файла "set_grid_1"

# Allegro script
version 16.3
setwindow pcb
trapsize 456
define grid 
setwindow form.grid
FORM grid non_etch non_etch_x_grids 0.1
FORM grid non_etch non_etch_y_grids 0.1 
FORM grid all_etch all_etch_x_grids 0.1 0.1 0.1 0.1 0.1 
FORM grid all_etch all_etch_y_grids 0.1 0.1 0.1 0.1 0.1 
FORM grid done  
setwindow pcb

 

Вот кусок файла с вызовом быстрой клавишей

alias CF10   'settoggle scr set_grid_1 set_grid_2 set_grid_3; replay $scr; echo grid = $scr'

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нашел у себя, но только половину :(. Вот файл переключающий сетку (их должно быть несколько). А скрипт который вызывает эти файлы я найти не смог...

 

Еще раз большое спасибо! Самое главное теперь я имею направление в котором буду копать дальше.

Единственное вот странно, а почему при установки all etch сетки значение 0.1 повторяется 5 раз?

FORM grid all_etch all_etch_x_grids 0.1 0.1 0.1 0.1 0.1

FORM grid all_etch all_etch_y_grids 0.1 0.1 0.1 0.1 0.1

 

Эти файлы про которые Вы говорите, как я понимаю и есть скрипты, у них расширение .scr и их действительно должно быть минимум 2 с разными значениями сеток(чтобы между ними переключаться).

 

 

Изменено пользователем def_rain

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

сетку можно делать не равномерную для этих слоев. Попробуйте другие цифры и увидите.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ant_m

Спасибо. Это именно то что нужно, в точку попали!

Теперь все ясно, на днях попробую себе сделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я не уверен насчет названия файлов переключения сетки - должны ли файлы быть вида "name" или "name.scr"? Уже не помню этих моментов, так что проверьте сами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость Budaev

Все же проще!, в файле env добавить:

 

funckey v 'settoggle grid_val 0.05 0.1 0.25 0.5 1 1.25 5; echo "Using grid " $grid_val; replay C:\SPB_Data\pcbenv\script\set_grid.scr'

#где funckey v - клавиша на клаве, присвоить.

#grid_val - шаги сетки, разделить просто пробел.

 

а в файле скрипта, полное содержание такое:

 

scriptmode +i +n

define grid

setwindow form.grid

FORM grid non_etch non_etch_x_grids $grid_val

FORM grid non_etch non_etch_y_grids $grid_val

FORM grid all_etch all_etch_x_grids $grid_val

FORM grid all_etch all_etch_y_grids $grid_val

FORM grid done

setwindow pcb

redraw

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все же проще!, в файле env добавить:

 

funckey v 'settoggle grid_val 0.05 0.1 0.25 0.5 1 1.25 5; echo "Using grid " $grid_val; replay C:\SPB_Data\pcbenv\script\set_grid.scr'

#где funckey v - клавиша на клаве, присвоить.

#grid_val - шаги сетки, разделить просто пробел.

 

а в файле скрипта, полное содержание такое:

 

scriptmode +i +n

define grid

setwindow form.grid

FORM grid non_etch non_etch_x_grids $grid_val

FORM grid non_etch non_etch_y_grids $grid_val

FORM grid all_etch all_etch_x_grids $grid_val

FORM grid all_etch all_etch_y_grids $grid_val

FORM grid done

setwindow pcb

redraw

 

Проверено, работает! Спасибо за опыт.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 4/7/2016 at 8:11 PM, def_rain said:

 

Проверено, работает! Спасибо за опыт.

 

Где можно посмотреть скрипты для аллегро? Хотелось бы иметь скрипт для автосоздания полигонов питания, скажем выделить нужные via, запустить скрипт и в слое питания готов полигон.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Т.е. просто создать одним движением прямоугольник предварительно выбрав нужную цепь сложно?:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 hours ago, Uree said:

Т.е. просто создать одним движением прямоугольник предварительно выбрав нужную цепь сложно?:)

Ни разу не видел полигон питания в виде прямоугольника, правда мне в основном приходится работать с чипами в бга от 400 ножек с числом напряжений питания, начиная с 5.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 hours ago, dmitry-tomsk said:

... и в слое питания готов полигон.

Я понял написанное, как полигон на весь слой. Или как? Или он должен охватывать _только_ выделенные ВИА? Такого пока нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 minutes ago, Uree said:

Я понял написанное, как полигон на весь слой. Или как? Или он должен охватывать _только_ выделенные ВИА? Такого пока нет.

Только виа внутри бга и полоска до dc-dc, там тоже виа с десяток, как правило. Ширину полоски по dc drop анализу подрегулировать и готово. А так получается неплохой подход - грамотный plan и ручной бга escape плисины дают качественную разводку на полуавтомате, можно плисину двигать от ревизии к ревизии, при смене форм фактора также, а вот полуавтоматики для полигонов питания нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...