草庐IT

Altium Designer 入门笔记(4)层次原理图的设计

神仙管家 2023-06-21 原文

一、电路模块化设计

在前面我们学习了一般电路原理图的基本设计方法,将整个系统的电路绘制在一张原理图纸上。这种适用于规模小,逻辑结构比较简单的系统电路设计。对于大规模的复杂系统,应该采用另外一种设计设计方法,即电路的模块化设计。

1.1 层次原理图的基本概念

层次结构电路原理图的设计理念是将实际的总体电路进行模块划分,划分的原则是每一个电路模块都应有明确的功能和相对独立的结构,而且还要有简单、统一的接口,便于模块间的连接。

1.2层次原理图的基本结构和组成

顶层原理图 分为 (1)子原理图 (2)子系统顶层原理图

子系统顶层原理图 分为(1)子原理图 (2)子原理图

图纸符号之间也是借助电路端口,可以使用导线或总线连接,而且同一个项目的电路原理图(包括顶层原理图和子原理图),相同名称输出输入端口和电路端口之间在电气意义上都是相互连接的。

1.3 层次原理图的设计方法

层次原理图设计的具体方法有两种:(1)自上而下的设计方式(2)自下而上的设计方式

1.3.1 自上而下的层次原理图设计

先绘制顶层原理图,然后将顶层原理图中各个页面符对印的子原理图分别绘制。

(1)绘制顶层原理图

1、执行菜单命令“文件”-->"新的"——>"项目",建立一个新PCB项目文件,另存为“NEW.PRJPCB”

2、执行菜单命令“文件”-->"新的"——>"原理图",建立一个新原理图文件,另存为“NEW.SchDoc”

(设置原理图图纸参数)

3、执行菜单命令“放置”-->"页面符",或者单击“布线”工具栏的额“放置页面符”按钮,放置页面符。

4、通过单击鼠标确定页面符大小,单击右键退出绘制模式。

5、双击已画完的页面符,可以对“属性”进行设置。

【属性中,注意“Sheet Entries”(图纸入口)

在该选项组中,可以为页面符添加、删除和编辑与其余元件连接的图纸入口。单击“Add”按钮,在该画面自动添加图纸入口。】

6、执行菜单命令“放置”-->"添加图纸入口",或者单击“布线”工具栏中对应的按钮,放置页面符的图纸入口。左键单击放置入口,右键单击退出该模式。

7、双击放置的图纸入口,系统弹出“属性”面板。

8、使用导线将各个页面符的图纸入口连接起来,并绘制图中其它部分的原理图。

(2)绘制子原理图

1、执行菜单命令“设计-->"从页面符创建图纸"  移动光标到页面符内部空白处,单击鼠标左键。

2、系统会自动生成一个与该页面同名的子原理图文件,并在原理图文件中生成3个与页面符对应的输入输出端口,

3、绘制子原理图。

4、采用同样的方法,绘制其它原理图。

1.3.2 自下而上的层次原理图设计

(1)绘制子原理图

1、新建项目文件和电路原理图文件

2、根据功能电路模块绘制出子原理图

3、在子原理图中放置输入输出端口。

(2)绘制顶层原理图

1、在项目中新建一个原理图文件,另存为NEW.SchDoc,执行菜单命令“设计”——>“Create Sheet Symbol From Sheet”(原理图生成图纸符),系统弹出选择文件放置对话框。

2、在该对话框中选择子原理图文件,单击按钮“ok”,光标出现一个页面虚影。在指定位置单击鼠标左键,将页面符放置在顶层原理图中,然后设置页面符的属性。

3、采用同样的方法,放置另外一个页面符,并设置属性。

4、用导线将这些页面符连接起来,并绘制其余电路图。

1.4 层次原理图之间的切换

绘制完成的层次电路原理图中一般都包含有顶层原理图和多张子原理图,用户在编辑时常常需要在这些图中来回切换查看。

(1)打开“Projects”,单击面板中相应的原理图文件名,在原理图编辑区内就会显示对应的原理图。

(2)用命令方式切换

1.由顶层原理图切换到子原理图

打开项目文件,执行菜单命令“工程”--->"CompilePCB Project Amplified Modulator.PRJPCB",编译整个电路系统。

打开顶层原理图,执行菜单命令“工具”-->“上/下层次”,

单击文件名后,系统自动打开子原理图,并将其切换到原理图编辑区内。此时,子原理图中与前面单击的图纸入口同名的端口处于高亮状态。

2.由子原理图切换到顶层原理图

打开子原理图,执行菜单命令“工具”-->“上/下层次”

移动光标到子原理图的一个输入输出端口

单击该端口,系统将自动打开并切换到顶层原理图。

1.5层次设计表

一个复杂的电路系统可能包含多个层次的层次电路图,因此层次原理图的关系比较复杂,用户将不容易看懂这些电路图。为了解决整个问题,AD提供了层次设计报表,通过报表用户可以清楚地了解原理图的层级结构关系。

打开项目文件,执行菜单命令“工程”--->"CompilePCB Project Amplified Modulator.PRJPCB",编译整个电路系统。

执行菜单命令“报告”-->“Report Project Hierarchy”,系统将生成层次设计报表。

有关Altium Designer 入门笔记(4)层次原理图的设计的更多相关文章

  1. ruby-on-rails - Rails - 子类化模型的设计模式是什么? - 2

    我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

  2. ruby-on-rails - 使用 rails 4 设计而不更新用户 - 2

    我将应用程序升级到Rails4,一切正常。我可以登录并转到我的编辑页面。也更新了观点。使用标准View时,用户会更新。但是当我添加例如字段:name时,它​​不会在表单中更新。使用devise3.1.1和gem'protected_attributes'我需要在设备或数据库上运行某种更新命令吗?我也搜索过这个地方,找到了许多不同的解决方案,但没有一个会更新我的用户字段。我没有添加任何自定义字段。 最佳答案 如果您想允许额外的参数,您可以在ApplicationController中使用beforefilter,因为Rails4将参数

  3. ruby - 是否有用于序列化和反序列化各种格式的对象层次结构的模式? - 2

    给定一个复杂的对象层次结构,幸运的是它不包含循环引用,我如何实现支持各种格式的序列化?我不是来讨论实际实现的。相反,我正在寻找可能会派上用场的设计模式提示。更准确地说:我正在使用Ruby,我想解析XML和JSON数据以构建复杂的对象层次结构。此外,应该可以将该层次结构序列化为JSON、XML和可能的HTML。我可以为此使用Builder模式吗?在任何提到的情况下,我都有某种结构化数据-无论是在内存中还是文本中-我想用它来构建其他东西。我认为将序列化逻辑与实际业务逻辑分开会很好,这样我以后就可以轻松支持多种XML格式。 最佳答案 我最

  4. LC滤波器设计学习笔记(一)滤波电路入门 - 2

    目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称

  5. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  6. 微信小程序开发入门与实战(Behaviors使用) - 2

    @作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors    1、什么是behaviors    2、behaviors的工作方式    3、创建behavior    4、导入并使用behavior    5、behavior中所有可用的节点    6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors    1、什么是behaviorsbehaviors是小程序中,用于实现

  7. 【Java入门】使用Java实现文件夹的遍历 - 2

    遍历文件夹我们通常是使用递归进行操作,这种方式比较简单,也比较容易理解。本文为大家介绍另一种不使用递归的方式,由于没有使用递归,只用到了循环和集合,所以效率更高一些!一、使用递归遍历文件夹整体思路1、使用File封装初始目录,2、打印这个目录3、获取这个目录下所有的子文件和子目录的数组。4、遍历这个数组,取出每个File对象4-1、如果File是否是一个文件,打印4-2、否则就是一个目录,递归调用代码实现publicclassSearchFile{publicstaticvoidmain(String[]args){//初始目录Filedir=newFile("d:/Dev");Datebeg

  8. ES基础入门 - 2

    ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear

  9. ruby-on-rails - 设计注册确认 - 2

    我在我的项目中有一个用户和一个管理员角色。我使用Devise创建了身份验证。在我的管理员角色中,我没有任何确认。在我的用户模型中,我有以下内容:devise:database_authenticatable,:confirmable,:recoverable,:rememberable,:trackable,:validatable,:timeoutable,:registerable#Setupaccessible(orprotected)attributesforyourmodelattr_accessible:email,:username,:prename,:surname,:

  10. ruby-on-rails - 设计通过 reset_password_token 获取用户 - 2

    我正在尝试创建密码规则来设计可恢复的密码更改。我通过passwords_controller.rb做了一个父类(superclass),但我需要在应用规则之前检查用户角色,但我所拥有的只是reset_password_token。 最佳答案 假设您的模型是用户:User.with_reset_password_token(your_token_here)Source 关于ruby-on-rails-设计通过reset_password_token获取用户,我们在StackOverflow

随机推荐