单片机最小系统
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
报告
软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载
课程名称: 基于单片机的方波信号发生器
院 系: 机电工程学院
专业班级: 机械制造及其自动化
学生姓名: 陈静
指导教师: 吴兆华
完成时间: 2010年06月15日
报告成绩:_____ _____________________
目录
一、概述 2
1.1、设计内容 3
1.2、设计目的 3
二、方波发生器设计
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
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,用到定时器中断和定时器延时。通过按键是否按下,来改变发生器的频率,以灯泡的闪亮时间长短来表示频率变化。设计中安装了电压转换器,讲12v电压转换成5v电压(因为我自己使用的电源是12v电压)。
三、系统的硬件设计
3.1、单片机最小系统
单片机各功能部件的运行都是以时钟频率为基准的,有条不紊地进行工作。因而时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路方式有两种:一种是内部时钟方式,一种是外部时钟方式,这里采用的是内部时钟方式,外接晶振。时钟电路由片外晶体、微调电容和单片机的内部电路组成。选取频率为12MHz的晶振,微调电容是瓷片电容。
89S52单片机的P0.7口作为波形输出口,若接示波器,则可通过示波器来观察波形,是一个矩形波。
此单元电路包括时钟电路、复位电路,具体电路如图1所示:
3.2、电路板的制作
Protel99功能强大,为我们进行电子电路原理图和印制板图的设计提供了良好的操作环境。用Protell99进行电路设计分为两大部分:原理图的设计和电路板的设计。原理图的设计实在SCH系统中进行的,电路原理图是印刷板电路设计的基础,只有设计好原理图才有可能进行下一步的电路板设计。
用protel99进行电路板设计的第一步是其原理图的设计。显然,原理图决定整个电路的基本功能,也是接下来生成网表和设计印刷板电路的基础。具体步骤如下:
(1)图面设置:
Protel99允许用户根据电路的规模设置图面的大小,按照偏好和习惯设置图面的样式。实际上,设置图面就是设置了一个工作平面,以后的工作就要在这个平面上进行。所以图面应该设置得足够大,为进一步工作提供一个足够大的工作空间。
(2)放置元件:
所谓放置元件就是从元件库中选取所需得元件,将其布置到图面上合适的位置,有时还要重定义元件的编号、封装。元件的封装很重要,要根据元件的实际尺寸和实际封装来决定,要是元件没封装好,将会给以后电路板的制作带来很大的麻烦。这些都是下一步工作的基础。Protel99为用户提供了一个非完备的元件库,并且允许用户对这个元件库进行编辑或者新建自己的元件库。
电路板的制作过程
(1) 打印:
将生成的PCB图打印到热转印纸上,需注意线不能太窄,墨要加重,否则制板时容易断线,如果在操作过程中断了线,可用电烙铁将锡带过。
(2) 熨烫:
将热转印纸覆在铜板上,用电熨斗进行熨烫,关键要注意熨烫的时间,不能太久,也不能时间太短,否则,太久会把铜板烫坏,不够的话墨迹覆不上去。
(3) 腐蚀:
把铜板放到三氯化铁溶液中腐蚀,需注意溶液浓度要较高,最好用热水配置,这样腐蚀更快,一般3分钟即可。如果时间过长,需剩下的铜线也可能被腐蚀。
(4) 打孔:
打孔时注意钻头尺寸,本次用的钻头大小是0.712mm的,最需注意的地方是集成块的管脚,如果打孔误差大,管座就很难插上。
(5) 放置元件:
放置前应先打磨一下打孔后留下的毛刺,并均匀地涂上松香水(目的是防止铜线氧化,易于焊锡覆着焊盘,但多涂会导致焊接时焊点变黑,影响美观)。放置元件时注意集成块的管脚,二极管和电解电容的正负,这些都是平时比较容易出错的地方。
(6) 焊接:
焊接技术比较难掌握,焊锡、烙铁与焊盘的位置关系,焊锡熔化时间
长短,松香水的浓度,烙铁的温度等等,都是影响焊点美观的因素。
(7) 检查:
检查是否有虚焊,集成块管脚位置是否正确,电源引线位置是否恰当等。检查完毕就能进行调试了。
四、程序流程图
图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--);
}
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软件调试
在软硬件协同调试时,硬件问题比较少,主要体现在上拉电阻的使用,滤波电容的使用等,极少发生逻辑上的错误。硬件的问题往往是致命的问题,其不易察觉,发现之后电路更改也不容易。这就需要我们不断的实验,在实战中摸索出规律,吸取经验教训,在以后的电路设计中能设计出稳定的抗干扰能力强的电路。