https://blog.csdn.net/wyu0725/article/details/52367199

Allegro skill二次开发和更改菜单页面

简单的使用skill;能够使Aleggro启动时自动加载skill里建立的新命令;sikll文件一般为XXXX.il;其中XXX为文件名

在allegro环境下使用SKILL,必须要先载入后才能使用相关的命令,一种方式是直接在COMMAND窗口输入skill load("SKILL文件名")来载入,这种方法只针对当前开启的ALLEGRO才有效,另外一种方法是将载入语句写入pcbENV目录下的allegro.ilinit文件内来实现ALLEGRO启动时自动加载,这种是比较通用的方法,下面以此方法为例。 
一,查看环境变量所在目录 
1.通过查看电脑环境变量中的HOME变量值. 例如HOME变量为d:\ ,那实际的allegro.ilinit文件路径应该放在d:\pcbenv目录下 
2.直接在ALLEGRO 命令行输入echo $localenv 也可以得到实际的环境变量目录。 
在环境变量目录下如果没有allegro.ilinit文件,可以新建一个文本文件,然后修改文件名即可,allegro在启动时会在环境变量目录下查找allegro.ilinit文件,并执行其中的SKILL语句。可以把allegro.ilinit理解成一个ALLEGRO自动启动的SKILL文件。 
二,allegro.ilinit文件的编写 
大家经常见到的allegro.ilinit文件内容如下: 
;-------------------------------------------------------- 
setSkillPath(buildString(append1(getSkillPath() "D:/skill"))) 
load("xxx.il") 
;-------------------------------------------------------- 
以上代码都是标准的SKILL语句,下面介绍所使用到的函数: 
getSkillPath() ;函数,作用是获取ALLEGRO的SKILL PATH列表,此列表所包含路径中的SKILL文件可直接使用相对路径调用。 
append1 ;函数,在列表中添加内容,append1(getSkillPath() "D:/skill"))) 的作用就是将D:/SKILL这个目录添加进SKILL 路径里,这样只要123.il文件放在D:/skill目录下就可以直接使用load("123.il")来调用。 
buildString ;将LIST类型组成字符串,此函数可以省略 
setSkillPath ;函数,根据重新组成的路径设置SKILL PATH. 
load ;载入函数,如果SKILL带有密码,写法为load("xxx.il" "password");另外也可以使用loadi函数。 
使用以上代码后,可以将SKILL文件放入指定文件夹以方便管理, 
另外,因为PCBENV目录默认包括在SKILL PATH中,所以如果不使用上面语句,也可以将SKILL文件放入PCBENV目录下,使用相对路径调用 ,如load("test.il"); 
如果在其它位置也可以使用绝对路径调用,例如load("d:/skill/test.il") 
保存allegro.ilinit文件后, 在ALLEGRO命令行里执行skill load("allegro.ilinit") 所有加载的SKILL即可生效,当然也可以重开ALLEGRO. 
三,在allegro.ilinit的中定义快捷键 
使用axlSetAlias和axlSetFunckey函数 
axlSetAlias("F2" "oops")
 

安装环境: 本人电脑为WIN8.1系统,  安装的是Cadence17.0;

简单的使用skill;能够使Aleggro启动时自动加载skill里建立的新命令;sikll文件一般为XXXX.il;其中XXX为文件名。

skill包可以从如下地址下载:提取码为: d9ff

链接: https://pan.baidu.com/s/1o77oOdG

1,首先应是环境变量的建立,我的安装完成后有HOME变量,按如下图红色框所示建立环境变量中的用户变量;(注意下图只要看红色框内的内容)

2; 在C:\Users\Administrator\pcbenv路径下新建文件夹skill,用来存放下载下来的XXX.il,(比如clinecut.il);

然后新建一个allegro.ilinit的文件,可以新建一个TXT文件后直接修改拓展名;如下图所示

allegro.ilinit文件的内容为:

setSkillPath(buildString(append1(getSkillPath() "~/pcbenv/skill"))) 
  load("clinecut.il")

以上只是加载了一个XXX.il文件,如果需要加载多个,只需要增加skill文件夹里的XXX.il文件,同时把XXX.il通过load(XXX.il)加载启动;

3,上面新的skill命令可以打开.brd文件后测试;在命令栏输入clinecut命令,可以得到如下图箭头所指,表示命令已经成功激活;

Allegro 右边opion如下图所示,表示已经成功,可以截取线段;正是clinecut命令的功能;

4,对于Allegro 菜单的调整;只需要修改C:\Cadence\SPB_17.0\share\pcb\text\cuimenus文件夹下的

allegro.men文件内的内容;可以使用Notepad++工具编辑;

例如;用Notepad++打开allegro.men文件,在1050行后插入红色框内内容;则重新打开Allegro后菜单栏会多出现一个菜单项,如下边第2图所示;

至此已经完成;上边的设置只是针对我个人电脑而言,无论电脑系统版本如何,Cadence版本如何,都应该具有相似性,今天折腾了一下,主要是路径的问题没有设置正确;

Allegro skill的更多相关文章

  1. Allegro转换PADS终极篇(转载)

    Allegro转换PADS终极篇.....http://www.eda365.com/forum.php?mod=viewthread&tid=86947&fromuid=190625 ...

  2. Allegro学习(http://www.asmyword.com/forum.php?mod=forumdisplay&fid=86)

    一.资源 1.网站推荐www.eda365.com,里面有很多有用的东西:当然还有官方代理商的网站http://www.pspice.com.cn/: 2.视频教程:有库源电气的视频教程,还有在www ...

  3. allegro使用汇总 [转贴]

    1.如何在allegro中取消花焊盘(十字焊盘) set up->design parameter ->shape->edit global dynamic shape parame ...

  4. Allegro的优点与缺点

    记得刚毕业出来时就在某台商工作,用的就是allegro,从此上了贼船就下不来了--.其实还用过pcad,protel,powerpcb(以下简称3p,加上pads就4p了,呵呵--).至于mentor ...

  5. Allegro怎么对元器件进行对齐

    Allegro怎么对元器件进行对齐? Ø选择操作模式,点击菜单栏setup-Application Mode,然后选择Placement Edit模式,进行操作: Ø然后Find面板勾选器件选项,sy ...

  6. Allegro转换PADS终极篇.....

    allegro转pads终极篇                                                                                      ...

  7. Allegro Desgin Compare的用法与网表比较

    转:Allegro Desgin Compare的用法与网表比较 Allegro中自带有Design Compare工具,利用它可以比较明了的看到线路的差异.当然也可以通过SKILL进行比较,不过我们 ...

  8. 每天进步一点点------Allegro PCB

    Allegro PCB 1.如何在allegro中取消花焊盘(十字焊盘) set up->design parameter ->shape->edit global dynamic ...

  9. Allegro PCB 转 PADS Layout

    操作系统:Windows 10 x64 工具1:Allegro PCB Design XL (legacy) version 16.6-2015 工具2:PADS Layout VX.2.3 参考1: ...

随机推荐

  1. 数组去重js方式

    var selectmap = new Array(); /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test("\x0f"+selectmap.join(&quo ...

  2. 洛谷 [P3381] 最小费用最大流模版

    #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...

  3. POJ1716 Integer Intervals

    Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 13984   Accepted: 5943 Description An i ...

  4. hdu 1867 A+B again for you

    A + B for you again Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  5. css create 多边形 polygon

    案例:   代码: element.style { width: 0; height: 0; /* border-left: 50px solid transparent; */ border-rig ...

  6. windows 加入域

    点击computer,右击选system ,点 change setting,填写domain和computer-name 加入域,下次登陆加入,在域中会检查computer name

  7. 5种你未必知道的JS和CSS交互的方法

    随着浏览器不断的升级改进,CSS和JavaScript之间的界限越来越模糊.本来它们是负责着完全不同的功能,但最终,它们都属于网页前端技术,它们需要相互密切的合作.我们的网页中都有.js文件和.css ...

  8. [LeetCode] Maximum Product Subarray 连续数列最大积

    Find the contiguous subarray within an array (containing at least one number) which has the largest ...

  9. 常用的Linux系统命令

    一.linux简介                                                                                            ...

  10. 大型网站优化-memcache技术

    大型网站优化-memcache技术 memory+cache 内存缓存 memcache简介 memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发 ...