电子设计应用软件训练总结报告
电子设计应用软件训练总结报告
一、 任务说明
1、熟练掌握 PROTEUS 软件的使用; 2、按照设计要求绘制电路原理图; 3、能够按要求对所设计的电路进行仿真,本课设的任务是设计一个数显频率计电路, 要求能够测量 10Hz 至 10KHz 的方波信号的频率,峰值 5V,并使用数码管显示输入 信号的频率。
二、原理图绘制说明
电路原理图的设计与绘制是整个电路设计的基础,电路原理图的设计与绘制的 流程,包括设置电路图纸、放置元器件、调整元器件的布局、放置导线等步骤。 因为欲实现的功能是数显频率计,测试方波的频率并通过数码管显示,所以在 此次绘制的原理图中,应用的 52 单片机,五个个七段数码管,取 P1 口的前五段连 接位选端,P2 口的八个端口分别连接数码管的各段。 打开 PROTEUS 软件,在原理图编辑窗口绘制电路图。在该界面环境下,还有 预览窗口和元件列表区。编辑窗口用于放置元器件,进行连线,绘制原理图。预览窗 口可以显示全部原理图。左侧工具箱中,还有供使用的工具。 在 PROTUSE 软件中进行绘制原理图主要有以下几个步骤: (1)要建立设计文件,选择合适的模板,并保存在预先建立好的文件夹中。在 Proteus 7.4 Professional 中点击“File”->“New design”可以根据设计的规
模选择页面的大小,本次设计应用的是 A4 图纸,如图 1 所示。
1
电子设计应用软件训练总结报告
图 1 页面大小选择
(2)利用软件的搜索功能在元件库中找到需要的元件,放置到图纸的合适位置, 并分别设置好各个元器件的参数,再在需要的位置放置图形文本框。点击“Library” ->“Pick Devices”可以在弹出的对话框(如图 2 所示)中填写需要的元器件名称, 通过这种方式, 就可以找到并放置相应的器件了。 我们可以看到器件的一些基本信息, 如管脚数目和 PCB 图形样式等。
图 2 元器件查找和选择
该设计中所用到的原件及其所在库如表一所示。
2
电子设计应用软件训练总结报告 表一 元器件及其所在库 符号 R1、R2 X1 KEY 名称 电阻 晶振 按键 库 Resistors Miscellaneous Switches&Relays 符号 C1 U1 Mpx6 名称 电容 AT89S52 数码管 库 Capacitors MicroprocessorICs Optoelectronics
(3)对元件进行连线:按照电路原理图把元器件连接起来,首先选定
按钮对
元件进行连接。有时连线太多会造成连线重叠在一起这时可对连接在一起的线进 行相同的标号即表示二者是连在一起的。 (4)最后,对所绘制的电路原理图进行检查,如有错误就要作进一步的调整与 修改,以保证原理图准确无误。并在绘制原理图结束后,保存原理图文件。 根据设计任务最终实现的原理图如图 3 所示:
图 3 电路原理图
二、
流程图绘制以及说明
用 C 语言编写实现电路要求功能的源程序, 应用 keil 软件编写并编译运行程序, 最终与电路原理图相连接,仿真实现其功能。 设计该电路的整体思路是,通过外部中断对脉冲下降沿进行计数,定时 1s 读外 部中断计数值,通过五位数码管动态显示。执行程序时,借助查表得到这些数,再将
3
电子设计应用软件训练总结报告
这些数送到芯片的 P2 端口, 由此来显示数字, 只有外部中断到达 4000 次时数码管会 显示下一时刻的值。这样就可以实现了要求的功能。 对于初始化程序,我们设定了开中断,启动定时器 0,允许定时器 0 中断请求及外 部中断 0 的中断请求,对于定时器 0 设定其工作在方式 2 即两个八位重装载计数器/ 定时器,由于我们设定的计数值为 250us,所以定时器的计数初值为 256-250=6。 主程序流程图如图 4 所示。
图 4 程序流程图
三、 PROTEUS 仿真说明
整个设计在 PROTEUS 中的仿真是首先通过 keil 软件进行芯片初始化和具体功能的
4
电子设计应用软件训练总结报告
编程,随后将编写完毕的程序导入 PROTEUS 软件中的对应芯片中,以达到驱动芯片完 成工作的目的。 在 keil 软件中仿真结束后,需要将生成的“.HEX”文件导入 PROTEUS 软件中的对 应芯片中,具体操作方法是:调出之前连接好的电路图,用左键点击 80C52 芯片,在 弹出的对话框的相应位置中设定调用“.HEX”文件的路径如图 5 所示,即将包含驱动 和具体功能的程序写入到 80C52 芯片之中使其能够按要求工作。
图 5 HEX 文件写入
点击左下角的运行键,使整个电路开始运行,以查看电路的具体功能是否能够完全实 现。设定待测信号频率为 2kHZ,如图 6 所示:
图6
频率的选择界面
5
电子设计应用软件训练总结报告
数码管的显示如图 7 所示:
图 7 仿真结果
四、 体会及合理化建议
电子设计是高等工科院校的重要专业基础课程之一, 是一门理论性和实践性都很 强的课程, 它最终目的在于将模拟电子技术和数字电子技术理论学习与实践各个环节 有机地结合起来。单片机在电子方面的应用是十分广泛的,这次的软件训练过程中主 要针对单片机的实际应用。经过近一个星期的努力,我顺利的完成了本次课程设计的 任务。通过此次实验,我对单片机语言的理解和使用有了一个更为深入的认识。并且 较为熟练的掌握 PROTEUS 软件的使用;按照设计要求绘制电路原理图;并能够按要求 对所设计的电路进行仿真。 为我以后的工作和学习打下了一个好基础。在课程设计过程中,我遇到了一些问 题,通过查询资料和结合平时学到的知识,问题得到了解决,无疑,这是对我分析和 解决问题的能力的一次有效检验。同时,这次课设,也增强了我的动手能力,培养了 我动心动脑去体验我的生活,去动脑把平时的生活现象与所学的东西结合起来。虽然 这次的课程设计对我们来说,时间上比较紧,造成了一定的困难,让我们的精神一直 绷着,但通过几天来紧张的努力,终于顺利的完成了课程设计的任务,收获很大。 希望今后能够多多出现和日常生产生活紧密相关的题目, 为我们的工作和学习打 下一个好基础。真正将学习和生活联系起来。
6
电子设计应用软件训练总结报告
参考文献
[1] 林伸茂. 8051 单片机彻底研究基础篇.[M]北京:人民邮电出版社,2004 年. 100 页--105 页. [2] 毛谦敏.单片机原理及应用系统设计. [M]北京:国防工业出版社,2005 年. 131 页—131 页. [3] 蔡明文. 课程设计.[M]武汉:华中科技大学出版社,2007 年.54 页—59 页. [4] 张毅刚. 单片机原理及应用.[M]哈尔滨:哈尔滨工业大学出版社,2007 年. 64 页—66 页. [5] 姜志海. 单片微型计算机原理及应用.[M]北京:机械工业出版社 2006 年。 [6]周润景, 袁伟亭. 基于 PROTUSE 的 ARM 虚拟开发技术.[M] 北京航空航天大学出版 设,2007 年。第 32-39 页 [7] 张伟.单片机原理及应用,[M]北京:机械工业出版社,2005 年 3 月.216—218. [8] 薛栋梁.单片机原理及应用,[M]北京:中国水利水电出版社.2001 年.35-29.
7
电子设计应用软件训练总结报告
附录 I 电路原理图
8
电子设计应用软件训练总结报告
附录 II 程序清单
#include <reg52.h> #define uchar unsigned char #define uint unsigned int uint temp; uint TimeNum=0; uint PulseNum=0; unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void Init0(void) { EA=1; ET0=1; EX0=1; TMOD=0x02; IT0=1; TL0=6; TH0=6; TR0=1; } void delay10ms() { uchar a,b; for(a=10;a>0;a--) for(b=60;b>0;b--); } //delay
void main() { uchar A1,A2,A3,A4,A5; Init0(); while(1) { if(TimeNum>=4000) { temp=PulseNum; PulseNum=0; TimeNum=0; } A1=temp/10000; A2=(temp%10000)/1000;
9
电子设计应用软件训练总结报告 A3=(temp%10000)%1000/100; A4=(temp%10000)%1000%100/10; A5=(temp%10000)%1000%100%10; P1=0x0f; P2=table[A1]; delay10ms(); P1=0x17; P2=table[A2]; delay10ms(); P1=0x1b; P2=table[A3]; delay10ms(); P1=0x1d; P2=table[A4]; delay10ms(); P1=0x1e; P2=table[A5]; delay10ms(); } } void { PulseNum++; } void time0() interrupt 1 { TimeNum++; } int0() interrupt 0
10