低频信号发生器.docx
- 文档编号:4721733
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:21
- 大小:1.38MB
低频信号发生器.docx
《低频信号发生器.docx》由会员分享,可在线阅读,更多相关《低频信号发生器.docx(21页珍藏版)》请在冰豆网上搜索。
低频信号发生器
低频信号发生器
-------毕业设计
学院:
班级:
学号:
姓名:
指导老师:
2012-5-12
第0章实验室基础3
第1章交换机基本配置7
1.1使用交换机的命令行管理界面7
1.2交换机的全局配置10
1.3交换机端口的基本配置12
1.4查看交换机的系统和配置信息14
第2章虚拟局域网VLAN16
2.1交换机端口隔离16
2.2跨交换机实现VLAN18
第3章提供交换网络中的冗余链路21
3.1端口聚合提供冗余备份链路21
3.2快速生成树配置24
第4章路由器的基本配置30
4.1使用命令行界面30
4.2路由器的全局配置33
4.3路由器端口的基本配置34
4.4查看路由器的系统和配置信息38
一、实验目的
1、学习和运用keilC的C语言;
2、学习通过proteus软件画原理图,并利用keilC软件形成的HEX文件运行;
3、实现利用单片机AT98C51和8位D/A转换芯片DAC0832共同实现方波、三角波、锯齿波、梯形波这四种常见波形的发生
4、进一步学习和利用protel软件,画出实验原理图,并生成PCB图;
5、AT89S51为核心的单片机系统的软硬件开发过程;
6、基本信号的产生原理及函数发生器系统的设计流程
二、实验要求
设计一个低频信号发生器:
1、查阅相关资料,完成原理图设计;
2、编写软件,使该系统能输出方波、三角波、锯齿波和梯形波;波形频率均为1khz,双极性输出。
3、用protel软件完成系统的硬件设计,并通过电器规则检查;
4、仿真实现;
5、画pcb图;
6、写综合课程设计报告。
三、器件清单
1、AT80C51一个;
2、DAC0832一个;
3、OPAMP两个;
4、数码管一个;
5、按键开关一个;
6、电阻、电感若干;
四、实验原理
#include
unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66}//01234
unsignedchartime1;//////延时函数参数///////
/////////////////////////////变量说明//////////////////////////////////////
unsignedchartime2;
unsignedchartime3;
unsignedcharcount;
unsignedcharms;
//////////////////////////函数说明////////////////////////////////
voidinitial(void);////初始化函数////
//void
initial_time0(void);//////定时器0初始化///////
voidanjian(void);////////////按键函数////
voiddelay(unsignedchartime1,time2,time3);////延时函数////
voiddisp(unsignedcharcount);/////静态显示子函数/////
voiddelay1(charms);
voidfangbo(void);//方波函数//
voidsanjiaobo(void);//三角波函数//
voidjuchibo(void);//锯齿波函数//
voidtixingbo(void);//正弦波函数//
voidmain(void)
{
initial();
while
(1)
{
anjian();
}
}
/*************************************************************************
//函数名称:
voidanjian(void)
//函数说明:
按键函数
//函数功能:
//注意:
*************************************************************************/
voidanjian(void)
{
if(P3_7==0)
{delay(1,50,248);
if(P3_7==0)
{count=1;
disp(count);
fangbo();
}
}
while(P3_7==0);
count=0;
disp(count);
anjian();
}
/*************************************************************************
//函数名称:
voidfangbo(void)
//函数说明:
方波函数
//函数功能:
//注意:
*************************************************************************/
voidfangbo(void)
{
while
(1)
{
unsignedcharfangbo_1;
fangbo_1+=8;
if(fangbo_1>128&fangbo_1<256){P0=0x00;}
if(fangbo_1<128){P0=0xff;}
if(P3_7==0)
{delay(1,50,248);
if(P3_7==0)
{count=2;
disp(count);
sanjiaobo();
}
}
while(P3_7==0);
}
}
/*************************************************************************
//函数名称:
voidsanjiaobo(void)
//函数说明:
三角波函数
//函数功能:
//注意:
*************************************************************************/
voidsanjiaobo(void)
{
while
(1)
{
unsignedcharsanjiaobo_2;
if(sanjiaobo_2<=128)
{P0=sanjiaobo_2;}
else
{P0=255-sanjiaobo_2;}
sanjiaobo_2+=5;
if(sanjiaobo_2>=255)
{sanjiaobo_2=0x00;}
if(P3_7==0)
{
delay(1,50,248);
if(P3_7==0)
{count=3;
disp(count);
juchibo();
}
}
while(P3_7==0);
}
}
/*************************************************************************
//函数名称:
voidjuchibo(void)
//函数说明:
锯齿波函数
//函数功能:
//注意:
*************************************************************************/
voidjuchibo(void)
{
while
(1)
{
unsignedcharjuchibo_3;
if(juchibo_3<180){P0=juchibo_3;}
juchibo_3+=4;
if(juchibo_3>=180){juchibo_3=0x00;}
if(P3_7==0)
{
delay(1,50,248);
if(P3_7==0)
{count=4;
disp(count);
tixingbo();
}
}
while(P3_7==0);
}
}
/*************************************************************************
//函数名称:
voidtixingbo(void)
//函数说明:
梯形波函数
//函数功能:
//注意:
*************************************************************************/
voidtixingbo(void)
{
while
(1)
{
unsignedchartixingbo_4;
if(tixingbo_4<120)
{P0=tixingbo_4;}
elseif(tixingbo_4==120)
delay1
(1);
elseif(tixingbo_4<240)
{P0=240-tixingbo_4;}
if(tixingbo_4==240)
{delay1
(1);}
if(tixingbo_4>240)
{
tixingbo_4=0x00;
}
tixingbo_4+=10;
if(P3_7==0)
{delay(1,50,248);
if(P3_7==0)
{count=0;
disp(count);
anjian();
}
}
while(P3_7==0);
}
}
/*************************************************************************
//函数名称:
voidinitial(void)
//函数说明:
初始化函数
//函数功能:
//注意:
*************************************************************************/
voidinitial(void)
{
P0=0xff;
P1=0xff;
P2=0xff;
P3=0xff;
}
/*************************************************************************
//函数名称:
delay(unsignedchartime1,time2,time3)
//函数说明:
延时函数
//函数功能:
//入口参数:
unsignedchartime1,time2,time3
//出口参数:
//注意:
延时时间的计算:
(time1*time2*time3*8us)us
time1,time2,time3可以不进行变量说明
*************************************************************************/
voiddelay(unsignedchartime1,time2,time3)
{
unsignedchari,j,k;
for(i=time1;i>0;i--)
{for(j=time2;j>0;j--)
{
for(k=time3;k>0;k--);
}
}
}
/*************************************************************************
//函数名称:
disp(unsignedcharcount)
//函数说明:
静态显示子函数
//函数功能:
//入口参数:
unsignedcharcount
//出口参数:
//注意:
*************************************************************************/
voiddisp(unsignedcharcount)
{
P2=table[count];
delay(1,5,248);
}
voiddelay1(charms)
{
charti;
while(ms--)
{
for(ti=0;ti<16;ti++){}
}
}
实验心得
通过该课题的设计掌握以AT89S51为核心的单片机系统的软硬件开发过程和基本信号的产生原理、测量及误差分析方法,同时掌握函数发生器系统的设计流程;培养我们综合运用所学的基本知识、基本理论和基本技能的能力,学习解决一般工程技术和有关专业问题的能力,学习工程设计和科学研究的基本方法,完成对所学知识的综合训练。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 低频 信号发生器