• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 电子设计 > PCB设计 > PCB设计 > Protel 99中宏的一点应用

Protel 99中宏的一点应用

录入:edatop.com    点击:

    关于Protel 99软件使用/应用的书很多,可是宏的应用几乎没有,在这里希望本文能起到抛砖引玉的作用。宏,本义指一个预定义的汇编语言指令序列的一种广义上的指令,在Protel 99软件中,简单地说代表一系列预定义的动作步骤或按键功能。Prctel 99软件里有两种宏,一种是Protel 99软件自身带的宏,称内嵌宏,另一种是用户自定义的宏,称用户宏。

1 宏的应用
例1:电路图设计中的应用
    在Protel 99软件电路图设计中,常常需要复制。一个或几个对象,一般通过"编辑"菜单或热键选取、复制、粘贴来实现此功能。现在制作一个用户宏,一次实现此功能。宏名定义为"MyCpoy"。
    启动Protel 99软件新建一工程设计,命名为MyDesign.ddb(工程名可更改),Protel 99 SE安装目录下。在MyDesign.ddb文件中,Documents下新建一文本文档"MyCpoy.bas",
内容如下:

Sub Main
Call ResetParameters
Call AddStringParameter("SelectionReference","False")
Call RunProcess("Sch:SetupPreferences")
Call ResetParameters
Call RunProcess("Sch:DeselectAllObjects")
Call RunProcess("Sch:ToggleSelection")
Call RunProcess("Sch:Copy")
Call RunProcess("Sch:DeselectAllObjects")
Call RunProcess("Sch:Paste")
Call RunProcess("Sch:DeselectAllObjects")
Etad Sub

保存、退出Protel 99软件。
假设要把此功能放到Protel 99软件原理图"编辑" 菜单"Copy"菜单项之后,我们需要修改Protel 99软件原理图"编辑" 菜单。
用记事本打开系统目录(Windows或者WinNT)下"Client99se.rcs"文件(一定要退出Protel 99软件,否则软件异常启动),找到"Menu 'SchematicMenu'"之后的"Popup '&Edit编辑{E}'" 后的"MenuItem '&Copy复制tCtrl+C' Sch:Copy" 语句("Menultem '&Copy复制tCtrl+C" 有两处),之后插入如下两行内容:

"MenuItem'&MyCopy快速复制tF4'"
"'Macro:RunMacroDesignName=MyDesign.ddb|DocumentName=DocumentsMyCopy.bas|Language=ClientBasic)'"

增加热键"F4",继续查找,在"HotKeyTable'SchematicHotKeys'" 之后的第一个"End"前,插入如下三行内容:

"Key"
"'Macro:RunMacro(DesignName=MyDesign.ddb|DocumentName=DocumentsMyCopy.bas|Language=ClientBasic)' F4"
"EndKey"

保存并启动Protel 99软件,打开一电路图按"F4"就能看到执行效果。

例2:印制板设计中的应用
    在印制板设计中,经常需要查看网络的连接正确与否,一般通过"编辑"菜单"Select选择"、"Net网络"来实现此功能。实际使用中比较频繁,现在调用一个内嵌宏,并把它加进印制板环境右键菜单中,实现如下:
打开"Client99se.rcs"文件,找到
"Menu 'PCBMenu'" 之后的
"Popup 'Right Mouse Click 鼠标右键{Right_Click}'"后的
"Menultem '&Fit Board 适合整板' 'PCB:Zoom(Action=Document)'" 之后插入如下两行内容:
"Menultem 'Select&Net选择网络tF4' 'PCB:Select(Scope=Net)'"
"Menultem SEPARATOR"
继续查找"HotKeyTable 'PCBHotKeys' 增加热键"F4" ,之后插入如下两行内容:

" Key 'PCB:Select(Scope = Net)'               F4 "
"EndKey"

保存并启动Protel 99软件,打开一印制板按"F4"就能看到执行效果。

例3:设计中的其它应用
     使用汉化版的Protel 99软件,在印制板设计中放置汉字的时候,有一个十分讨厌的地方,它会先弹出一个"Advanced Text System" 对话框,把它放置到其它软件界面之后,然后再次弹出一个对话框,提示用户"输入下面对话框后,再点击OK",此时对话框"Advanced Text System"不可见,必须先点击Protel 99软件界面而后再点击它,才愿意露脸,否则还不肯赏脸呢!这可能是一个Bug,如何解决这个Bug
打开Protel 99软件,新建一工程设计"Font.ddb" ,Documents下新建文本文档
"Font.bas" ,输入如下内容:

Sub Main
Call RunApplication("font.exe")
msgbox"输入Advanced Text System对话框后,再点击OK!"
Call AddStringParameter("FileName","c:temp.lgshanzi.lib")
Call AddStringParameter("Footprint","place-han_zi_z")
Call AddStringParameter("Designator.Text","" )
Call AddStringParameter("Comment.Text", "")
Call RunProcess("Pcb:Placecomponent")
End Sub

保存覆盖安装目录下的同名文件"Font.ddb" ,退出Protel 99软件并重启。打开一印制板任意放置汉字,"Advanced Text System" 对话框赏脸了,效果不错吧!

射频工程师养成培训教程套装,助您快速成为一名优秀射频工程师...

天线设计工程师培训课程套装,资深专家授课,让天线设计不再难...

上一篇:影响印刷电路板(PCB)的特性阻抗因素及对策
下一篇:电源中印制板设计的抗干扰技术

射频和天线工程师培训课程详情>>

  网站地图