protel课程设计单片机最小系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
protel课程设计单片机最小系统
1 protel99SE软件简介
1.1 Protel 99SE概述
Protel 99SE是应用于Windows9X/2000/NT操作系统下的EDA设计软件,采用设计库管理模式,可以进行联网设计,具有很强的数据交换能力和开放性及3D模拟功能,是一个32位的设计软件,可以完成电路原理图设计,印制电路板设计和可编程逻辑器件设计等工作,可以设计32个信号层,16个电源--地层和16个机加工层。
Protel 99采用全新的管理方式,即数据库的管理方式。
Protel 99 是在桌面环境下第一个以独特的设计管理和团队合作技术为核心的全方位的印制板设计系统。
所有Protel99设计文件都被存储在唯一的综合设计数据库中,并显示在唯一的综合设计编辑窗口。
Protel 99软件沿袭了Protel以前版本方便易学的特点,内部界面与Protel 98大体相同,新增加了一些功能模块。
Protel公司引进了德国INCASES公司的先进技术,在Protel99中集成了信号完整性工具,精确的模型和板分析,帮助你在设计周期里利用信号完整性分析可获得一次性成功和消除盲目性。
Protel99容易使用的特性就是新的“这是什么” 帮助。
按下任何对话框右上角的小问号,然后选择你所要的信息。
现在可以很快地看到特性的功能,然后用到设计中,按下状态栏末端的按钮,使用自然语言帮助顾问。
1.2 Protel 99 SE的系统组成
按照系统功能来划分,Protel99se主要包含以下俩大部分和6个功能模块。
1、电路工程设计部分
(1)电路原理设计部分(Advanced Schematic 99):电路原理图设计部分包括电路图编辑器(简称SCH编辑器)、电路图零件库编辑器(简称Schlib 编辑器)和各种文本编辑器。
本系统的主要功能是:绘制、修改和编辑电路原理图;更新和修改电路图零件库;查看和编辑有关电路图和零件库的各种报表。
(2)印刷电路板设计系统(Advanced PCB 99):印刷电路板设计系统包括印刷电路板编辑器(简称PCB编辑器)、零件封装编辑器(简称PCBLib
编辑器)和电路板组件管理器。
本系统的主要功能是:绘制、修改和编辑电路板;更新和修改零件封装;管理电路板组件。
(3)自动布线系统(Advanced Route 99):本系统包含一个基于形状(Shape-based)的无栅格自动布线器,用于印刷电路板的自动布线,以实现PCB设计的自动化。
2、电路仿真与PLD部分
(1)电路模拟仿真系统(Advanced SIM 99):电路模拟仿真系统包含一个数字/模拟信号仿真器,可提供连续的数字信号和模拟信号,以便对电路原理图进行信号模拟仿真,从而验证其正确性和可行性。
(2)可编程逻辑设计系统(Advanced PLD 99):可编程逻辑设计系统包含一个有语法功能的文本编辑器和一个波形编辑器(Waveform)。
本系统的主要功能是;对逻辑电路进行分析、综合;观察信号的波形。
利用PLD 系统可以最大限度的精简逻辑部件,使数字电路设计达到最简化。
(3)高级信号完整性分析系统(Advanced Integrity 99):信号完整性分析系统提供了一个精确的信号完整性模拟器,可用来分析PCB设计、检查电路设计参数、实验超调量、阻抗和信号谐波要求等。
1.3 Protel 99 SE的主要功能特性
1、开放式集成化的设计管理体系
2、超强功能的、修改与编辑功能
3、强大的设计自动化功能
2 设计任务
2.1 设计要求
绘制具有一定规模、一定复杂程度的电路原理图*.sch(可以涉及模拟、数字、高频、单片机等等电路)。
绘制电路原理图相应的双面印刷版图*.pcb。
2.2 电路原理图选择及参数设置
在此次课程设计中,我选择的是单片机最小系统电路原理图,选择AT89S52芯片,复位键,晶振,ISP下载接口,独立按键和拓展引脚组成。
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。
使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
复位键部分选择按键开关、10uF有极电容和10K电阻组成。
晶振选择12MHz,与两个30pF电容组成振荡电路。
ISP下载接口可以为整个最小系统供电或者烧写程序,其连接如原理图所示。
独立按键部分由两个按键开关分别与两个4.7K的电阻并联后再串联组成,可用作单片机独立按键或者外部中断。
拓展引脚为四个8引脚的单排针,可通过排线连接流水灯、数码管、矩阵键盘、液晶、数模/魔术转换等功能模块。
3 绘制电路原理图
3.1 新建设计数据库文件
进入Protel 99SE 原理图绘制界面,点击File(文件)中new项,新建设计数据库。
新建设计文件,有两种方式:一种为MS Access Database方式,全部文件存储在单一的数据库中,同原来的99文件格式。
另一种为Windows File System方式,全部文件被直接保存在对话框底部指定的磁盘驱动器中的文件夹中,在资源管理器中可以直接看到所建立的原理图或PCB文件。
在Browse选项中选取需要存储的文件夹,然后点击OK即可建立自己的设计数据库。
图3-1新建.Sch文件
(1)设计组(Design Team)
我们可以先在Design Team 中设定设计小组成员,Protel 99SE可在一个设计组中进行协同设计,所有设计数据库和设计组特性都由设计组控制。
定义组
成员和设置他们的访问权限都在设计管理器中进行,确定其网络类型和网络专家独立性不需要求助于网络管理员。
为保证设计安全,为管理组成员设置一个口令。
这样如果没有注册名字和口令就不能打开设计数据库。
提示:成员和成员权限只能由管理员建立。
(2)回收站(Recycle Bin)
相当于Windows 中的回收站,所有在设计数据库中删除的文件,均保存在回收站中,可以找回由于误造作而删除的文件。
(3)设计管理器(Documents)
所有Protel 99SE设计文件都被储存在唯一的综合设计数据库中,并显示在唯一的综合设计编辑窗口。
在Protel 99SE中与设计的接口叫设计管理器。
使用设计管理器,可以进行对设计文件的管理编辑、设置设计组的访问权限和监视对设计文件的访问。
3.2 打开和管理设计数据库
Protel 99SE包括许多设计例子,我们下面可以举例说明:选择文件打开菜单\Design Explorer99SE\Example \folder,点击photoplotter.ddb文件,左侧窗口呈现树状结构。
点"+"呈现下一层子目录或文件,点"-"将关闭此文件夹.点Photohead.pcb 文件,PCB版图将出现,点Photohead.prj,原理图管理文件将被打开。
关闭文件,可以用鼠标右键,选择Close也可以用CTRL+F4来关闭。
3.3 原理图绘制
(1)载入元器件原理图符号库
在设计浏览器管理窗口中单击顶部的Browse Sch标签,即可打开原理图编辑管理窗口。
单击原理图编辑器管理窗口中的Add/Remove按钮,在元器件原理图符号列表框中单击所需的库文件,然后单击Add按钮,被选中的库文件就会出现在亦轩文件列表框中,鼠标单击对话框中的OK按钮,就可以将上述库文件装入设计系统中,此时被装入的元器件原理图富豪库文件以及该符号库所包含的所有元器件就会出现在原理图编辑管理器窗口中。
(2)放置元器件
当用户将相应的元器件原理图符号封装库装入设计系统之后,就可以直接
从装入的库中去取用元器件,并把它们放到图纸上。
放置之前用户首先要知道要用到的元器件存放于哪一个库中。
在原理图编辑器中,放置元器件的方法通常有以下几种:利用原理图编辑器管理窗口放置元器件;利用菜单命令放置元器件;利用放置工具栏放置元器件;利用快捷键放置元器件。
利用空格键可以每次90度旋转元器件,X/Y分别是元器件左右、上下对调。
也可以移动单个元器件,同时移动多个元器件,删除元器件
(3)设置元器件属性
调整元器件的属性主要包括设置元器件的序号、封装形式和元器件型号等。
(4)原理图连线设计
确定起始点和终止点,Protel99 SE就会自动地在原理图上连线,从菜单上选择“Place/Wire”后,按空格键切换自动连线方式。
观察状态栏就可以看出“Auto Wire”Protel99 SE 连线,使得设计者在设计时更加轻松自如。
只要简单地定义AutoWire方式。
自动连线可以从原理图的任何一点进行,不一定要从管脚到管脚。
连线、90 自动连线、任意角度。
重点注意放置网络标号、电源、接地符号和总线、总线分支等来建立起电气连接关系。
绘制单片机最小系统电路原理图如下:
图3-2单片机最小系统电路原理图
(5)检查原理图电性能可靠性
打开LCD Controller.ddb 设计数据库,点取LCD Controller 文件夹下的LCD Controller.prj原理图设计窗口,Protel99 SE可以帮助我们进行电气规则检查。
选择Tools下面的ERC,在“Rule Matrix”种选择要进行电气检查的项目,设置好各项后,在“Setup Electrical Rlues Check”对话框上选择“OK”即可运行电气规则检查,检查结果将被显示到界面上。
或者直接在Tools(工具)栏里面选取ERC电器规则检查,设置好各项之后,点击“OK”按钮,检查结果就会显示在.ERC文件中。
(6)生成网络表文件
网络表是一个表征电路原理图中原期间连接关系的文本文件,是连接电路原理图与印制电路板之间的一座桥梁。
网络表可以在原理图编辑器中直接生成,也可以在文本文件编辑器中手动编辑。
另外,网络表也可以在PCB编辑器中,从已完成不限的PCB文件里导出。
在菜单命令Design/Create Netlist…,生成网络报表。
4 印制电路板的设计
在PCB设计中,布线是完成产品设计的重要步骤,可以说前面的准备工作都是为它而做的,PCB的设计流程分为网表输入、规则设置、元器件布局、布线、检查、复查、输出六个步骤。
4.1 网表输入
网表输入有两种方法,一种是使用PowerLogic的OLE PowerPCB Connection功能,选择Send Netlist,应用OLE功能,可以随时保持原理图和PCB图的一致,尽量减少出错的可能。
另一种方法是直接在PowerPCB中装载网表,选择File->Import,将原理图生成的网表输入进来。
图4-1载入网络报表
4.2 规则设置
如果在原理图设计阶段就已经把PCB的设计规则设置好的话,就不用再进行设置
这些规则了,因为输入网表时,设计规则已随网表输入进PowerPCB了。
如果修改了设计规则,必须同步原理图,保证原理图和PCB的一致。
除了设计规则和层定义外,还有一些规则需要设置,比如Pad Stacks,需要修改标准过孔的大小。
如果设计者新建了一个焊盘或过孔,一定要加上Layer 25。
此时应注意注意:PCB设计规则、层定义、过孔设置、CAM输出设置已经作成缺省启动文件,名称为Default.stp,网表输入进来以后,按照设计的实际情况,把电源网络和地分配给电源层和地层,并设置其它高级规则。
在所有的规则都设置好以后,在PowerLogic中,使用OLE PowerPCB Connection的Rules From PCB功能,更新原理图中的规则设置,保证原理图和PCB图的规则一致。
4.3 元器件布局
网表输入以后,所有的元器件都会放在工作区的零点,重叠在一起,下一步的工作就是把这些元器件分开,按照一些规则摆放整齐,即元器件布局。
PowerPCB提供了两种方法,手工布局和自动布局。
(1)手工布局
工具印制板的结构尺寸画出板边(Board Outline)。
将元器件分散(Disperse Components),元器件会排列在板边的周围。
把元器件一个一个地移动、旋转,
放到板边以内,按照一定的规则摆放整齐。
(2)自动布局
PowerPCB提供了自动布局和自动的局部簇布局,但对大多数的设计来说,效果并不理想,不推荐使用。
布局应注意的问题:
a. 布局的首要原则是保证布线的布通率,移动器件时注意飞线的连接,把有连线关系的器件放在一起
b. 数字器件和模拟器件要分开,尽量远离
c. 去耦电容尽量靠近器件的VCC
d. 放置器件时要考虑以后的焊接,不要太密集
e. 多使用软件提供的Array和Union功能,提高布局的效率
4.4 布线
布线的方式也有两种,手工布线和自动布线。
PowerPCB提供的手工布线功能十分强大,包括自动推挤、在线设计规则检查(DRC),自动布线由Specctra 的布线引擎进行,通常这两种方法配合使用,常用的步骤是手工—自动—手工。
(1)手工布线
自动布线前,先用手工布一些重要的网络,比如高频时钟、主电源等,这些网络往往对走线距离、线宽、线间距、屏蔽等有特殊的要求;另外一些特殊封装,如BGA,自动布线很难布得有规则,也要用手工布线。
自动布线以后,还要用手工布线对PCB的走线进行调整。
(2)自动布线
手工布线结束以后,剩下的网络就交给自动布线器来自布。
选择
Tools->SPECCTRA,启动Specctra布线器的接口,设置好DO文件,按Continue 就启动了Specctra布线器自动布线,结束后如果布通率为100%,那么就可以进行手工调整布线了;如果不到100%,说明布局或手工布线有问题,需要调整布局或手工布线,直至全部布通为止。
按照上述步骤得到单片机最小系统印制电路板如下:
图4-2 PCB印制电路板
4.5 检查
检查的项目有间距(Clearance)、连接性(Connectivity)、高速规则(High Speed)和电源层(Plane),这些项目可以选择Tools->Verify Design进行。
如果设置了高速规则,必须检查,否则可以跳过这一项。
检查出错误,必须修改布局和布线。
注意:有些错误可以忽略,例如有些接插件的Outline的一部分放在了板框外,检查间距时会出错;另外每次修改过走线和过孔之后,都要重新覆铜一次。
5 课程设计总结
通过这次这次课程设计,我基本上对Protel 99SE电子电路设计软件有了初步的了解。
Protel 99SE具有出色的用户管理技术,强大的自动化设计功能,灵活的编辑功能,简单方便的操作环境和完善的元件库管理能力。
因为protel是专业电路设计软件,可供电子类各专业设计人员和广大电子爱好者使用,所提供的零件库包含了相当全面的元器件符号图。
所以零件库数量很多,零件的数量更多,使初学者不知该到哪个零件库中去寻找所需的元器件。
根据笔者的经验,载入protel的Schematic中的DEVICE.LIB 和SYMBOLS.LIB可满足一般用户需求,两个零件库中含有二极管、三极管、电阻、电容、电感等常用元件。
在做课程设计时,我遇到了一些难题,但是通过查阅相关资料,请教同学等途径最终解决了问题,完成了课程设计任务:单片机最小系统电路图的设计。
首先在画原理图的时候,遇到困难,我课设题目是AT89S52单片机最小系统原理图,但是在元器件库里面没有我所需的芯片模块需要的图,我就自己去画芯片图样,但是由于对Protel不甚了解,画出来的图有错误,查阅资料后才知道相关引脚出问题。
通常绘制电路图的最后一项工作是编辑零件名称,包含放置元件的名称、序号、数值、管脚编号、管脚功能等。
后来画好了电路原理图,修改好参数后,创建网络列表时系统总是报错,
无论我怎样修改都不行,后来请教同学,他们也遇到了同样的困惑。
任何事
情都不可能是一帆风顺的,开始是创建网络表时出现问题,弄得整个人也显
得焦躁不已。
我知道是元器件封装问题,但是解决不了,后来才知道没有添
加自己所需的PCB元器件封装库,在网上查阅资料,下载通用元器件封装库
之后,添加进去问题就得到了解决。
Protel布线的方式也有两种,手工布线和自动布线。
PowerPCB提供的
手工布线功能十分强大,包括自动推挤、在线设计规则检查(DRC),自动
布线由Specctra的布线引擎进行,通常这两种方法配合使用,常用的步骤是
手工—自动—手工。
经过调整,我得到了满意的单片机最小系统印刷电路板。
Protel 99SE 的学习注重实际练习,练习多了便有了经验,经验积累多了便有了感觉,有了感觉便学会了Protel 。
所以在以后的学习中我定会从实际出发,加强练习。
参考文献
[1] 康华光主编.电子技术基础(模拟部分).高等教育出版社.2006年
[2] 文艳等编著.protel99SE电子电路设计.机械工业出版社.2006年
[3] 何希才编著.新型集成电路应用实例.电子工业出版社.2002年
[4] 张伟等编著.protel99SE高级应用.人民邮电出版社.2007年
[5] 张伟等编著.protel99SE入门与提高.人民邮电出版社.2007年
[6] 赵品编著.Protel99 入门与提高.人民邮电出版社.2000.11
实训课题单片机最小系统电路设计
一、实训目的
1、熟悉Protel DXP的操作
2、掌握用Protel DXP绘制原理图的方法
3、掌握用Protel DXP制作PCB板的方法
二、实训要求
利用protel DXP软件完成单片机最小系统的PCB板的设计。
三、实训内容
1、元件符号及封装编辑。
2、原理图绘制。
3、PCB板。
4、DRC报告。
四、报告内容、设计数据及附图
1、电路原理基本分析
2、电路模块功能的介绍。
(电源模块、单片机最小系统:复位
电路、晶振电路(离X1,X2引脚近些,否则不易起振)、P1口LED电路)
51单片机复位电路工作原理(网址:
/question/29532678
5.html)
1、复位电路的用途
单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。
单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。
2、复位电路的工作原理
在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。
所以可以通过按键的断开和闭合在运行的系统中控制其复位。
开机的时候为什么为复位
在电路图中,电容的的大小是10uF,电阻的大小是10k。
所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是
10K*10UF=0.1S。
也就是说在电脑启动的0.1S
内,电容两端的电压时在0~3.5V增加。
这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。
所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。
在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。
所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。
按键按下的时候为什么会复位
在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。
当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。
随着时间的推移,电容的电压在0.1S内,从5V 释放到变为了1.5V,甚至更小。
根据串联电路电压为各处之和,这个时候10K电阻两端的电
压为3.5V,甚至更大,所以RST引脚又接收到高电平。
单片机系统自动复位。
总结:
1、复位电路的原理是单片机RST引脚接收到2US以上的电平信号,只要保证电容的充放电时间大于2US,即可实现复位,所以电路中的电容值是可以改变的。
2、按键按下系统复位,是电容处于一个短路电路中,释放了所有的电能,电阻两端的电压增加引起的。
晶振电路的作用(网址:/view/18e6bc3731 126edb6f1a10f6.html)
电容大小没有固定值。
一般二三十p。
晶振是给单片机提供工作信号脉冲的。
这个脉冲就是单片机的工作速度。
比如12M晶振。
单片机工作速度就是每秒12M。
和电脑的CPU 概念一样。
当然。
单片机的工作频率是有范
围的。
不能太大。
一般24M就不上去了。
不然不稳定。
接地的话数字电路弄的来乱一点也无所谓。
看板子上有没有模拟电路。
接地方式也是不固定的。
一般串联式接地。
从小信号到大信号依次接。
然后小信号连到接地来削减偕波对电路的稳定性的影响,所以晶振所配的电容在10pf-50pf之间都可以的,没有什么计算公式。
但是主流是接入两个33pf的瓷片电容,所以还是随主流。
晶振电路的原理
晶振是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低的频率是串联谐振,较高的频率是并联谐振。
由于晶体自身的特性致使这两个频率的距离相当的接近,在这个极窄的频率范围内,晶振等效为一个电感,所以只要晶振的两端并联上合适的电容它就会
组成并联谐振电路。
这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄,所以即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。
晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。
一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等于负载电容,请注意一般IC的引脚都有等效输入电容,这个不能忽略。
一般的晶振的负载电容为15p或12.5p ,如果再考虑元件引脚的等效输入电容,则两个22p的电容构成晶振的振荡电路就是比较好的选择。
P1口LED电路
LED循环轮流点亮设计电路如图2所示。
将单片机第40脚Vcc接电源+5V,第20脚Vss
接地,为单片机工作提供能源。
将第19脚XTAL1与18脚XTAL2分别接外部晶体两个引脚,由石英晶体组成振荡器,保证单片机内部各部分有序地工作。
对外部C1、C2的取值虽然没有严格的要求,但电容的大小会影响到振荡器频率的高低、振荡器的稳定性、起振的快速性。
C1、C2通常取值C1=C2=30PF左右。
8051的晶振最高振荡频率为12M,AT89C51的外部晶振最高频率可到24M。
P1口定义为带有上拉电阻8位准双向I/O 口,功能单一,每一位可独立定义为输入输出,CPU对P1口操作可以是字节操作,也可以是位操作。
P1作为输出口使用时,它的内部电路已经提供了一个推拉电流负载,外接了一个上拉电阻,外电路无需再接上拉电阻,与一般的双向口使用方法相同;作为输入口使用时,应先向其锁存器写入“1”,使输出驱动电路的FET截止。
若不先对它置“1”,读入的数据是不准确的。
P1口输出控制程序的设计主要包括控制输出程序设计与延时程序设计。
(1)输出控制:当P1.5端口输出低电平,即P1.5=0,这时LED亮,反之,LED灭,可以使用P1.5=0指令使P1.5端口输出低电平,同样利用指令使P1.5端口输出高电平。
(2)延时程序:单片机指令的执行时间是很短的,数量大多是微秒级,因此,我们要求的闪烁时间间隔为0.2s,相对于微秒来说,相差太大,因此在执行某一指令时,插入延时程,来解决这一问题。
开关状态检测过程:
单片机对开关状态的检测相对于单片机来说,是从单片机的端口输入信号,而输入的信号只有高电平和低电平两种,要能正确输入信号,先使P1端口P1.0-P1.3置1。
可轮流检测每个开关状态,根据每个开关的状态让相应的二极管指示,也可以一次性检测四路开关状态,然后让其指示。