AD24学习笔记——WZQ

目录

 电子设计学习思路的建立

AD的工程组成与创建

创建原理图库(元件库) 

原理图绘制及编译检查

        PCB封装库的创建方法及现有封装的调用

        网表导入及模块化布局设计

        PCB设计规则设置及PCB手工布线 

        PCB的DRC检查、拼板设计及资料输出

        


                         电子设计学习思路的建立

一、学什么?

      明确目标:用AD做电子设计

1、学习如何操作AD软件

     工程的创建、快捷键的操作等

2、用AD进行电子设计

    原理图:原理图库,原理图的绘制

    PCB设计:PCB布局,PCB布线

    创建自己的元件库

    熟悉各种电子元器件

二、怎么学?

1、软件的学习

     常操作,快捷键使用,熟悉工具的使用

2、设计的学习

     多看,多练,对比式学习

9cda4ea916ee4d7c9af99877a9637f51.png

AD的工程组成与创建

一、AD的工程组成

  项目的建立、原理图库、原理图、PCB库、PCB

二、AD的工程创建

1、建立项目(注意文件夹名称、保存)

67ac0c2cb4a6463096ebe89073484f07.png

2、创建原理图库

140477666c4e46158d89240a8635784c.png

3、创建原理图

ba5616d35f0a46d38f26be5107a0e67a.png

4、创建PCB库 

8d1255d57b8049f492a4db8072a27c57.png

5、创建PCB

34cc4b3a0bf94ea7a682a0860830da38.png

                                  创建原理图库(元件库) 

一、如何创建原理图库

1、打开原理图库(后缀名为SchLib)

2、点击右下角的Panels,选择SCH Library(若无Panels,可点击菜单栏的视图,再点击状态栏)

3、点击左侧栏的添加,填入你想创建的元件名称,也可双击左侧所创建的元件,在右侧属性框中更改元件属性

4、开始创建

注意事项:1、放置管脚时电气连接点的方向

2、通过在视图-栅格-设置捕捉栅格可对格点进行设置(快捷键VGS)

3、在属性框-Name-Custom Position,可改变管脚名字的方向

4、管脚名字上划杠设置:属性框-管脚名Name中字母前后加上\,例\E\N\

5、管脚较多时可用阵列式粘贴(框选对象-菜单栏编辑-阵列式粘贴(Y))

6、电气连接点尽可能放置在格点上

快捷键:1、Tab:属性设置(在放置器件时按Tab键进行属性设置)

2、空格:旋转器件

3、PgUp、PgDn:放大和缩小窗口

4、Shift:按住可拖动器件

5、m:移动     ms:可框选器件,移动选中对象

6、A:对齐

7、TC:添加新元件

二、元件模型的调用

1、打开原理图

2、点击菜单栏设计,选择生成原理图库,可在生成的原理图库中选择想要用的元件,单击右键复制

3、粘贴到自己的原理图库中,再进行属性修改

2024-1-30

                            原理图绘制及编译检查

一、元件的放置(两种方法)

1、在SCH Library界面选中元件,点击左下角放置,即可进入原理图界面放置元件(此方法较繁琐)

2、进入原理图界面,在右下角Panels中选择Components,在右侧框最上面选择自己的原理图库 ,选择元件拖动到原理图中(注意放置的位置)

二、器件的复制及对齐

1、根据原理图将元件按照位置大致摆放在一起

2、Shift键拖动元件(复制)

3、用绘图线绘制模块线,划分区域(Shift+Space可改变线的角度,注意区分绘图线和导线)

4、调整元件位置

三、导线及NetLabel 的添加

1、Ctrl+W调用导线根据原理图进行各元件的连接,调整元件位置

2、放置VCC和GND端口(双击可改变名称)

3、调整绘制原理图库时的错误(如管脚名称、位号等)

4、PN设置网络标签(需在导线上设置),点击改变名称(3、4在导线连接元件时一起进行,省事)

       若原理图中元件出错,则需在原理图库中进行修改,保存。在左侧栏中右键单击所修改元件,点击更新原理图库即可

四、Value值的核对

1、位号编辑,TAA进入位号编辑界面,确定位号处理顺序和处理位置,选择编辑的原理图页和起始索引(界面左侧)

2、点击右侧Reset All,更新更改列表,点击接收更改(创建ECO)

3、在弹框中点击执行变更,位号编辑完成(也可自己根据原理图逐个进行位号编辑,即双击位号,改变名称) 

4、根据原理图编辑元件Value值(点击,在右侧属性框中编辑)

五、封装的统一管理

方法一:逐个封装(点击器件,进入属性框Footprint,点击Add,添加封装)

方法二:工具-封装管理器(快捷键TG)

1、整体封装(选中想要封装的同一元件,右侧点击编辑,在PCB模型弹框中填写名称,点击接收变化,执行变更)

2、逐个封装(封装管理器中,选择想要封装的器件,点击右侧添加,所有器件添加封装完毕后,点击接收变化,执行变更,即可成功添加封装)

六、原理图的编译设置及检查

1、在项目工程右键点击选择工程选项(工具栏-工程选项,快捷键CO) 

2、在弹框中即可设置各种错误报告等级,例如:

3、编译后点击右下角Panels,选择messages,即可看到原理图中的错误,再进行修改 

常见问题

Duplicate Part Designators——位号重复         Floating power objects——网络悬浮 

Nets with only one pin——单端网络

按住Alt键并点击网络标号对两个具有相同网络标号的导线进行高亮 

2024-2-2 

                   PCB封装库的创建方法及现有封装的调用

PCB封装是电子设计图纸和实物之间的映射体,具有精准数据的要求。

创建PCB封装需包含的内容:1脚标识(确认焊接正反方向),PCB焊盘,丝印,阻焊(防止滤油覆盖),管脚序号

一、常见CHIP、IC封装的创建

1、打开PCB封装库,左侧新建PCB封装

2、根据器件规格书明确器件尺寸,放置焊盘(表贴?通孔?形状,管脚序号)

     焊盘较多时,可复制重叠,选中焊盘,M键填写X或Y偏移量,镜像复制

    或选中焊盘,Ctrl+C,点击焊盘中心点,EA(特殊粘贴),弹框中选择阵列粘贴,填写数据,即可快速创建一定数量的同样的焊盘

3、EFC快捷键将原点定位到中心点,绘制丝印,利用快捷键完善

4、绘制1脚标识(依据器件规格书数据核对)

(Ctrl+D,切换3D模型。表贴器件需改右侧属性,Top Layer为表贴,Top Overlay为丝印)

二、利用IPC封装创建向导快速创建封装

安装IPC Footprint Generator插件

工具栏点击创建向导,选择封装类型

 根据器件规格书填写数据

选择是否添加散热焊盘

 其他为默认状态,最后完成创建(此创建向导可根据自我实际选择自己创建PCB封装或利用创建向导)

三、3D模型的创建与导入

1、菜单中放置--3D Body(无3D模型则选择3D元件体)--画出图形--Tab键可更改尺寸大小

2、导入已存在的3D Body或3D元件体(右侧 属性栏中选择Genenic--Path--Choose)

2024-2-5

                         网表导入及模块化布局设计

先理清思路,确定好哪些器件属于哪些功能模块,利用AD各种强大的布局技巧,按照功能模块化,再进行细节的处理

一、导入常见报错解决办法

    网表导入:方法1、在PCB界面,点击设计栏,Import Changes From

                      方法2、在原理图界面,点击设计栏,Update PCB Document

   在工程变更指令弹框界面,点击执行变更,仅显示错误,报告变更,导出Excel表格,可方便查看错误,具体错误具体解决

   常见报错:Unknow Pin:1、没有封装(根据Bom表添加封装) 2、封装管脚缺失(原理图库中添加管脚)3、管脚号不匹配(更改管脚号,使之匹配)

     绿色报错:原因:规则的设置问题

           解决:TD(设计规则检查),在设计规则检查器弹框界面Rules To Check中关闭所有规则,只打开电气性能规则(Electrical)

                 TM,移动器件,可看到绿色报错消除

二、PCB板框的评估及叠层设置

 评估依据:生产成本,器件要能完全放置在板框中

 选中全部器件,TOL将器件阵列排布,移至板框中,在底部机械层(Mechanical 1)PL画框线,将全部器件绘制在其中,EOS设置原点(框线角),将长和宽设置合理,调整框线,Shift选中框线,DSD可重新定义我们新绘制的板框

  叠层设置:DK打开层叠管理器, 添加两个负片层

Top Overlay--丝印层   Top Solder--阻焊层   Top layer--信号层   Bottom layer--负极层

Top--正片层   Plane--负片层   Core--芯板   Prepreg--PP片   Surface  Finish--表面处理

需注意,正片层走线是实际的铜线,负片层是铜片层走线不是铜线(Shift+s--单层显示)

三、模块化布局规划

 快捷键DC创建网络类,可隐藏电源网络线,只剩下信号线,方便看清信号流向

点击右下角Panels ,点击PCB,在左侧栏中右键PWR-连接-隐藏

四、PCB快捷键的设置

1、将光标放置在需要设置快捷键的命令处,按住Ctrl键并点击此命令,进入弹框设置

2、布线遇到冲突时,可单击右上角设置(或快捷键TP)--PCB Editor--Interactive Routing,在勾选前三项,将当前模式设置为 ignore obstacle

常见快捷键(灰色区域)及推荐

                        PCB设计规则设置及PCB手工布线 

一、Class,设计参数,规则的创建

 Class--类:电源,信号

 规则设置--Electrical:电气性能规则              Routing:信号规则           SMT:贴片规则

                  Mask:阻焊规则           Plane:铺铜规则        TestPoint:测试点规则

                   Manufacturing:生产部分规则          High Speed:高速规则

                 Placement:放置器件的规则      Signal Integrity:信号完整性分析规则

  间距规则 --通常设置6mil(DR快捷键--Electrical--Clearance)

  线宽规则--信号线尽量大于6mil, 电源线可15mil

过孔规则--2*H+-2mil (快捷键TP--PCB Editor--Defaults--via)

   扇孔:打孔占位,减少回流路径,防止后面走线很密集的时候无法打孔下去,绕很远的回流路径 

二、PCB布线

    选择信号线和电源线其中一个先进行布线,按Ctrl键拖动线可修整

   布线从器件中间引出,在适当位置打孔可方便布线 

   修整铜皮:菜单栏放置--多边形铺铜挖空--框选尖角铜皮--重新铺铜(可减少尖角铜皮信号干扰)

                  PCB的DRC检查、拼版设计及资料输出 

一、DRC的检查及丝印的调整

    1、 DRC就是检查设计是否满足所设置的规则,一个完整的PCB设计必须经过各项电气规则检查,常见的检查包括间距、开路及短路的检查等等 

   2、DRC检查--快捷键TD 

  

 勾选需要检查的对象,运行DRC,点击确定

3、丝印调整 

   生产时PCB上丝印位号可以进行显示或隐藏,但是不影响装配图的输出。

   按快捷键L,点击所有图层关闭,即关闭所有层,再单独勾选打开丝印层及相对应的阻焊层,即可对丝印进行调整。

   遵循的原则:丝印位号不上阻焊,放置丝印生产之后缺失

                        保持方向统一性,推荐字母在左或在下(根据实际情况调整) 

二、PCB拼板

  1、  拼板可节约生产成本,提高SMT生产效率,节省PCBA拿放时间

  2、V-cut及邮票孔拼板 

三、Gerber文件的输出及整理

1、装配图的输出

  方法一:快捷键FB

方法二:智能PDF,快捷键FM

在Top层和Bottom层分别进行如下两步操作 

点击添加 

完成 

2、Bom文件的输出

在原理图界面和PCB界面都可导出Bom文件

点击报告栏--Bill of Materials

3、Gerber文件的输出

点击确定

钻孔文件,F

坐标文件,快捷键F 

IPC网表输出

完成 

                

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用MATLAB编写一个绘制五子棋游戏(或连连看游戏)的函数。以下是一个简单的示例代码: ```matlab function wzq_plot() % 创建棋盘 board = zeros(15, 15); % 创建一个15x15大小的棋盘,初始状态为0 % 开始游戏循环 while true % 绘制棋盘 draw_board(board); % 玩家下棋 [row, col] = input_move(board); board(row, col) = 1; % 玩家下的棋标记为1 % 检查游戏是否结束 if check_game_over(board, row, col, 1) fprintf('玩家赢了!\n'); break; end % 电脑下棋 [row, col] = computer_move(board); board(row, col) = 2; % 电脑下的棋标记为2 % 检查游戏是否结束 if check_game_over(board, row, col, 2) fprintf('电脑赢了!\n'); break; end end end function draw_board(board) clf; % 清空当前图形窗口 % 绘制棋盘网格线 for i = 1:14 line([i+0.5, i+0.5], [0.5, 14.5], 'Color', 'k', 'LineWidth', 1); line([0.5, 14.5], [i+0.5, i+0.5], 'Color', 'k', 'LineWidth', 1); end % 绘制棋子 for i = 1:15 for j = 1:15 if board(i, j) == 1 rectangle('Position', [j-0.75, i-0.75, 1.5, 1.5], 'Curvature', [1, 1], 'FaceColor', 'b'); elseif board(i, j) == 2 rectangle('Position', [j-0.75, i-0.75, 1.5, 1.5], 'Curvature', [1, 1], 'FaceColor', 'r'); end end end axis equal; % 设置坐标轴比例为相等 axis([0.5, 14.5, 0.5, 14.5]); % 设置坐标轴范围 set(gca, 'XTick', [], 'YTick', []); % 隐藏坐标轴刻度 box on; % 显示坐标轴边框 end function [row, col] = input_move(board) while true fprintf('请输入您要下棋的位置(行 列):'); move = input(''); row = move(1); col = move(2); if row < 1 || row > 15 || col < 1 || col > 15 || board(row, col) ~= 0 fprintf('输入无效,请重新输入!\n'); else break; end end end function [row, col] = computer_move(board) % 这里是电脑下棋的逻辑,你可以自行编写 % 这里只是一个随机下棋的示例 while true row = randi(15); col = randi(15); if board(row, col) == 0 break; end end end function game_over = check_game_over(board, row, col, player) % 这里是检查游戏是否结束的逻辑,你可以自行编写 % 这里只是一个简单的示例检查,仅检查行和列是否连成5子 game_over = false; if sum(board(row, :) == player) >= 5 || sum(board(:, col) == player) >= 5 game_over = true; end end ``` 这段代码实现了一个简单的五子棋游戏,玩家和电脑交替下棋,先连成5子的一方获胜。运行 `wzq_plot()` 函数即可开始游戏。你可以根据需要修改游戏规则和电脑下棋的逻辑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值