jf_32603368 发表于 2023-5-24 14:41:24

KiCad 7中添加网络类(一):通配符与正则表达式

本帖最后由 jf_32603368 于 2023-5-24 14:41 编辑

KiCad 6中网络类的添加比较方便,可以直接在“原理图设置”中手动选择任意网络,然后直接添加到自定义的网络类中:
https://file1.elecfans.com/web2/M00/88/9E/wKgaomRtq2SAZ_QvAADXFRoxAvw872.png
但到7.0版本后,很多小伙伴发现添加网络类没办法手动选择了,只能通过正则表达式来“匹配”需要选择的网络,显得很不方便。
https://file1.elecfans.com/web2/M00/88/9E/wKgaomRtq2SACry5AAC98w_06oo630.png

开发者给出的解释是这样可以排除掉大部分自动生成的“匿名”网络,同时让设计者在设计原理图的时候就思考网络及网络类的定义与作用。不管接受与否,变化已经发生了(估计也不会变回原来的样子)。而且用惯了之后会发现逻辑上这一变化还挺有道理。接下去就让我们看看新版本中如何定义网络类。

基本语法
基于“匹配模式”的分配是动态的:当添加与现有模式匹配的新网络时,它将自动分配给关联的网络类。其中最重要的是使用通配符和正则表达式:(* 用来匹配任意数量的任意字符;? 匹配单个的任意字符),匹配成功的网络会显示在列表右侧。
举例来说,我们先创建一个Test的网络类,默认情况下,网络类中没有任何匹配的网络:
https://file1.elecfans.com/web2/M00/88/9F/wKgaomRtsBSAQRW4AACHfSSgGgQ818.png
如果“匹配模式”中输入通配符“*”并选择网络类“Test”,则右侧会显示原理图中所有的网络。即网络类Test将包含原理图中所有的网络,这个网络类和默认的Default类其实是一样。
https://file1.elecfans.com/web2/M00/88/A0/wKgZomRtsBWAK4O8AACWzSkVt10884.png
如果需要对包含某个特征的网络进行匹配,只需要输入通配符加特征字段,比如希望把带有“PC”的网络分配到同一个网络类,则匹配条件可以设为 “*PC*”。主要这里严格区分大小写。如果不使用通配符,则需要输入完整的网络名称进行匹配。
https://file1.elecfans.com/web2/M00/88/9F/wKgaomRtsBWAQX6eAACW-2CB5f0924.png
同理,如果原理图中所有的电源特征都带“+”,就可以使用“+*”为所有的电源分配一个网络类。这么做有一个便捷出在于,如果之后原理图中又增加一个新的网络,如“+12V”,“+3.3V”,这些满足匹配要求的网络会自动添加到网络类中而无需手动操作:
https://file1.elecfans.com/web2/M00/88/A0/wKgZomRtsBWAWFykAACR_ifpQsI032.png
那么问题来了,如果网络类中的网络没有“通用”特征,那该怎么办呢?要么去修改原理图中网络的名称,要么就只能用土办法,挨个添加。如下图,因为没法批量匹配,只能一行行的网络添加到网络类。
https://file1.elecfans.com/web2/M00/88/9F/wKgaomRtsm2AJI3xAACd_I9jk3Y483.png
灵活使用正则表达式,对于需要使用网络类的设计情景,比如总线、差分对等,还是比较方便的。
当然,KiCad也提供了其他方法进行网络类的管理,以后为大家介绍。
页: [1]
查看完整版本: KiCad 7中添加网络类(一):通配符与正则表达式