ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:692.70KB ,
资源ID:29655828      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/29655828.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件课程设计课程设计.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件课程设计课程设计.docx

1、软件课程设计课程设计软件课程设计课程设计沈阳航空航天大学电子信息工程学院电子设计应用软件训练总结报告专业:电子信息工程学院训练时间:2013年 7月1日至 2012年7月12日电子信息工程学院电子设计应用软件训练任务一 、训练任务1、PROTEL 部分(1) 熟练掌握PROTEL 软件的使用;(2) 按要求绘制电路原理图和PCB 版图(能够用自动布线和手动布线相结合);(3) 能够按要求建立元件库和封装库。2、软件设计部分按照给定的软件设计任务完成相应的软件设计(见软件设计任务部分)。二、基本要求及说明1、PROTEL 部分(1) 电路原理图图纸尺寸按照给定的任务作相应的设置;(2) 电路原理

2、图见PROTEL 训练任务部分;(3) 按指定电路图在PROTEL 99 中绘制原理图和印制板图;(4) 按照给定要求创建原理图器件和该器件的相应的封装(见PROTEL训练任务部分)。查找资料, 按资料创建原理图中某一元件及其封装形式;2、软件设计部分按软件设计要求实现相应的功能(见软件设计任务部分)三、按照要求撰写总结报告成绩评定表评语、建议或需要说明的问题:指导教师签字: 日期:成 绩PROTEL 训 练 任 务Protel部分一、任务说明 1.熟练掌握PROTEL 软件的使用; 2.按要求绘制电路原理图和PCB 版图(能够用自动布线和手动布线相结合); 3.能够按要求建立元件库和封装库。

3、二、原理图绘制说明并新建一个元件库1.新建设计数据库文件打开Protel 99,应先建立数据库,点击File中的new,Database File Name处可输入设计库存盘文件名,点击Browse改变存盘目录,单击OK,即可建立设计数据库。如下图1。图1新建设计数据库选取File/New.打开New Document对话框,如图,选取Schematic Document建立一个新的原理图文档。如图2。图2新建原理图文档选择菜单中的Ddesign/Options命令,系统将弹出Document Options对话框,并在其中选择Sheet Options选项卡进行设置接下来要设置电路图图纸信息

4、,将电路原理图图纸设置为A4尺寸。如图3所示。 图3 页面大小设置Win7系统无法添加库,在EDA实验中心如果在library找不到对应元件,点击Add/Remove按钮,屏幕将出现“元件库添加、删除”对话框。在Design Explorer 99LibrarySch文件夹下选取元件库文件,然后点击Add按钮,此元件库就会出现在Selected Files框中,然后点击OK按钮,完成该元件库的添加。如图4所示。图4 元件库添加、删除2.元件库的建立由于有的元件在库中找不到,我们可以自己新建元件库,建好后的元件库如图5所示,共自建三个原件图5 自建的元件库3绘制导线单击Wiring Tools工

5、具栏中的有两条线的图标,光标变成十字形,单击鼠标左键确定导线的起点,在导线的终点处单击鼠标左键确定终点,单击鼠标右键,则完成了一段导线的绘制,此时仍为绘制状态,将光标移到新导线的起点,单击鼠标左键,按前面的步骤绘制另一条导线,最后单击鼠标右键两次退出绘制状态。绘制好的原理图如图附录I所示。三、 印制板图绘制说明1生成网络表文件打开原理图文件,执行菜单命令Design|CreateNetlist,系统弹出Netlist Creation网络表设置对话框,如图6所示。 图6电气规则检查 如果此时检查没有错误,检查结果如图7所示 图7电气规则检查结果当我们设计好原理图,在进行了ERC电气规则检查正确

6、无误后,就要生成网络表,为PCB布线做准备。在“Design”下选取“Create Netlist”对话框,设置为那种格式的网络表。网表生成后,就可以进行PCB设计了。如图8所示。 图8 网络表的生成 生成的网络表如图9所示图9生成的网络表2元件封装的创建如果原理图中的元件的封装形式在封装库中没有,需要自己建立,在自己的封装库中建立如下:首先根据任务书中给的尺寸距离,开始在封装库中放置焊点,放置焊点时光标变为十字,中间带有一个焊盘,移动光标使焊盘到达合适的位置后,单击鼠标将其定位,将工作层面切换到顶层布线层,执行菜单命令画线,然后画出绘制元件的外形轮廓方形。将原件重新命名,这样该元件的封装就成

7、功创建了。3.绘制印制板图新建PCB文件,在“Documents”中新建“Sheet1.Pcb”,如图10所示。图10 新建Sheet1.Pcb 在PCB文档界面下点击“Design”菜单下的“Netlist”,然后通过浏览找到自己新建的扩展名为.NET的文件,这样就把网络表导入到PCB文件中了,如果没有错误就开始布线,选择自动布线。完成布线结果见附录图。四、 总结通过这次protel课程设计,我基本了解了软件的使用,同时在老师的指导下能够完成两张图的制作,学到了不少知识,也开拓了视野。五、参考文献.赵建领Protel 99 SE设计宝典第2版 ,M北京:电子工业出版社,2011.邓奕Prot

8、el 99 SE原理图与PCB设计,M北京:人民邮电出版社,2011.杜刚电路板设计与制作:Protel应用教程主编,M清华大学出版社 2010 .陈强Protel电路设计入门与实例,M中国电力出版社 2009 .蔡杏山零起步轻松学Protel99 SE电路设计,M人民邮电出版社 2007 附录I 电路原理图附录II 印制板图软 件 设 计 任 务题目猴子吃桃子问题内容及要求:有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个,到了第10天就只余下一个桃子。用多种方法实现求出原来这群猴子共摘了多少个桃子。要求:1.采用数组数据结构实现上述求解2.采用链数据结构实现上述求解一、任务说

9、明根据题目要求,设猴子共摘的桃子个数为n即是第一天桃子的个数n1, 第第二天时桃子个数n2,第三天时桃子个数n3,第四天时桃子个数n4,第五天时桃子个数n5,第六天时桃子个数n6,第七天时桃子个数n7,第八天时桃子个数n8,第九天时桃子个数n9,第十天时桃子个数n10。由题中“每天都吃当前桃子的一半且再多吃一个”很容易知道n10=1,n9-(n9/2+1)=n10,n8-(n8/2+1)= n9 依次推出公式:ni-1-(ni-1/2+1)= ni(0。即ni-1= 2*(ni+1)(0。二、软件设计过程及流程图1软件设计过程数组求解法分析分析:声明一个长度为10的整形数组a10,分别存放各天

10、猴子吃前的桃子数。下图1所示:n1n2n3n4n5n6n7n8n9n10a0 a1a2a3a4a5a6a7a8a9图1 数组元素分布图先将a9赋值为1,用一个循环语句for(inti=8;i=0;i-)ai=2*(ai+1+1);为其余各数组元素赋值,则数组元素a0的值便是该问题的解。数据类型定义:int a10;a9=1;链表求解法分析分析:建立单链表,声明一个类用来对链表的结点指针进行定义,在初始化函数中利用头插法创建具有10个元素的链表,并依次安公式ni-1= 2*(ni+1)(0。赋值得到一个如图2所示的链表。head图2 链表结点逻辑结构图那么N1便是要求问题的解。数据类型定义:cl

11、ass listpublic: int data;class list *next; void push();typedef class list node; /建立单链表(将class重定义为node)typedef node *link; /定义结点指针2流程图数组求解法 NY图三 链表求解法 N Y图四三、程序调试过程以及实验结果数组求解法 图五链表求解法图六调试分析数组求解模块的时间复杂度:因为其中循环for(i=8;i=0;i-),因此其时间复杂度为O(9).数组求解模块的空间复杂度:因为不需要输入任何数据,所以该算法为原地工作。链表求解模块的时间复杂度:因为算法中用到一个循环来输出

12、,因此其时间复杂度为O(9).链表求解模块的空间复杂度:原地工作。调试基本无错误,仅字体及符号的错误,很容易便改正过来。软件可以很快算出猴子吃桃的个数四、结论各算法特点及在例题功能扩展:数组的使用要先确定其长度,有时候会造成空间浪费,但是存取方便;用链式存储方式是一种动态的存储,长度是不用规定的,需要用指针来找到元素所在存储单元;而递归算法,存储空间要得少,但要知道准确计算函数,相对比较难。在本例题中,我们可以通过对各种方法,利用for循环进行输出,就得到每一天桃子的剩余量。五、参考文献1 李云清,杨庆红.数据结构(C语言版).北京:人民邮电出版社,2004.2 严蔚敏,吴伟民.数据结构(C语

13、言版).北京:清华大学出版.1997.3 苏光奎,李春葆.数据结构导学.北京:清华大学出版.2002. 4 周海英,马巧梅,靳雁霞.数据结构与算法设计.北京:国防工业出版社,2007.5 张海藩. 软件工程导论. 北京:清华大学出版社.2003.六、程序清单用数组数据结构实现上述求解#includevoid main()inti,tao10;tao9=1;/tao9代表第10天剩的桃子数for(i=8;i=0;i-)taoi=2*(taoi+1+1); printf(共摘了%d个桃子!n,tao0);用链数据结构实现上述求解#include#include#define NULL 0typed

14、efstructlinknodeint data;structlinknode *next;node;node *head;void creat()node *p,*s;int peaches=1;int day=10;head=(node*)malloc(sizeof(node);p=head;while(day0)s=(node*)malloc(sizeof(node);s-data=peaches;p-next=s;p=s;peaches=(peaches+1)*2;day-;p-next=NULL; p=head;head=head-next;free(p);void print()node *p; p=head;int day=10;while(p&day0)printf(%d:%dn,day,p-data);p=p-next;day-;void main() creat();print();

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1