低频信号发生器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图(2)
2.4、放大电路部分
放大电路部分,该部分主要是由两个放大电路组成,第一个放大电路的作用主要是将单片机输出的微弱的电流信号转换为电压信号,第二级放大电路的作用是对微弱的电压信号进行放大,将其放大到设计要求的范围之内。放大电路如下图(3)所示:
图(3)
2.5、滤波电路部分
滤波电路部分,在第二个运算放大器的输出端连了一个二阶低通滤波器。如果不加低通滤波器,也能够生成波形,但是产生的信号中毛刺很多,加一个低通滤波器不仅起到的滤波的作用,还起到了平滑的作用。
0x30, 0x2f, 0x2d, 0x2c, 0x2a, 0x29, 0x27, 0x26,
0x24, 0x23, 0x21, 0x20, 0x1e, 0x1d, 0x1b, 0x1a,
0x18, 0x17, 0x15, 0x14, 0x12, 0x11, 0x0f, 0x0d,
0x0c, 0x0a, 0x09, 0x07, 0x06, 0x04, 0x03, 0x01,
经比较,方案四既可满足课程设计的基本要求又能充分发挥其优势,电路简单,易控制,性价比高,所以采用该方案.
2、幅度改变方案
方案一:可以将送给DA的数字量乘以一个系数,这样就可以改变DA输出电流的幅度,从而改变输出电压;但是这样做有很严重的问题,单片机在做乘法运算时需要很长的时间,这样的话输出波形的频率就会很低,达不到至少500HZ的要求;
sbitADC_CS = P2^6;
sbitADC_WR = P2^7;
sbitled = P2^0;
sbitkey1 = P3^2;
sbitkey2 = P3^3;
//------------------------------------------------正弦波编码表
unsignedchar codesine_table[]=
0x75, 0x74, 0x74, 0x73, 0x72, 0x72, 0x71, 0x70,
0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6c, 0x6b, 0x6a,
0x69, 0x68, 0x67, 0x66, 0x66, 0x65, 0x64, 0x63,
0x62, 0x61, 0x60, 0x5f, 0x5e, 0x5d, 0x5b, 0x5a,
滤波电路的原理图如图(4)所示:
图(4)
本设计系统的原理图如图(5)所示:
图(5)
二、系统测试
2.1、测试条件
单一电源+5V、同相放大电路电压
2.2、测试仪器
数字万用表、双踪示波器、双路稳压电源
2.3、系统模块的检测
每做好一个模块,都连上电源,用数字万用表和示波器检测模块电路是否能正常使用。
2.4、测试数据
0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c,
0x7c, 0x7c, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x79,
0x79, 0x79, 0x78, 0x78, 0x77, 0x77, 0x76, 0x75,
2.5、整机测试实测指标总结
波形频带范围:90HZ~1500HZ 正弦波幅值与三角波比例1:2
正弦波与三角波周期比例:3:2 幅值可调范围:0V~12V
三、软件设计
3.1、软件流程图
3.2、系统C语言主程序
#include<reg51.h>
#define DAC P1
sbitADC_ILE = P2^5;
2.3、DAC0832数模转换器
DAC0832数模转换器,由于单片机产生的是数字信号,要想得到所需要的波形,就要把数字信号转换成模拟信号,所以该文选用价格低廉、接口简单、转换控制容易并具有8位分辨率的数模转换器DAC0832。DAC0832主要由8位输入寄存器、8位DAC寄存器、8位D/A转换器以及输入控制电路四部分组成。根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:直通方式、单缓冲方式和双缓冲方式。本设计选用直通方式。DAC0832与单片机连接图如图(2):
0x30, 0x32, 0x33, 0x34, 0x36, 0x37, 0x39, 0x3a,
0x3b, 0x3d, 0x3e, 0x3f, 0x41, 0x42, 0x43, 0x45,
0x46, 0x47, 0x49, 0x4a, 0x4b, 0x4c, 0x4e, 0x4f,
0x50, 0x51, 0x52, 0x54, 0x55, 0x56, 0x57, 0x58,
0x59, 0x5a, 0x5b, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
0x62, 0x63, 0x64, 0x65, 0x66, 0x66, 0x67, 0x68,
0x69, 0x6a, 0x6b, 0x6c, 0x6c, 0x6d, 0x6e, 0x6f,
0x70, 0x70, 0x71, 0x72, 0x72, 0x73, 0x74, 0x74,
3.600
1.920
1.220
0.980
0.760
0.600
633.688
727.251
814.306
939.663
975.580
1.050
1.210
1.340
1.056
0.896
0.816
0.744
0.64
0.624
0.544
0.480
0.528
0.456
0.416
0.360
0.344
0.288
0.256
180, 183, 186, 189, 192, 195, 198, 201, 204, 207,
210, 213, 216, 219, 222, 225, 228, 231, 234, 237,
240, 243, 246, 249, 6, 243, 240,
60, 63, 66, 69, 72, 75, 78, 81, 84, 87,
90, 93, 96, 99, 102, 105, 108, 111, 114, 117,
120, 123, 126, 129, 132, 135, 138, 141, 144, 147,
150, 153, 156, 159, 162, 165, 168, 171, 174, 177,
0.228
1.496
0.432
0.223
2.4.2、波形幅值调节见下表:(每一幅值调节是在所有频带范围内的幅值调节,表中测得的幅值为每一频率下的组成波形的半周期正弦波和半周期三角波的幅值)
三角波/V
0.272
0.312
0.448
1.600
正弦波/V
0.160
0.164
0.236
1.04
2.180
2.720
低频信号发生器
摘要:本设计是以AT89C51为核心的信号发生器,其外围电路主要由OP07放大电路,DAC0832数模转换器所组成。本设计的主要特点是可以输出一个由三角波和正弦波正半周部分以周期比为3:2的比例交替出现,并且绝对频率和绝对幅值可以在0V~6V之间由按键调控。
关键词:AT89C52 OP07放大电路DAC0832
0x59, 0x58, 0x57, 0x56, 0x55, 0x54, 0x52, 0x51,
0x50, 0x4f, 0x4e, 0x4c, 0x4b, 0x4a, 0x49, 0x47,
0x46, 0x45, 0x43, 0x42, 0x41, 0x3f, 0x3e, 0x3d,
0x3b, 0x3a, 0x39, 0x37, 0x36, 0x34, 0x33, 0x32,
2.4.1、波形频率调节测试数据见下表:(表中数据为所测得的波形的频率以及相应组成波形的半周期正弦波和半周期三角波所占的周期比例)
频率/HZ
波形ms
93.034
184.942
278.232
368.718
458.690
546.430
正弦波形
7.120
3.440
2.340
1.760
1.420
1.200
三角波形
并且该方案的输出电压做不到连续可调,当DA的输入数字量比较小时,输出的波形失真就会比较严重。
方案二:将输出电压通过一个运算放大器的放大。这样还有个优点是幅度连续可调。
经比较,方案二既可满足设计的基本要求,并且电路也挺简单。
3、系统框图
数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。其信号发生器构成系统框图如下图(1)所示。
图(1)
二、各部分电路设计
2.1、在按键电路部分
在按键电路部分,设置了两颗按键来控制输出信号的频率,一颗来控制信号频率的增加,一颗来控制信号频率的减小。
2.2、单片机核心部分
单片机核心部分,利用DA转换的原理将需要得到的信号波形进行编码制作成为一个编码表,再编程,将程序下载到单片机当中,利用AT89C51进行数据处理,并将其转换为高低电平送入DA转换器。
0x75, 0x75, 0x76, 0x77, 0x77, 0x78, 0x78, 0x79,
0x79, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7c,
0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e,
0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
4.240
6.160
7.760
12.000
1.140
1.680
2.320
3.200
4.000
6.240
由上表2.4.1知,随着输入波形频率的增大,组成波形的半周期正弦波和半周期三角波的所占的周期比例始终为3:2,波形的频带约为1.5KHZ。满足设计要求。
由上表2.4.2知,在波形频带范围内,无论怎么调节输出波形的幅值,组成波形的半周期正弦波和半周期三角波的幅值比例都为1:2左右,从数据中还可以分析出,波形的最大幅值调节范围能在0V~12V范围内可调,满足设计要求的波形最大幅值范围在0V~12V范围内可调。满足设计要求。
};
//---------------------------------------------------三角波编码表
unsignedchar codesanjiao_zibian[171]=
{
0, 3, 6, 9, 12, 15, 18, 21, 24, 27,
30, 33, 36, 39, 42, 45, 48, 51, 54, 57,
方案三:使用集成信号发生器发生芯片,例如AD9854,它可以生成最高几十MHZ的波形。但是该方案也不能产生任意波形(例如梯形波),并且价格昂贵。
方案四:采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ以上。性能高,在低频范围内稳定性好、操作方便、体积小、耗电少。
237, 234, 231, 228, 225, 222, 219, 216, 213, 210,
207, 204, 201, 198, 195, 192, 189, 186, 183, 180,
177, 174, 171, 168, 165, 162, 159, 156, 153, 150,
一.总体方案设计
1、频率改变方案
方案一:采用模拟电路搭建函数信号发生器,它可以同时产生方波、三角波、正弦波。但是这种模块电路不能产生任意的波形(例如梯形波),并且频率调节很不方便。
方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。
{
0x00, 0x01, 0x03, 0x04, 0x06, 0x07, 0x09, 0x0a,
0x0c, 0x0d, 0x0f, 0x11, 0x12, 0x14, 0x15, 0x17,
0x18, 0x1a, 0x1b, 0x1d, 0x1e, 0x20, 0x21, 0x23,
0x24, 0x26, 0x27, 0x29, 0x2a, 0x2c, 0x2d, 0x2f,
2.4、放大电路部分
放大电路部分,该部分主要是由两个放大电路组成,第一个放大电路的作用主要是将单片机输出的微弱的电流信号转换为电压信号,第二级放大电路的作用是对微弱的电压信号进行放大,将其放大到设计要求的范围之内。放大电路如下图(3)所示:
图(3)
2.5、滤波电路部分
滤波电路部分,在第二个运算放大器的输出端连了一个二阶低通滤波器。如果不加低通滤波器,也能够生成波形,但是产生的信号中毛刺很多,加一个低通滤波器不仅起到的滤波的作用,还起到了平滑的作用。
0x30, 0x2f, 0x2d, 0x2c, 0x2a, 0x29, 0x27, 0x26,
0x24, 0x23, 0x21, 0x20, 0x1e, 0x1d, 0x1b, 0x1a,
0x18, 0x17, 0x15, 0x14, 0x12, 0x11, 0x0f, 0x0d,
0x0c, 0x0a, 0x09, 0x07, 0x06, 0x04, 0x03, 0x01,
经比较,方案四既可满足课程设计的基本要求又能充分发挥其优势,电路简单,易控制,性价比高,所以采用该方案.
2、幅度改变方案
方案一:可以将送给DA的数字量乘以一个系数,这样就可以改变DA输出电流的幅度,从而改变输出电压;但是这样做有很严重的问题,单片机在做乘法运算时需要很长的时间,这样的话输出波形的频率就会很低,达不到至少500HZ的要求;
sbitADC_CS = P2^6;
sbitADC_WR = P2^7;
sbitled = P2^0;
sbitkey1 = P3^2;
sbitkey2 = P3^3;
//------------------------------------------------正弦波编码表
unsignedchar codesine_table[]=
0x75, 0x74, 0x74, 0x73, 0x72, 0x72, 0x71, 0x70,
0x70, 0x6f, 0x6e, 0x6d, 0x6c, 0x6c, 0x6b, 0x6a,
0x69, 0x68, 0x67, 0x66, 0x66, 0x65, 0x64, 0x63,
0x62, 0x61, 0x60, 0x5f, 0x5e, 0x5d, 0x5b, 0x5a,
滤波电路的原理图如图(4)所示:
图(4)
本设计系统的原理图如图(5)所示:
图(5)
二、系统测试
2.1、测试条件
单一电源+5V、同相放大电路电压
2.2、测试仪器
数字万用表、双踪示波器、双路稳压电源
2.3、系统模块的检测
每做好一个模块,都连上电源,用数字万用表和示波器检测模块电路是否能正常使用。
2.4、测试数据
0x7f, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
0x7e, 0x7e, 0x7e, 0x7d, 0x7d, 0x7d, 0x7d, 0x7c,
0x7c, 0x7c, 0x7b, 0x7b, 0x7b, 0x7a, 0x7a, 0x79,
0x79, 0x79, 0x78, 0x78, 0x77, 0x77, 0x76, 0x75,
2.5、整机测试实测指标总结
波形频带范围:90HZ~1500HZ 正弦波幅值与三角波比例1:2
正弦波与三角波周期比例:3:2 幅值可调范围:0V~12V
三、软件设计
3.1、软件流程图
3.2、系统C语言主程序
#include<reg51.h>
#define DAC P1
sbitADC_ILE = P2^5;
2.3、DAC0832数模转换器
DAC0832数模转换器,由于单片机产生的是数字信号,要想得到所需要的波形,就要把数字信号转换成模拟信号,所以该文选用价格低廉、接口简单、转换控制容易并具有8位分辨率的数模转换器DAC0832。DAC0832主要由8位输入寄存器、8位DAC寄存器、8位D/A转换器以及输入控制电路四部分组成。根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:直通方式、单缓冲方式和双缓冲方式。本设计选用直通方式。DAC0832与单片机连接图如图(2):
0x30, 0x32, 0x33, 0x34, 0x36, 0x37, 0x39, 0x3a,
0x3b, 0x3d, 0x3e, 0x3f, 0x41, 0x42, 0x43, 0x45,
0x46, 0x47, 0x49, 0x4a, 0x4b, 0x4c, 0x4e, 0x4f,
0x50, 0x51, 0x52, 0x54, 0x55, 0x56, 0x57, 0x58,
0x59, 0x5a, 0x5b, 0x5d, 0x5e, 0x5f, 0x60, 0x61,
0x62, 0x63, 0x64, 0x65, 0x66, 0x66, 0x67, 0x68,
0x69, 0x6a, 0x6b, 0x6c, 0x6c, 0x6d, 0x6e, 0x6f,
0x70, 0x70, 0x71, 0x72, 0x72, 0x73, 0x74, 0x74,
3.600
1.920
1.220
0.980
0.760
0.600
633.688
727.251
814.306
939.663
975.580
1.050
1.210
1.340
1.056
0.896
0.816
0.744
0.64
0.624
0.544
0.480
0.528
0.456
0.416
0.360
0.344
0.288
0.256
180, 183, 186, 189, 192, 195, 198, 201, 204, 207,
210, 213, 216, 219, 222, 225, 228, 231, 234, 237,
240, 243, 246, 249, 6, 243, 240,
60, 63, 66, 69, 72, 75, 78, 81, 84, 87,
90, 93, 96, 99, 102, 105, 108, 111, 114, 117,
120, 123, 126, 129, 132, 135, 138, 141, 144, 147,
150, 153, 156, 159, 162, 165, 168, 171, 174, 177,
0.228
1.496
0.432
0.223
2.4.2、波形幅值调节见下表:(每一幅值调节是在所有频带范围内的幅值调节,表中测得的幅值为每一频率下的组成波形的半周期正弦波和半周期三角波的幅值)
三角波/V
0.272
0.312
0.448
1.600
正弦波/V
0.160
0.164
0.236
1.04
2.180
2.720
低频信号发生器
摘要:本设计是以AT89C51为核心的信号发生器,其外围电路主要由OP07放大电路,DAC0832数模转换器所组成。本设计的主要特点是可以输出一个由三角波和正弦波正半周部分以周期比为3:2的比例交替出现,并且绝对频率和绝对幅值可以在0V~6V之间由按键调控。
关键词:AT89C52 OP07放大电路DAC0832
0x59, 0x58, 0x57, 0x56, 0x55, 0x54, 0x52, 0x51,
0x50, 0x4f, 0x4e, 0x4c, 0x4b, 0x4a, 0x49, 0x47,
0x46, 0x45, 0x43, 0x42, 0x41, 0x3f, 0x3e, 0x3d,
0x3b, 0x3a, 0x39, 0x37, 0x36, 0x34, 0x33, 0x32,
2.4.1、波形频率调节测试数据见下表:(表中数据为所测得的波形的频率以及相应组成波形的半周期正弦波和半周期三角波所占的周期比例)
频率/HZ
波形ms
93.034
184.942
278.232
368.718
458.690
546.430
正弦波形
7.120
3.440
2.340
1.760
1.420
1.200
三角波形
并且该方案的输出电压做不到连续可调,当DA的输入数字量比较小时,输出的波形失真就会比较严重。
方案二:将输出电压通过一个运算放大器的放大。这样还有个优点是幅度连续可调。
经比较,方案二既可满足设计的基本要求,并且电路也挺简单。
3、系统框图
数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。其信号发生器构成系统框图如下图(1)所示。
图(1)
二、各部分电路设计
2.1、在按键电路部分
在按键电路部分,设置了两颗按键来控制输出信号的频率,一颗来控制信号频率的增加,一颗来控制信号频率的减小。
2.2、单片机核心部分
单片机核心部分,利用DA转换的原理将需要得到的信号波形进行编码制作成为一个编码表,再编程,将程序下载到单片机当中,利用AT89C51进行数据处理,并将其转换为高低电平送入DA转换器。
0x75, 0x75, 0x76, 0x77, 0x77, 0x78, 0x78, 0x79,
0x79, 0x79, 0x7a, 0x7a, 0x7b, 0x7b, 0x7b, 0x7c,
0x7c, 0x7c, 0x7d, 0x7d, 0x7d, 0x7d, 0x7e, 0x7e,
0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e,
4.240
6.160
7.760
12.000
1.140
1.680
2.320
3.200
4.000
6.240
由上表2.4.1知,随着输入波形频率的增大,组成波形的半周期正弦波和半周期三角波的所占的周期比例始终为3:2,波形的频带约为1.5KHZ。满足设计要求。
由上表2.4.2知,在波形频带范围内,无论怎么调节输出波形的幅值,组成波形的半周期正弦波和半周期三角波的幅值比例都为1:2左右,从数据中还可以分析出,波形的最大幅值调节范围能在0V~12V范围内可调,满足设计要求的波形最大幅值范围在0V~12V范围内可调。满足设计要求。
};
//---------------------------------------------------三角波编码表
unsignedchar codesanjiao_zibian[171]=
{
0, 3, 6, 9, 12, 15, 18, 21, 24, 27,
30, 33, 36, 39, 42, 45, 48, 51, 54, 57,
方案三:使用集成信号发生器发生芯片,例如AD9854,它可以生成最高几十MHZ的波形。但是该方案也不能产生任意波形(例如梯形波),并且价格昂贵。
方案四:采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ以上。性能高,在低频范围内稳定性好、操作方便、体积小、耗电少。
237, 234, 231, 228, 225, 222, 219, 216, 213, 210,
207, 204, 201, 198, 195, 192, 189, 186, 183, 180,
177, 174, 171, 168, 165, 162, 159, 156, 153, 150,
一.总体方案设计
1、频率改变方案
方案一:采用模拟电路搭建函数信号发生器,它可以同时产生方波、三角波、正弦波。但是这种模块电路不能产生任意的波形(例如梯形波),并且频率调节很不方便。
方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。
{
0x00, 0x01, 0x03, 0x04, 0x06, 0x07, 0x09, 0x0a,
0x0c, 0x0d, 0x0f, 0x11, 0x12, 0x14, 0x15, 0x17,
0x18, 0x1a, 0x1b, 0x1d, 0x1e, 0x20, 0x21, 0x23,
0x24, 0x26, 0x27, 0x29, 0x2a, 0x2c, 0x2d, 0x2f,