方波信号发生器设计方波信号发生器设计
单片机最小系统设计报告
课程名称: 基于单片机的方波信号发生器 院 系: 机电工程学院 专业班级: 机械制造及其自动化 学生姓名: 陈静 指导教师: 吴兆华 完成时间: 2010年06月15日 报告成绩:_____ _____________________
目录
一、概述 ------------------------------------------------------------------ 2
1.1、设计内容 -----------------------------------...
方波信号发生器设计
单片机最小系统设计
课程名称: 基于单片机的方波信号发生器 院 系: 机电
学院 专业班级: 机械制造及其自动化 学生姓名: 陈静 指导教师: 吴兆华 完成时间: 2010年06月15日 报告成绩:_____ _____________________
目录
一、概述 ------------------------------------------------------------------ 2
1.1、设计内容 ------------------------------------------------------ 3
1.2、设计目的 ------------------------------------------------------ 3 二、方波发生器设计
---------------------------------------------------- 3 三、系统的硬件设计 -------------------------------------------------------- 4
3.1、单片机最小系统 ------------------------------------------------ 4
3.2、电路板的制作 -------------------------------------------------- 5 四、程序流程图 ------------------------------------------------------------ 7
五、单片机程序设计清单----------------------------------------------------- 7
--- 9 六、电路板连接图--------------------------------------------------------七、调试与性能分析 -------------------------------------------------------- 9
7.1硬件调试 -------------------------------------------------------- 9
7.2软件调试 -------------------------------------------------------- 9 八、设计体会 ------------------------------------------------------------- 10 参考文献 ----------------------------------------------------------------- 11
方波信号发生器设计
一、概述
单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。 1.1、设计内容
设计一个频率可调的方波发生器,方波脉宽为2us~10ms,步进100us。 1.2、设计目的
1、通过本次实验,掌握单片机I/O口的使用,4位7段数码管动态显示数据的方法
以及DAC0832的用法;
2、通过对单片机的使用和编程,了解单片机的应用编程;
3、掌握单片机C语言设计和分析方法;
4、学会使用并熟练掌握电路绘制软件Protel99SE;
5、掌握电路图绘制及PCB图布线技巧。
二、方波发生器设计方案
在电子技术领域中,实现方波发生器的方法有很多种,可以采用不同的原理及器件构成不同的电路,但可以实现相同的功能。在此次设计中,有些地方与课
原本的具体要求有点不同。如实现频率调节时,不是按要求步进1us,那样频率显示太快,不容易辨别,所以采用步进100us。
本设计中使用芯片AT89S52,用到定时器中断和定时器延时。通过按键是否按下,来改变发生器的频率,以灯泡的闪亮时间长短来表示频率变化。设计中安装了电压转换
3
器,讲12v电压转换成5v电压(因为我自己使用的电源是12v电压)。 三、系统的硬件设计
3.1、单片机最小系统
单片机各功能部件的运行都是以时钟频率为基准的,有条不紊地进行工作。因而时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路方式有两种:一种是内部时钟方式,一种是外部时钟方式,这里采用的是内部时钟方式,外接晶振。时钟电路由片外晶体、微调电容和单片机的内部电路组成。选取频率为12MHz的晶振,微调电容是瓷片电容。
89S52单片机的P0.7口作为波形输出口,若接示波器,则可通过示波器来观察波形,是一个矩形波。
此单元电路包括时钟电路、复位电路,具体电路如图1所示:
图1 单片机最小系统
3.2、电路板的制作
Protel99功能强大,为我们进行电子电路原理图和印制板图的设计提供了良好的操作环境。用Protell99进行电路设计分为两大部分:原理图的设计和电路板的设计。原理图的设计实在SCH系统中进行的,电路原理图是印刷板电路设计的基础,只有设计好原理图才有可能进行下一步的电路板设计。
用protel99进行电路板设计的第一步是其原理图的设计。显然,原理图决定整个电路的基本功能,也是接下来生成网表和设计印刷板电路的基础。具体步骤如下:
(1)图面设置:
Protel99允许用户根据电路的规模设置图面的大小,按照偏好和习惯设置图面的样式。实际上,设置图面就是设置了一个工作平面,以后的工作就要在这个平面上进行。所以图面应该设置得足够大,为进一步工作提供一个足够大的工作空间。
)放置元件: (2
所谓放置元件就是从元件库中选取所需得元件,将其布置到图面上合适的位置,有时还要重定义元件的编号、封装。元件的封装很重要,要根据元件的实际尺寸和实际封装来决定,要是元件没封装好,将会给以后电路板的制作带来很大的麻烦。这些都是下一步工作的基础。Protel99为用户提供了一个非完备的元件库,并且允许用户对这个元件库进行编辑或者新建自己的元件库。
电路板的制作过程
(1) 打印:
将生成的PCB图打印到热转印纸上,需注意线不能太窄,墨要加重,否则制板时容易断线,如果在操作过程中断了线,可用电烙铁将锡带过。
(2) 熨烫:
将热转印纸覆在铜板上,用电熨斗进行熨烫,关键要注意熨烫的时间,不能太久,也不能时间太短,否则,太久会把铜板烫坏,不够的话墨迹覆不上去。
(3) 腐蚀:
5
把铜板放到三氯化铁溶液中腐蚀,需注意溶液浓度要较高,最好用热水配置,这样腐蚀更快,一般3分钟即可。如果时间过长,需剩下的铜线也可能被腐蚀。
(4) 打孔:
打孔时注意钻头尺寸,本次用的钻头大小是0.712mm的,最需注意的地方是集成块的管脚,如果打孔误差大,管座就很难插上。
(5) 放置元件:
放置前应先打磨一下打孔后留下的毛刺,并均匀地涂上松香水(目的是防止铜线氧化,易于焊锡覆着焊盘,但多涂会导致焊接时焊点变黑,影响美观)。放置元件时注意集成块的管脚,二极管和电解电容的正负,这些都是平时比较容易出错的地方。
(6) 焊接:
焊接技术比较难掌握,焊锡、烙铁与焊盘的位置关系,焊锡熔化时间
长短,松香水的浓度,烙铁的温度等等,都是影响焊点美观的因素。
(7) 检查:
检查是否有虚焊,集成块管脚位置是否正确,电源引线位置是否恰当等。检查完毕就能进行调试了。
四、程序流程图
定时器设初值
按键是否按下
开定时器
是 否
定时是否到达
延时消抖
否
是
T0_over_num
加100或减100 pulse_out=!pulse_out
图2 程序流程图 五、单片机设计程序清单
#include
#define uint unsigned int
#define uchar unsigned char uint i,z,T0_cnt,T0_over_num; sbit pulse_out=P0^1;
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
7
}
void timer0() interrupt 1
{ T0_cnt++;
TH0=(65536-1)/256;
TL0=(65536-1)%256;
if( T0_cnt>=T0_over_num)
{ T0_cnt=0;
pulse_out=!pulse_out;
}
}
main()
{
pulse_out=0;
T0_cnt=0;
T0_over_num=5000;
TMOD |= 0x01;
TMOD &= 0xfd;
TH0=(65536-1)/256;
TL0=(65536-1)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{ P2=0xff;
i=P2;
if(i!=0xff)
delay(5);
if(i!=0xff)
{ switch (i)
{
case 0xfe: T0_over_num=T0_over_num+100;
if(T0_over_num==10000)
T0_over_num=2;
break;
case 0xfd: T0_over_num=T0_over_num-100;
if(T0_over_num==2)
T0_over_num=10000;
break;
}
}
}
}
六、电路板连接图
七、调试与性能分析
7.1硬件调试
硬件的测试首先是检查电路的逻辑线路是否正确,如果正确再检查原理图的线路连接是否正确,电路的布局安排是否合理等等。软件的测试只要是检查程序的语法是否正确,数据结构安排是否妥当,时序是否正确,整体流程安排是否合理。上面两部检查妥当后,就到了系统调试最关键的一步,软硬件的协同调试,问题往往在此才能被发现。 7.2软件调试
在软硬件协同调试时,硬件问题比较少,主要体现在上拉电阻的使用,滤波电容的使用等,极少发生逻辑上的错误。硬件的问题往往是致命的问题,其不易察觉,发现之后电路更改也不容易。这就需要我们不断的实验,在实战中摸索出规律,吸取经验教训,
9
在以后的电路设计中能设计出稳定的抗干扰能力强的电路。
调试过程:
1、保证电路板连接正确后,接上电源,测试最小系统是否工作;
2、观察灯泡是否按照预期情况闪烁,如果不相符,分析原因。找出问题的所在,解决问题,直到显示正确为止。
实验过程中的问题及改进方法:
1、制作电路板过程中由于焊接等原因,造成电路连接不通现象,浪费了调试时间。
2、在实际调试过过程中,由于对最小系统不熟悉,而导致开始时候最小系统不工作,复位电路没有反应,在同学的帮助下,找到了问题,调整了焊线,使系统显示正确了。 八、设计体会
在单片机课程设计中,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。
但是,由于平时对单片机知识学习得不够扎实,理解得不够透彻、一知半解,致使在运用是不能贯通,导致在设计过程中困难重重,往往无从下手,但是通过和同组的同学一起探讨,最后还是一步一步的把所有的问题给一一解决了。在这次设计过程中,我也对word、protel、画图板等软件有了更进一步的了解,这使我在以后的学习中更加熟练。
总之,本次单片机课程设计让我悟出了许多东西:第一,就是对的搜索、整理、归类、总结、保存的能力是一个至关重要的个人能力。如果没有这种能力,在大学学习阶段,那么我们的学习将会是一种负担;今后我们走出校门,甚至在整个人生阶段,也将会碌禄无为;第二,我们要学会坚持不懈,不轻易言弃,这对于我们非常的重要。如果我们没有这种精神,一旦我们遇到一点挫折,我们也许就会被打败,以后进入社会就会没有我们的立足之地。因此,我们要珍惜大学时光,循序渐进的培养这些能力,这样
才不会被瞬息万变的时代所淘汰。
参考文献
[1] 何立民.MCS51单片机应用系统设计[M].北京:北京航空航天大学出版社,2003. [2] 徐君毅.单片微型机原理与应用[M].上海:上海科技出版社,1995 [3] 公茂法.单片机人机接口实例集[M].北京:航空航天大学出版社,1998. [4] 沈红卫.基于单片机的智能系统设计与实现[M].北京:电子工业出版社, 2005. [5] 李广弟,朱月秀等.单片机基础[M].北京:北京航空航天大学出版社, 2003.
11
本文档为【方波信号发生器设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。