文档库 最新最全的文档下载
当前位置:文档库 › 简易波形发生器

简易波形发生器

简易波形发生器
简易波形发生器

课程设计任务书

设计题目10:简易波形发生器

系(部)分管领导:教研室主任:指导教师:

年月日

目录

第一章引言 (1)

第二章电路原理 (2)

2.1基本原理 (2)

2.2 PCF8951引脚功能 (2)

2.3 PCF8951电路原理 (3)

第三章程序设计 (3)

3.1程序设计与分析 (3)

3.2 主程序流程图 (8)

第四章调试、测试分析及结果 (8)

4.1程序编译 (8)

4.2观测波形 (9)

4.3结果分析 (10)

第五章小结 (10)

参考文献 (11)

附录1 程序 (11)

附录2 电路图 (16)

第一章引言

单片机具有良好的控制性能和优秀的嵌入品质,近年来单片机在各种领域都获得广泛的应用:智能仪器仪表、机电一体化产品、实时工业控制、分布系统的前端模块、家用电器、交通运输、航空航天与军事。

简易波形发生器这一实验运用到AT89C52单片机、PCF8591芯片的D/A转换功能,用Keil μVision软件进行编程,最后将程序烧写入单片机,单片机连接示波器进行波形的检测。

AT89C52是一个低电压,高性能CMOS8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2 个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。

PCF8591是单片、单电源低功耗的8位CMOS数据采集器件,具有一个输出和一个串行I2C总线接口PCF8591具有4个模拟输入、1个模拟输出和1个串行I2C总线接口。PCF8591的3个地址引脚A0, A1和A2可用于硬件地址编程,允许在同个I2C总线上接入8个PCF8591器件,而无需额外的硬件。在PCF8591器件输入输出的地址、控制和数据信号都是通过双线双向I2C总线以串行的方式进行传输。其功能包括多路模拟输入、内置跟踪保持、8-bit模数转换和8-bit 数模转换。

I2C总线系统中的每一片PCF8591通过发送有效地址到该器件来激活。该地址包括固定部分和可编程部分,可编程部分必须根据地址引脚A0、A1和A2来设置,在I2C总线协议中地址必须是起始条件后作为第一个字节发送。地址字节的最后一位是用于设置以后数据传输方向的读/写位,发送到PCF8591的第二个字节将被存储在控制寄存器,用于控制器件功能。控制寄存器的高半字节用于允许模拟输入。

μVision集成开发软件是Keil公司的产品,它集编辑、翻译(或汇编)、仿真调试等功能于一体、具有当代典型嵌入式处理器开发的典型页面。常用的版本是μVision3,最新的版本是μVision4,。它支持数百种嵌入式处理器(包括80C51系列、非80C51系列的多种单片机以及ARM处理器等芯片)开发。可以用汇编程序及C51语言的编程。

第二章 电路原理

2.1基本原理

图1 基本原理图

信号发生器系统主要由CPU 、D/A 转换电路、基准电压电路、按键和波形指示电路、电源等电路组成。

2.2 PCF8951引脚功能

VDD 、VSS :电源端。

(2.5~6V )SDA 、SCL :I2C 总线的数据线、

时钟线。

OSC :外部时钟输入端,内部时钟

输出端。

EXT :内部、外部时钟选择线,使

用内部时钟时 EXT 接地。

AGND :模拟信号地。

AOUT :D/A 转换输出端。

VREF :基准电源端。

图2 PCF8591芯片

2.3 PCF8951电路原理

I2C总线只有两根连线,所以PCF8591只需要两根线连接到单片机,由开发板的电路图可知,AT89C52与之相关的两个I/O口是P1.1和P1.2。只需两根线便可完成数据的传输,这就使得器件间连接电路简单,电路板的体积会有效减小,系统的可靠性和灵活性将大大提高。由PCF8591的数据手册可知发送给PCF8591的第三个字节被存储到DAC数据寄存器,并使用片上D/A转换器转换成对应的模拟电压。D/A转换模拟输出电压由自动清零单位增益放大器缓冲。这个缓冲放大器可通过设置控制寄存器的模拟输出允许标志来开户或关闭。在激活状态,输出电压将保持到新的数据字节被发送。在PCF8591器件上输入输出的地址、控制和数据信号都是通过双线双向I2C总线以串行的方式进行传输,电路简便。在执行A/D转换时,输出模拟电压由下方公式给出:

V AOUT=V AGND+(V REF?V AGND

256

)D i×2i

7

i=0

在设计是基于已经固化了的硬件电路运用软件编程的手段根据PCF8591的时序图实现D/A转换。为能够实现按键选择功能,定义P3的三个I/O口分别对应s1、s2、s3三个按键,编写每个按键的功能函数,然后定义按键扫描函数写入语句实现处理按键功能。在按键功能函数中,编写程序将数据从SDA引脚输入PCF8591芯片,每一个按键功能函数实现一种波形的产生。当三个按键之一按下时,按键扫描函数会判断被按下的按键并调动其功能函数,向PCF8591输入相应的数据,输出对应的波形。在这些按键功能函数中,用循环语句将预先设计好的数据输入PCF8591芯片中实现数模转换输出模拟量形成波形。

电路原理图见附录2。

第三章程序设计

3.1程序设计与分析

设计参数是利用单片机实现方波、三角波、正弦波输出,测试仪器采用示波器,能够实现按键选择功能。按下按键S1输出三角波,按下按键S2输出方波,按下按键S3输出正弦波。程序设计的主干应有文件包含、宏定义、端口定义、全局变量定义、自定义函数、主函数。三个I/O口分别接一个按键,PCF8591需要两根线连接到单片机,由开发板的电路图可知,单片机与之相关的两个I/O 口是P1.1和P1.2,所以端口定义如下:

sbitS1=P3^0;

sbit S2=P3^1;

sbit S3=P3^2;

sbitscl=P1^1;//IIC的时钟线

sbitsda=P1^2;//IIC的数据线。

由于用到I2C总线型的PCF8591芯片,因此还得写I2C总线初始化函数,通过观测PCF8591D/A转换的时序图,可以写出IIC的初始化函数、IIC的起始信号函数、IIC的停止信号函数、IIC的应答信号函数、向IIC写一个字节的数据函数、向PCF8591里写入数据(即电压量的数据)的语句。

void init(void)//IIC的初始化

{

scl=1;

delayus();

sda=1;

delayus();

}

void start(void)//IIC的起始信号

{

scl=1;

sda=1;

delayus();

sda=0;

delayus();

scl=0;

delayus();

}

void stop(void)//IIC的停止信号

{

sda=0;

scl=1;

delayus();

sda=1;

delayus();

scl=0;

}

void ack(void)//IIC的应答信号

{

sda=0;

scl=1;

delayus();

scl=0;

sda=1;

}

void write_byte(uchar date)//向IIC写一个字节的数据

{

uchari,temp;

temp=date;

for(i=0;i<8;i++)

{

temp=temp<<1;

scl=0;

delayus();

sda=CY;

delayus();

scl=1;

delayus();

}

scl=0;

delayus();

sda=1;

delayus();

}

void write(ucharadd,ucharsda,uint date)

{

start();

write_byte(add);//0x90表示器件地址为000的写操作

ack();

write_byte(sda);//0x40表示四路单数入00通道无增益的器件控制指ack();

write_byte(date);//表示DA数据

ack();

stop();

}

为能够实现按键选择功能,可采用按键功能函数和按键扫描函数,当开关按下时输出相应的波形。用复位键协助波形切换,即在按下开关切换波形前先

按复位键,根据发光二极管的亮灭情况判断功能是否实现。

void trag()//输出三角波函数

{

uchar s;

init();

for(s=0;s<34;s++)

{

write(0x90,0x40,sanjiao[s]);

delayus();

}

}

void squ()//输出方波函数

{

uchar f;

init();//I2C总线初始化

for(f=0;f<2;f++)

{

write(0x90,0x40,fang[f]);

delayus();

}

}

void sin(void)//输出正弦波函数

{

uchar x=0;

init();

for(x=0;x<255;x++)

{

write(0x90,0x40,zhengxian[x]);

delayus();

}

}

在这些按键功能函数中,将数据输入PCF8591芯片中。对于方波,只需输入两个数据,可以采用两个极端值0x00和0xff,每一个数据输入后定时一段时间,经过D/A转换后输出的模拟量就可形成方波。对于三角波和正弦波,将一组逐渐升高到某一值又逐渐减低的数据输入但正弦波的数据跳变程度要比三角波的缓慢就可得相应的波形。用查表法(事先将正弦波的数据计算出来,列

表放在程序中,运行时直接调取数据)获得256个可形成正弦波的数据,经过查阅资料,我找到了可实现的数据。三角波的数据较为简单,数据的递增和递减呈线性关系即可。在此,我从0x00-0xff的256个数据中每隔14个取一个数据组成实现三角波的34个输入数据。

uchar code fang[]={0x00,0xff};

ucharcode sanjiao[]=

{0x0f,0x1e,0x2d,0x3c,0x4b,0x5a,0x69,0x78,0x87,0x96,0xa5,0xb4,0xc 3,0xd2,0xe1,0xf0,0xff,0xff,0xf0,0xe1,0xd2,0xc3,0xb4,0xa5,0x96,0x87,0 x78,0x69,0x5a,0x4b,0x3c,0x2d,0x1e,0x0f};

uchar code zhengxian[]=

{0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2,0xa 5,0xa8,0xab,0xae,0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5,0xc7,0xca,0 xcc,0xcf,0xd1,0xd4,0xd6,0xd8,0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9 ,0xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0x fb,0xfc,0xfd,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, 0xff,0xff,0xff,0xfe,0xfd,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0xf 5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0 xdd,0xda,0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc ,0xba,0xb7,0xb4,0xb1,0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99,0x96,0x 93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c, 0x69,0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51,0x4e,0x4c,0x48,0x45,0x4 3,0x40,0x3d,0x3a,0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x27,0x25,0x22,0 x20,0x1e,0x1c,0x1a,0x18,0x16,0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a ,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x02,0x01,0x00,0x00,0x00,0x 00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x02,0x03,0x04, 0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x15,0x1 6,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x25,0x27,0x29,0x2b,0x2e,0x30,0x33,0 x35,0x38,0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e,0x51,0x55,0x57,0x5a ,0x5d,0x60,0x63,0x66,0x69,0x6c,0x6f,0x72,0x76,0x79,0x7c,0x80};

一般开关、按钮的抖动在几毫秒时间以内,因而用延时函数延时10ms即可防止按一次按钮产生多次处理的现象。

将上述程序分析整理衔接后就可得到完整的程序,见附录1。

3.2 主程序流程图

图3 程序流程图

第四章调试、测试分析及结果

4.1程序编译

在μVision软件界面新建一个工程,在工程中新建一个文件,将完整的程序写入,经过反复调试与修改后程序编译结果如图3所示:

结果无错误无警告,说明程序有可能能够实现目标结果。

4.2观测波形

为了验证程序是否能够实现三角波、方波、正弦波的产生,将输出口接入示波器观察。按下S1,示波器显示波形如图5所示,按下复位键再按下S2,示波器显示波形如图6所示,按下复位键再按下S3,示波器显示波形如图7。

图5 示波器显示三角波

图6 示波器显示方波

图7 示波器显示正弦波

4.3结果分析

示波器的显示情况程序能够实现三角波、方波、正弦波三种波形的产生,基本达到设计要求,但是得借助硬件上的复位才能实现波形的切换,这是设计的不足之处。如果找到合适程序语句,使能够实现当按下按键是就可直接切换波形,那么将使得硬件电路的设计更简便,降低成本。

这个设计方法是基于AT89S51单片机和PCF8591数模转换芯片,通过编写三个独立按键功能函数来分别产生三种波形,由按键扫描函数来处理按键,当三个按键之一按下时,按键扫描函数会判断被按下的按键并调动其功能函数向PCF8591输入相应的数据,输出对应的波形,最终实现简易波形发生器的设计。

第五章小结

单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,作为电子工程专业的学生来说掌握单片机的开发技术是十分重要的,学好单片机将对以后的职业生涯将大有帮助。

学习单片机要注重理论与实践相结合。一个程序的形成不仅需要有C语言知识,更多需要融入个人的编程思路和算法。编程思路和算法决定一个程序的

优劣,是单片机编程的一个难题,只有在实际动手编写的时候才会有深切的感悟。对于初学者来说,在编写程序的过程中会遇到各种问题是正常的,只要坚持下去,遇到问题时查阅资料、与同学讨论、向老师请教寻求解决问题的办法,反复调试(检查、修改思路和算法)。课程设计正是给予我们一个锻炼自身实际应用能力的过程。

课程设计是锻炼实践能力的重要环节,是对实际工作能力的具体训练和考察过程。通过这次课程设计我进一步学会使用KeilμVision开发环境和简单程序的编辑、编译、与运行方法;强化if……else语句的应用,51单片机的并行口的使用方法,掌握循环语句的应用,独立按键程序的编写方法。除了专业上的知识,这次课程设计使我明白理论与实际相结合的重要性,只有把所学的理论知识与实践相结合起来,在实践中运用理论强化课堂上所学知识,从理论中得出结论,从而提高自己的实际动手能力和独立思考的能力,学会在实践过程中发现自身的不足并力求改正,才会有所进步,造就更强的自己。

这次课程设计,我以89C51单片机作为波形发生电路的核心控制器件,结合AD/DA转换芯片PCF8591,利用其D/A转换功能,通过按键的选择分别输出相应的方波、三角波、正弦波三种常用波形,实现简易波形发生器的设计,通过示波器来观察波形,最终实现简易波形发生器的设计。一个成果的产生,不是轻而易举的,需要前期的资料准备,在设计过程中,发现问题要想办法解决,遇到困难要坚持,一个程序的形成需要反复调试和检查并修改直至成功。在今后的C语言以及单片机学习过程中我们要多于老师同学交流。

参考文献

[1].楼然苗,李光飞,单片机课程设计指导,北京航空航天大学出版社,2012

[2].李全利,单片机原理及应用,清华大学出版社,2014

附录1 程序

#include

#include

#include

#define uchar unsigned char

#define uint unsignedint

bit flag;

sbitscl=P1^1; // 将p1.0口模拟时钟口

sbitsda=P1^2; // 将p1.3口模拟数据口

sbit S1= P3^0;

sbit S2= P3^1;

sbit S3= P3^2;

ucharfl=0;

uchar code fang[]={0x00,0xff};

ucharcode sanjiao[]=

{0x0f,0x1e,0x2d,0x3c,0x4b,0x5a,0x69,0x78,0x87,0x96,0xa5,0xb4,0xc3,0x d2,0xe1,0xf0,0xff,0xff,0xf0,0xe1,0xd2,0xc3,0xb4,0xa5,0x96,0x87,0x78, 0x69,0x5a,0x4b,0x3c,0x2d,0x1e,0x0f};

uchar code zhengxian[]=

{0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,

0x9f,0xa2,0xa5,0xa8,0xab,0xae,0xb1,0xb4,0xb7,0xba,

0xbc,0xbf,0xc2,0xc5,0xc7,0xca,0xcc,0xcf,0xd1,0xd4,

0xd6,0xd8,0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9,

0xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5,0xf6,0xf7,

0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfd,0xfe,0xff,0xff,

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0xfe,0xfd,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,

0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0xe9,0xe7,

0xe5,0xe3,0xe1,0xde,0xdd,0xda,0xd8,0xd6,0xd4,0xd1,

0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc,0xba,0xb7,

0xb4,0xb1,0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99,

0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,

0x79,0x76,0x72,0x6f,0x6c,0x69,0x66,0x63,0x60,0x5d,

0x5a,0x57,0x55,0x51,0x4e,0x4c,0x48,0x45,0x43,0x40,

0x3d,0x3a,0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x27,

0x25,0x22,0x20,0x1e,0x1c,0x1a,0x18,0x16,0x15,0x13,

0x11,0x10,0x0e,0x0d,0x0b,0x0a,0x09,0x08,0x07,0x06,

0x05,0x04,0x03,0x02,0x02,0x01,0x00,0x00,0x00,0x00,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02,

0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,

0x0d,0x0e,0x10,0x11,0x13,0x15,0x16,0x18,0x1a,0x1c,

0x1e,0x20,0x22,0x25,0x27,0x29,0x2b,0x2e,0x30,0x33,

0x35,0x38,0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e,

0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66,0x69,0x6c,

0x6f,0x72,0x76,0x79,0x7c,0x80

};

void delayms(ucharms)//延时函数

uchari;

while(ms--)

{for (i=0; i<123; i++);}

}

void delayus(void)//循环一次空语句1μ秒{

;;

}

void init(void)//IIC的初始化

{

scl=1;

delayus();

sda=1;

delayus();

}

void start(void)//IIC的起始信号

{

scl=1;

sda=1;

delayus();

sda=0;

delayus();

scl=0;

delayus();

}

void stop(void)//IIC的停止信号

{

sda=0;

scl=1;

delayus();

sda=1;

delayus();

scl=0;

}

void ack(void)//IIC的应答信号

sda=0;

scl=1;

delayus();

scl=0;

sda=1;

}

void write_byte(uchar date)//向IIC写一个字节的数据

{

uchari,temp;

temp=date;

for(i=0;i<8;i++)

{

temp=temp<<1;

scl=0;

delayus();

sda=CY;

delayus();

scl=1;

delayus();

}

scl=0;

delayus();

sda=1;

delayus();

}

void write(ucharadd,ucharsda,uint date)

{

start();

write_byte(add);//0x90表示器件地址为000的写操作

ack();

write_byte(sda);//0x40表示四路单数入00通道无增益的器件控制指ack();

write_byte(date);//表示DA数据

ack();

stop();

void trag()//输出三角波函数

{

uchar s;

init();

for(s=0;s<34;s++)

{

write(0x90,0x40,sanjiao[s]);

delayus();

}

}

void squ()//输出方波函数

{

uchar f;

init();//I2C总线初始化

for(f=0;f<2;f++)

{

write(0x90,0x40,fang[f]);

delayus();

}

}

void sin(void)//输出正弦波函数{

uchar x=0;

init();

for(x=0;x<255;x++)

{

write(0x90,0x40,zhengxian[x]); delayus();

}

}

void keyscan()//按键功能函数{

if((P3&0x0f)!=0X0F)

{delayms(10);

if(((P3&0x0f)!=0XFF)&&(flag==0))

flag=1;

if(S1==0)fl=0; if(S2==0)fl=1; if(S3==0)fl=2; }

}

else flag=0;

}

void main()

{

init();

while(1)

{

keyscan();

if(fl==0)trag(); if(fl==1)squ(); if(fl==2)sin(); }

}

附录2 电路图

图8 硬件电路

图9 示波器显示三角波图10 示波器显示方波

简易波形发生器设计

摘要:单片机主要面对的是测控对象,突出的是控制功能,所以它从功能和形态上来说都是应测控领域应用的要求而诞生的。随着单片机技术的发展,它在芯片内部集成了许多面对测控对象的接口电路,如ADC、DAC、高速I/O接口、脉冲宽度调制器(Pulse Width Modulator,PWM)、监视定时器(Watch Dog Timer,WDT)等。这些对外电路及外设接口已经突破了微型计算机传统的体系结构,所以单片机也称为微控制器(Micro Controller)。 关键词:中央处理器;随机存储器;只读存储器

引言:一般函数发生器是由硬件组成的,它的输出频率范围宽,各项指标高,性能优良,因而在对输出波形要求较高的地方被广泛应用,这种仪器的缺点是电路复杂,成本高,输出波形种类不多,不够灵活。在对波形指标要求不高,频率要求较低的场合,可以用单片机构成一个波形发生器。产生所需要的各种波形,这样的函数发生器靠软件产生各种波形,小巧灵活,便于修改,且成本低廉,容易实现。 1设计概述 1.1 课程设计的目的 通过对本课题的设计,掌握A/D,D/A转换的应用,用单片机产生各种波形的方法及改变波形频率的方法。熟悉单片机应用系统的设计以及软硬件的调试。单片机本身并没有开发能力,必须借助开发工具即硬件开发环境才能进行开发。单片机的硬件开发环境有PC机、编程器和仿真机等。 1.2 设计的内容、要求 设计一个简易波形发生器,要求该系统能通过开关或按钮有选择性的输出正弦波、三角波、方波、及阶梯波等四种波形,并且这四种波形的频率均可通过输入电位器在一定范围内调节。 对于四种波形的切换,用两个开关的四种状态来表示(或用按钮)。选用常用的A/D转换芯片0809来实现模拟量的输入。D/A转换器选用0832来输出波形。

信号发生器概述

信号发生器概述 凡是产生测试信号的仪器,统称为信号源,也称为信号发生器,它用于产生被测电路所需特定参数的电测试信号。 信号源是根据用户对其波形的命令来产生信号的电子仪器。信号源主要给被测电路提供所需要的已知信号(各种波形),然后用其它仪表测量感兴趣的参数。可见信号源在电子实验和测试处理中,并不测量任何参数,而是根据使用者的要求,仿真各种测试信号,提供给被测电路,以达到测试的需要。 信号源的分类和作用 信号源有很多种分类方法,其中一种方法可分为混和信号源和逻辑信号源两种。其中混和信号源主要输出模拟波形;逻辑信号源输出数字码形。混和信号源又可分为函数信号发生器和任意波形/函数发生器,其中函数信号发生器输出标准波形,如正弦波、方波等,任意波/函数发生器输出用户自定义的任意波形;逻辑信号发生器又可分为脉冲信号发生器和码型发生器,其中脉冲信号发生器驱动较小个数的的方波或脉冲波输出,码型发生器生成许多通道的数字码型。如泰克生产的AFG3000系列就包括函数信号发生器、任意波形/函数信号发生器、脉冲信号发生器的功能。 另外,信号源还可以按照输出信号的类型分类,如射频信号发生器、扫描信号发生器、频率合成器、噪声信号发生器、脉冲信号发生器等等。信号源也可以按照使用频段分类,不同频段的信号源对应不同应用领域。 下面我们将对函数信号发生器和任意波形/函数发生器做简要介绍: 1、函数信号发生器 函数发生器是使用最广的通用信号源,提供正弦波、锯齿波、方波、脉冲波等波形,有的还同时具有调制和扫描功能。 函数波形发生器在设计上分为模拟式和数字合成式。众所周知,数字合成式函数信号源(DDS)无论就频率、幅度乃至信号的信噪比(S/N)均优于模拟式,其锁相环(PLL)的设计让输出信号不仅是频率精准,而且相位抖动(phaseJitter)及频率漂移均能达到相当稳定的状态,但数字式信号源中,数字电路与模拟电路之间的干扰始终难以有效克服,也造成在小信号的输出上不如模拟式的函数信号发生器,如今市场上的大部分函数信号发生器均为DDS信号源。 2、任意波形发生器 任意波形发生器,是一种特殊的信号源,不仅具有一般信号源波形生成能力,而且可以仿真实际电路测试中需要的任意波形。在我们实际的电路的运行中,由于各种干扰和响应的存在,实际电路往往存在各种缺陷信号和瞬变信号,如果在设计之初没有考虑这些情况,有的将会产生灾难性后果。任意波发生器可以帮您完成实验,仿真实际电路,对您的设计进行全面的测试。 由于任意波形发生往往依赖计算机通讯输出波形数据。在计算机传输中,通过专用的波

简易信号发生器

唐山学院 《单片机原理及应用》课程设计 题目简易信号发生器 系 (部) 信息工程系 班级 姓名 学号 指导教师 2013 年 12 月 30 日至 2014 年 1 月 3 日共 1 周2014年 1 月 3 日

《单片机原理及应用》课程设计任务书

课程设计成绩评定表

目录 1 引言 (1) 2 总体设计 (2) 2.1系统原理设计 (2) 2.1.1设计原理 (2) 2.1.2设计方案论证 (2) 2.1.3设计思想 (3) 2.1.4设计功能 (3) 2.2硬件原理框图 (4) 2.3电路构成 (4) 2.3.1主控电路 (4) 2.3.2 数模转换电路 (5) 2.3.3 按键接口电路 (6) 2.3.4 复位及时钟电路 (6) 2.4器件选择 (7) 2.5软件设计 (7) 2.5.1 软件设计原理 (7) 2.5.2 软件流程图 (7) 3 设计总结 (10) 参考文献 (11) 附录 (12)

引言 AT89C51单片机随着大规模集成电路技术的发展,由中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、(I/O)接口、定时器/计数器和串行通信接口,以及其他一些计算机外围电路等均可集成在一块芯片上构成单片微型计算机。单片机具有体积小、成本低,性能稳定、使用寿命长等特点。其最明显的优势就是可以嵌入到各种仪器、设备中,这是其他计算机和网络都无法做到的[1,2] 信号发生器是指其输出信号的频率、幅度、调制系数等在一定范围内连续可调,并且读数准确、稳定、屏蔽良好的中、高档信号发生器。信号发生器应用广泛,种类繁多,性能各异,分类也不尽一致。 本实验介绍一种用AT89C51单片机构成的波形发生器,可产生方波、三角波、正弦波、锯齿波等多种波形,波形的频率可调,并由DAC0832转换模块单输入缓冲方式,输入的数字量转换为模拟量得到波形,具有线路简单、结构紧凑、性能优越等特点。

单片机实现简易波形发生器

电子信息工程专业 单片机课程设计报告 题目简易波形发生器姓名 学号 班级 指导教师 2013年7 月4 日

要求: 1.指导教师按照课程设计大纲要求完成学生课程设计指导工作。2.课程设计任务书由指导教师照大纲要求填写,内容要全面。 3.课程设计报告由参加本学生填写。课程设计结束时交指导教师。4.指导教师要根据每一位学生课程设计任务完成情况,认真审核设计报告,并在课程设计结束时,给出客观、准确的评语和成绩。 5.课程设计任务书和报告要语言流畅,图表正确规范。 6.本表要用钢笔、圆柱笔填写或打印,字迹工整。

课程设计报告 1 设计原理与技术方法: 1.1 电路工作原理分析 本次单片机实习采用的是单片机STC89C52,对于简易波形发生器设计的硬件电路主要为三个部分,为显示部分、键盘部分、D/A转换电路,以下对三个部分分别介绍。 1.1.1 显示电路原理 如图1.1所示八位八段数码管为共阴极数码管,通过两个74HC573锁存器与单片机连接,一片573的LE为位选信号另一片的LE为段选信号,分别由单片机的P2.7和P2.6控制,高电平有效。当P2.7=1、P2.6=0时,位选有效,P0.0-P0.7分别控制01-08八位数码管选通,低有效,即通过P0口送出数据,哪一位为0则哪一位数码管有显示;当P2.6=1、P2.7=0时,段选有效,此时P0.0-P0.7分别控制每一位八段数码管的每一段a b c d e f g dp 的亮灭,高有效,从而使数码管显示数字0-9。显示段码如表1.1所示。 图 1.1 显示电路 表1.1 共阴极数码管显示段码 1.1.2 键盘电路原理 如图1.2所示为4×4的矩阵式键盘与单片机的P3口相连,行连接P3.0-P3.3,列连接P3.4-P3.5。用扫描法对按键进行扫描,先将所有行置0,所有列置1,当有按键按下时,通过对P3口的状态查询则按下的按键所在列将为0,其余仍未1,通过延时去抖动判断是否真有按键按下,若有,则逐行扫描,判断按键所在行,最后返回按键键码,并去执行相应

函数波形信号发生器

函数波形发生器设计 摘要 函数信号发生器是一种能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。通过对函数波形发生器的原理以及构成分析,可设计一个能变换出三角波、正弦波、方波的函数波形发生器。本课题采用由集成运算放大器与晶体管差分放大器共同组成的方波—三角波—正弦波函数发生器的设计方法,先通过比较器产生方波,再通过积分器产生三角波,最后通过差分放大器形成正弦波。波形变换的原理是利用差分放大器传输特性曲线的非线性。 经过仿真得出了方波、三角波、正弦波、方波——三角波转换及三角波——正弦波转换的波形图。 关键字:函数信号发生器、集成运算放大器、晶体管差分放 设计目的、意义 1 设计目的 (1)掌握方波—三角波——正弦波函数发生器的原理及设计方法。 (2)掌握迟滞型比较器的特性参数的计算。 (3)了解单片集成函数发生器8038的工作原理及应用。 (4)能够使用电路仿真软件进行电路调试。 2 设计意义 函数发生器作为一种常用的信号源,是现代测试领域内应用最为广泛的通用仪器之一。 在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都学要有信号源,由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察、测量被测仪器的输出响应,以分析确定它们的性能参数。信号发生器是电子测量领域中最基本、应用最广泛的一类电子仪器。它可以产生多种波形信号,如正弦波,三角波,方波等,因而广泛用于通信、雷达、导航、宇航等领域。 设计内容 1 课程设计的内容与要求(包括原始数据、技术参数、条件、设计要求等): 1.1课程设计的内容 (1)该发生器能自动产生正弦波、三角波、方波。 (2)函数发生器以集成运放和晶体管为核心进行设计 (3)指标: 输出波形:正弦波、三角波、方波 频率范围:1Hz~10Hz,10Hz~100Hz 输出电压:方波VP-P≤24V,三角波VP-P=8V,正弦波VP-P>1V; (4)对单片集成函数发生器8038应用接线进行设计。 1.2课程设计的要求 (1)提出具体方案 (2)给出所设计电路的原理图。 (3)进行电路仿真,PCB设计。 2 函数波形发生器原理 2.1函数波形发生器原理框图 图2.1 函数发生器组成框图

简易波形发生器设计报告

电子信息工程学院 硬件课程设计实验室课程设计报告题目:波形发生器设计 年级:13级 专业:电子信息工程学院学号:201321111126 学生姓名:覃凤素 指导教师:罗伟华 2015年11月1日

波形发生器设计 波形发生器亦称函数发生器,作为实验信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。 波形发生器一般是指能自动产生方波、三角波、正弦波等电压波形的电路。产生方波、三角波、正弦波的方案有多种,如先产生正弦波,再通过运算电路将正弦波转化为方波,经过积分电路将其转化为三角波,或者是先产生方波-三角波,再将三角波变为正弦波。本课程所设计电路采用第二种方法,利用集成运放构成的比较器和电容的充放电,实现集成运放的周期性翻转,从而在输出端产生一个方波。再经过积分电路产生三角波,最后通过正弦波转换电路形成正弦波。 一、设计要求: (1) 设计一套函数信号发生器,能自动产生方波、三角波、正弦波等电压波形; (2) 输出信号的频率要求可调; (3) 根据性能指标,计算元件参数,选好元件,设计电路并画出电路图; (4) 在面包板上搭出电路,最后在电路板上焊出来; (5) 测出静态工作点并记录; (6) 给出分析过程、电路图和记录的波形。 扩展部分: (1)产生一组锯齿波,频率范围为10Hz~100Hz , V V 8p -p =; (2)将方波—三角波发生器电路改成矩形波—锯齿波发生器,给出设计电路,并记录波形。 二、技术指标 (1) 频率范围:100Hz~1kHz,1kHz~10kHz ; (2) 输出电压:方波V V 24p -p ≤,三角波V V 6p -p =,正弦波V V 1p -p ≥; (3) 波形特性:方波s t μ30r < (1kHz ,最大输出时),三角波%2V <γ ,正弦波y~<2%。 三、选材: 元器件:ua741 2个,3DG130 4个,电阻,电容,二极管 仪器仪表: 直流稳压电源,电烙铁,万用表和双踪示波器 四、方案论证 方案一:用RC 桥式正弦波振荡器产生正弦波,经过滞回比较器输出方波,方波在经过积分器得到三角波。

DSP任意波形信号发生器毕业设计

目录 摘 要 (2) Abstract (3) 1 绪论 (4) 1.1概述 (4) 1.2选题的目的、意义 (4) 1.3 选题的背景 (5) 1.4 本文所研究的内容 (6) 2 波形信号发生器的原理及方案选择 (7) 2.1任意波形信号发生器的原理 (7) 2.1.1 直接模拟法 (7) 2.1.2 直接数字法 (7) 2.2 任意波形发生器的设计方案 (9) 2.2.1 查表法 (9) 2.2.2计算法 (9) 2.2.3传统方法 (10) 3 基于DSP 5416的任意波形信号发生器的软件设计 (12) 3.1 TMS320C5416的开发流程 (12) 3.2软件开发环境 (13) 3.3任意波形信号发生器的软件编程 (14) 3.3.1 计算法实现波形输出 (14) 3.3.2 D/A转换 (15) 3.3.3波形控制及软件设计流程图 (16) 3.4参数的设定 (18) 4 基于DSP 5416的任意波形信号发生器的硬件设计 (20) 4.1 TMS320VC5416开发板 (20) 4.2 TMS320VC5416实验箱的连接 (23) 4.3 波形信号发生器的硬件测试过程 (23) 5 任意波形信号发生器展望 (28) 结束语 (29) 致谢 (30) 参考文献 (31)

摘 要 任意波形发生器是信号源的一种,它是具有信号源所具有的特点,更因它高的性能优势而倍受人们青睐。信号源主要给被测电路提供所需要的已知信号(各种波形),然后用其它仪表测量感兴趣的参数。可见信号源在各种实验应用和试验测试处理中,它不是测量仪器,而是根据使用者的要求,作为激励源,仿真各种测试信号,提供给被测电路,以满足测量或各种实际需要。 随着无线电应用领域的扩展,针对广播、电视、雷达、通信的专用信号发生器获得了长足的发展,表现在载波调制方式的多样化,从调幅、调频、调相到脉冲调制。如果采用多台信号发生器获得测量信号显然是很不方便的。因此需要任意波形发生器(Arbitrary Waveform Generator,AWG),使其能够产生任意频率的载频信号和多种载波调制信号。 目前我国已经开始研制任意波形发生器,并取得了可喜的成果。但总的来说,我国任意波形发生器还没有形成真正的产业。并且我国目前在任意波形发生器的种类和性能都与国外同类产品存在较大的差距,因此加紧对这类产品的研制显得迫在眉睫。 本文主要工作分为以下几个方面:首先,介绍研制任意波形信号发生器的目的、意义、背景,以及利用CCS仿真工具用软件实现任意波形信号发生器的的过程 ;之后,对硬件的连接及测试结果作介绍;最后,简要的对任意波形信号发生器的未来作一下展望。 关键词:DSP,任意波形信号发生器,DDS

多种波形发生器的设计与制作

课题三 多种波形发生器的设计与制作 方波、三角波、脉冲波、锯齿波等非正弦电振荡信号是仪器仪表、电子测量中最常用的波形,产生这些波形的方法较多。本课题要求设计的多种波形发生器是一种环形的波形发生器,方波、三角波、脉冲波、锯齿波互相依存。电路中应用到模拟电路中的积分电路、过零比较器、直流电平移位电路和锯齿波发生器等典型电路。通过对本课题的设计与制作,可进一步熟悉集成运算放大器的应用及电路的调试方法,提高对电子技术的开发应用能力。 1、 设计任务 设计并制作一个环形的多种波形发生器,能同时产生方波、三角波、脉冲波和锯齿波,它们的时序关系及幅值要求如图3-3-1所示。 图3-3-1 波形图 设计要求: ⑴ 四种波形的周期及时序关系满足图3-3-1的要求,周期误差不超过%1±。 ⑵ 四种波形的幅值要求如图3-3-1所示,幅值误差不超过%10±。 ⑶ 只允许采用通用器件,如集成运放,选用F741。

要求完成单元电路的选择及参数设计,系统调试方案的选取及综合调试。 2、设计方案的选择 由给定的四种波形的时序关系看:方波决定三角波,三角波决定脉冲波,脉冲波决定锯齿波,而锯齿波又决定方波。属于环形多种波形发生器,原理框图可用3-3-2表示。 图3-3-2 多种波形发生器的方框图 仔细研究时序图可以看出,方波的电平突变发生在锯齿波过零时刻,当锯齿波的正程过零时,方波由高电平跳变为低电平,故方波发生电路可由锯齿波经一个反相型过零比较器来实现。三角波可由方波通过积分电路来实现,选用一个积分电路来完成。图中的u B电平显然上移了+1V,故在积分电路之后应接一个直流电平移位电路,才能获得符合要求的u B波形。脉冲波的电平突变发生在三角波u B的过零时刻,三角波由高电平下降至零电位时,脉冲波由高电平实跳为低电平,故可用一个同相型过零比较器来实现。锯齿波波形仍是脉冲波波形对时间的积分,只不过正程和逆程积分时常数不同,可利用二极管作为开关,组成一个锯齿波发生电路。由上,可进一步将图3-3-2的方框图进一步具体化,如图3-3-3所示。 图3-3-3 多种波形发生器实际框图 器件选择,设计要求中规定只能选用通用器件,由于波形均有正、负电平,应选择由正、负电源供电的集成运放来完成,考虑到重复频率为100Hz(10ms),故选用通用型运放F741(F007)或四运放F324均可满足要求。本设计选用F741。其管脚排列及功能见附录三之三。

基于STM32的简易信号发生器

绍兴文理学院 数理信息学院 课程设计报告书题目基于STM32的简易信号发生器电子信息工程专业 1班 姓名 xxx 指导教师 xxx 时间 2014年 7月12日

课程设计任务书

基于STM32的简易波形发生器 摘要 函数信号发生器是一种能够产生多种波形,如正弦波、方波、三角波、锯齿波等的电路。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。通过对函数波形发生器的原理以及构成分析,可设计一个能变换出以上波形的波形发生器。本课题采用STM32[1]为控制芯片,采用DDS[2]的设计方法,可将采样点经D/A[3]转换后输出任意波形,可通过调节D/A转换的频率来调节输出波形的频率,也可通过改变取点的起始位置来调节波形的初始相位。 关键词信号发生器STM32 DDS

目录 课程设计任务书.............................................................................................................................. I 摘要……………………………………………………………………………………………….II 1 设计概述 (1) 2 设计方案 (2) 3 设计实现 (3) 3.1 设计框图及流程图 (3) 3.2 MCU控制模块 (5) 3.3 按键控制模块 (5) 3.4 信号输出模块 (6) 3.5 LCD显示模块 (8) 4 设计验证 (8) 5 总结 (11)

1设计概述 信号发生器作为一种历史悠久的测量仪器,早在20年代电子设备刚出现时就产生了。随着通信和雷达技术的发展,40年代出现了主要用于测试各种接收机的标准信号发生器,使得信号发生器从定性分析的测试仪器发展成定量分析的测量仪器。同时还出现了可用来测量脉冲电路或作脉冲调制器的脉冲信号发生器。 自60年代以来信号发生器有了迅速的发展,出现了函数发生器。这个时期的信号发生器多采用模拟电子技术,由分立元件或模拟集成电路构成,其电路结构复杂,且仅能产生正弦波、方波、锯齿波和三角波等几种简单波形。 自从70年代微处理器出现以后,利用微处理器、模数转换器和数模转换器,硬件和软件使信号发生器的功能扩大,产生比较复杂的波形。这时期的信号发生器多以软件为主,实质是采用微处理器对D/A的程序控制,就可以得到各种简单的波形。 在80年代以后,数字技术日益成熟,信号发生器绝大部分不再使用机械驱动而采用数字电路,从一个频率基准有数字合成电路产生可变频率信号。 90年代末出现了集中真正高性能的函数信号发生器,HP公司推出了型号为HP770S的信号模拟装置系统,它是由HP8770A任意波形数字化和HP1770A波形发生软件组成。 信号发生器技术发展至今,引导技术潮流的仍是国外的几大仪器公司,如日本横河、Agilent、Tektronix等。美国的FLUKE公司的FLUKE-25型函数发生器是现有的测试仪器中最具多样性功能的几种仪器之一,它和频率计数器组合在一起,在任何条件下都可以给出很高的波形质量,能给出低失真的正弦波和三角波,还能给出过冲很小的快沿方波,其最高频率可达到5MHz,最大输出幅度可达到10Vpp。 国内也有不少公司已经有了类似的仪器。如南京盛普仪器科技有限公司的SPF120DDS信号发生器,华高仪器生产的HG1600H型数字合成函数\任意波形信号发生器。国内信号发生器起步晚,但发展至今,已经渐渐跟上国际的脚步,能够利用高新技术开发出达到国际水平的高性能多功能信号发生器。 信号发生器在生产实践和科技领域中有着广泛的应用,各种波形曲线均可用三角函数方程式来表达。函数信号发生器是各种测试和实验过程中不可缺少的工具,在通信、测量 雷达、控制教学等领域应用十分广泛。不论是在生产、科研还是在教学上,信号发生器都是电子工程师信号仿真实验的最佳工具。而且,信号发生器的设计

简易波形发生器

摘要 波形发生器又称为振荡器,它不需要输入信号的激励,电路通过正反馈,将直流电源的能量转换为各种稳定的、随时间周期性变化的交流信号的能量而输出。即没有输入就有输出,根据输出信号波形的不同,分为正弦波振荡器和非正弦波振荡器两大类。波形发生器是一种广泛应用于电子电路、自动控制和科学实验等领域的信号源。比如电参量的测量、雷达、通信、电子对抗与电子系统、宇航和遥控遥测技术等等。RC 桥式正弦波振荡电路产生正弦波,正弦波频率可通过调节电阻R及电容C实现100HZ—20KHZ的变换,再通过电压跟随器输出正弦波。正弦波通过过零比较器,整形为方波,同样经过电压跟随器输出方波。方波通过积分运算电路,整形为三角波。 关键词正弦波发生器/过零比较器/电压跟随器/正弦波/方波/三角波

目录 1方案设计 (1) 2 简易波形发生器原理级框图 (4) 2.1 基本原理 (4) 2.2 原理框图 (4) 3 正弦波发生电路 (5) 3.1 正弦波振荡器原理和结构 (5) 3.2 产生振荡的条件 (5) 3.2.1振荡平衡条件 (5) 3.2.2 振荡起振条件 (6) 3.3 RC选频网络 (7) 3.3.1 RC桥式振荡器电路 (7) 3.3.2 RC桥式振荡器的选频特性 (8) 3.3.3 电压跟随器 (9) 4 方波发生电路 (11) 4.1 迟滞比较器 (11) 4.2 方波产生原理 (12) 5 三角波的产生电路 (13) 5.1方波到三角波的转换原理 (13) 6 简易波形发生器的设计 (15) 6.1简易波形发生器的总原理 (15) 6.1.1 输出波形 (15) 6.1.2 频率范围 (16) 6.1.3 输出电压 (16) 6.1.4 显示输出波形的类型 (16) 7 设计总结与心得体会 (17) 致谢 (18) 主要参考文献 (19) 附录一:总原理电路图 (20) 附录二:元件清单 (21)

信号发生器分析报告

信号发生器报告

————————————————————————————————作者:————————————————————————————————日期:

基于虚拟仪器的信号发生器的设计 【摘要】虚拟仪器是将仪器技术、计算机技术、总线技术和软件技术紧密的融合在一起,利用计算机强大的数字处理能力实现仪器的大部分功能,打破了传统仪器的框架,形成的一种新的仪器模式。 本次设计主要是阐述虚拟信号发生器的前面板和程序框图的设计。设计完的信号发生器的功能包括能够产生正弦波、矩形波、三角波、锯齿波四种信号波形;波形的频率、幅值、相位、偏移量及占空比等参数由前面板控件实时可调。 【关键词】虚拟仪器,信号发生器,LABVIEW 引言 信号发生器作为科学实验必不可少的装置,被广泛地应用到教学、科研等各个领域。高等学校特别是理工科的教学、科研需要大量的仪器设备,例如信号源、示波器等,常用仪器都必须配置多套,但是有些仪器设备价格昂贵,如果按照传统模式新建或者改造实验室投资巨大,造成许多学校仪器设备缺乏或过时陈旧,严重影响教学科研。如果运用虚拟仪器技术构建系统,代替常规仪器、仪表,不但可以满足实验教学的需要、节约大量的经费、降低实验室建设的成本,而且能够提高教学科研的质量与效率。 1.信号发生器的发展 信号发生器是一种悠久的测量仪器,早在20年代电子设备刚出现时它就产生了。随着通信和雷达技术的发展,40年代出现了主要用于测试各种接收机的标准信号发生器,使信号发生器从定性分析的测试仪器发展成定量分析的测量仪器。同时还出现了可用来测量脉冲电路或用作脉冲调制器的脉冲信号发生器。由于早期的信号发生器机械结构比较复杂,功率比较大,电路比较简单,因此发展速度比较慢。直到1964年才出现第一台全晶体管的信号发生器。 自60年代以来信号发生器有了迅速的发展,出现了函数发生器,这个时期的信号发生器多采用模拟电子技术,由分立元件或模拟集成电路构成,其电路结构复杂,且仅能产生正弦波、方波、锯齿波和三角波等几种简单波形,由于模拟电路的漂移较大,使其输出的波形的幅度稳定性差,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信号波形则电路结构非常复杂。自从70年代微处理器出现以后,利用微处理器、模数转换器和数

DSP多波形任意信号发生器实验报告要点

北京交通大学 数字信号处理(DSP) 综合设计性实验报告 题目:任意信号发生器的设计 学院:电子信息工程学院 班级: 指导教师:钱满义 学生: 北京交通大学电工电子教学基地 2013年7月15日 目录

一、设计任务………………………………………………… 二、实验目的………………………………………………… 三、实验要求及目标………………………………………………… 四、实验原理………………………………………………… 五、程序代码及仿真结果………………………………………………… 1. 泰勒级数产生正弦波 2. 泰勒级数产生余弦波 3. 三角波 4. 方波 5. 锯齿波 六、实验总结………………………………………… 七、参考资料…………………………………………

一. 设计任务 信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。信号发生器在现代工程中应用非常广泛。在实际中常需要产生一些特殊波形,用于仿真实际信号的波形,以检测和调试测量装置。 使用 DSP可以产生连续的正弦波信号,同样也能产生方波、锯齿波、三角波等其它各种信号波形。本设计要求采用DSP及其CODEC产生上述各种信号波形。 二. 实验目的 (1)了解产生信号的两种方法及各自的优缺点。 (2)掌握使用DSP产生正弦波的原理和算法,进而掌握一般信号产生的原理和方法。 (3)掌握5502DSK CODECC的工作原理和初始化过程。 三. 设计要求及目标 基本部分: 使用DSP产生300—4000HZ的正弦信号,要求使用计算法,并且频率可变、幅度可变、直流分量可变。

正弦波函数信号发生器

电子技术课程设计报告 电子技术课程设计报告——正弦波函数信号发生器的设计 作品40% 报告 20% 答辩 20% 平时 20% 总分 100% 设计题目:班级:班级学号:学生姓名:

目录 一、预备知识 (1) 二、课程设计题目:正弦波函数信号发生器 (2) 三、课程设计目的及基本要求 (2) 四、设计内容提要及说明 (3) 4.1设计内容 (3) 4.2设计说明 (3) 五、原理图及原理 (8) 5.1功能模块电路原理图 (9) 5.2模块工作原理说明 (10) 六、课程设计中涉及的实验仪器和工具 (12) 七、课程设计心得体会 (12) 八、参考文献 (12)

一、预备知识 函数发生器是一种在科研和生产中经常用到的基本波形生产期,现在多功能的信号发生器已经被制作成专用的集成电路,在国内生产的8038单片函数波形发生器,可以产生高精度的正弦波、方波、矩形波、锯齿波等多种信号波,这中产品和国外的lcl8038功能相同。产品的各种信号频率可以通过调节外接电阻和电容的参数进行调节,快速而准确地实现函数信号发生器提供了极大的方便。发生器是可用于测试或检修各种电子仪器设备中的低频放大器的频率特性、增益、通频带,也可用作高频信号发生器的外调制信号源。顾名思义肯定可以产生函数信号源,如一定频率的正弦波,有的可以电压输出也有的可以功率输出。下面我们用简单的例子,来说明函数信号发生器原理。 (a) 信号发生器系统主要由下面几个部分组成:主振级、主振输出调节电位器、电压放大器、输出衰减器、功率放大器、阻抗变换器(输出变压器)和指示电压表。 (b) 工作模式:当输入端输入小信号正弦波时,该信号分两路传输,其一路径回路,完成整流倍压功能,提供工作电源;另一路径电容耦合,进入一个反相器的输入端,完成信号放大功能。该放大信号经后级的门电路处理,变换成方波后经输出。输出端为可调电阻。 (c) 工作流程:首先主振级产生低频正弦振荡信号,信号则需要经过电压放大器放大,放大的倍数必须达到电压输出幅度的要求,最后通过输出衰减器来直接输出信号器实际可以输出的电压,输出电压的大小则可以用主振输出调节电位器来进行具体的调节。 它一般由一片单片机进行管理,主要是为了实现下面的几种功能: (a) 控制函数发生器产生的频率; (b) 控制输出信号的波形; (c) 测量输出的频率或测量外部输入的频率并显示; (d) 测量输出信号的幅度并显示; (e) 控制输出单次脉冲。 查找其他资料知:在正弦波发生器中比较器与积分器组成正反馈闭环电路,方波、三角波同时输出。电位器与要事先调整到设定值,否则电路可能会不起振。只要接线正确,接通电源后便可输出方波、三角波。微调Rp1,使三角波的输出幅度满足设计要求,调节Rp2,则输出频率在对应波段内连续可变。 调整电位器及电阻,可以使传输特性曲线对称。调节电位器使三角波的输出幅度经R输出等于U值,这时输出波形应接近正弦波,调节电位器的大小可改善波形。 因为运放输出级由PNP型与NPN型两种晶体管组成复合互补对称电路,输

陈冲EDA课程设计_任意波形信号发生器

EDA课程设计 任 意 波 形 信 号 发 生 器

姓名: 陈冲 班级: 07通信工程 指导老师:孙惠章 目录 一.简述 (3) 二.设计性能要求 (3) 三.系统框图 (3) 四.系统电路图 (3) 五.基本工作原理 (4) 六. 单元电路模块源程序及功能 (5)

七.系统仿真波形 (10) 八.引脚锁定 (11) 九.实验结果及硬件验证 (11) 十.实验心得 (13) 任意波形信号发生器的设计 一.简述 随着信息科技的发展,波形发生器在科技社会等多个领域发挥着越来越重要作 用。采用eda技术利用quartus60软件平台,基于大规模可编程逻辑器件fpga 设计的多功能波形发生器系统,大大简化其结构, 降低成本, 提高了系统的可靠性 和灵活性。设计中运用计数器,数据选择器,对所需的频率进行选择和同步。使用宏 功能模块存储波形。然后多波形进行幅度的选择。产生满足需要的不用频率和幅度的 波形。 二.设计性能要求 1.能输出正弦波,锯齿波,阶梯波,三角波,方波,矩形脉冲等八种波形。 2.具有幅度和频率的调整。 3.单元电路模块使用VHDL语言编写。

三.系统框图 图1.任意波形信号发生器系统框图四.系统电路图

图2.任意波形信号发生器系统电路图 五.基本工作原理 将要产生的波形数据存入波形存储器中, 然后在参考脉冲的作用下, 对输入的频率数据进行累加, 并将累加器输出的一部分作为读取波形存储器的地址, 将读出的波形数据经D/A 转换为相应的电压信号,D/A 转换器输出的一系列的阶梯电压信号经低通滤波器滤波后便输出了光滑的合成波形的信号。 选择八种基础波形为设计与实现的对象,而八个波形作为同一个任意波形发生器里的四个部分,是有着同一个输入与输出,因此在设计上还需要对波形进行选择与控制的部分,通过对时钟脉冲输入的选择,使得八个波形模块只有一个输入为时钟脉冲,其他三个模块则输入始终为0。在波形输出时,设计一个模块控制输出的波形是所要求输出的波形,在时钟脉冲选择与输出波形选择两模块之间。 对于频率的选择可以选择分频器,同时也可以选择计数器,本实验采用的是计数器以实现分频的效果,输出分别为二分频,四分频,八分频,十六分频用以实现不同的频率。幅度调节可以使用lpm_divide,可以实现八种不同的幅度调节。 六.单元电路模块源程序及功能 1.分频模块 以下为分频模块(CT74161)的VHDL语言编程源程序 LIBRARY IEEE;

课程设计——波形发生器

1.概述 波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。函数信号发生器是一种能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。通过对函数波形发生器的原理以及构成分析,可设计一个能变换出三角波、正弦波、方波的函数波形发生器。本课程采用采用RC正弦波振荡电路、电压比较器、积分电路共同组成的正弦波—方波—三角波函数发生器的设计方法。先通过RC正弦波振荡电路产生正弦波,再通过电压比较器产生方波,最后通过积分电路形成三角波。

2.设计方案 采用RC正弦波振荡电路、电压比较器、积分电路共同组成的正弦波—方波—三角波函数发生器的设计方法。先通过RC正弦波振荡电路产生正弦波,再通过电压比较器产生方波,最后通过积分电路形成三角波。文氏桥振荡器产生正弦波输出,其特点是采用RC串并联网络作为选频和反馈网络,其振荡频率f=1/2πRC.改变RC的值,可得到不同的频率正弦波信号输出。用集成运放构成电压比较器,将正弦波变换成方

3. 设计原理 3.1正弦波产生电路 正弦波由RC 桥式振荡电路(如图3-1所示),即文氏桥振荡电路产生。文氏桥振荡器具有电路简单、易起振、频率可调等特点而大量应用于低频振荡电路。正弦波振荡电路由一个放大器和一个带有选频功能的正反馈网络组成。其振荡平衡的条件是AF =1以及ψa+ψf=2n π。其中A 为放大电路的放大倍数,F 为反馈系数。振荡开始时,信号非常弱,为了使振荡建立起来,应该使AF 略大于1。 放大电路应具有尽可能大的输入电阻和尽可能小的输出电阻以减少放大电路对选频特性的影响,使振荡频率几乎仅决定于选频网络,因此通常选用引入电压串联负反馈的放大电路。正反馈网络的反馈电压U f 是同相比例运算电路的输入电压,因而要把同相比例运算电路作为整体看成电路放大电路,它的比例系数是电压放大倍数,根据起振条件和幅值平衡条件有 31 1≥+ =R Rf Av (Rf=R2+R1//D1//D2) 且振荡产生正弦波频率 Rc f π210= 图中D1、D2的作用是,当Vo1幅值很小时,二极管D1、D2接近开路,近似有Rf =9.1K +2.7K =11.8K ,,Av=1+Rf/R1=3.3>=3,有利于起振;反之当Vo 的幅值较大时,D1或D2导通,Rf 减小,Av 随之下降,Vo1幅值趋于稳定。

简易信号发生器和简易频率计

中原工学院 电子技术综合课程设计任务书

目录 第一张概述 (3) 第二章课程设计基本步骤和方法 (4) 第三章设计题目及内容 (6) 第四章心得体会 (16) 第五章主要设备及清单 (17) 第六章参考文献 (19) 第七章附录 (20)

概述 电子技术综合是高校电子类专业的重要技术课程,是继开设的“电子线路”、“数字电子技术”、“模拟电子技术”和“EDA”后的一门独立的课程,是加强学生专业实践,培养学生运用理论知识解决实践问题、训练科学实验能力和创新能力的主要环节。 在教师的指导下,学生通过综合运用所学知识,结合电子技术方面某一专题独立的开展电路的设计、安装与实验。其基本任务一方面是巩固模拟电子技术、数字电子技术课程及前期基础性试验的学习成果,两一方面是培养和训练学生的科学作风及其在电子技术方面的实践技能,提高学生综合运用电子技术知识解决实际问题的能力。 该课程是时间性非常强的课程,强调学生对电子技术的应用,运用所学的知识来解决实际的问题,学生通过熟悉设计任务、查找资料、设计电路、计算机仿真、安装调试和总结书写设计报告环节,学会自己分析、找出解决问题的方法;对设计中遇到的问题,能独立思考,查阅资料,寻找答案;掌握一些测试电路的基本方法,实践中出现一般故障,能通过“分析、观察、判断、实验、在判断”的基本方法独立解决;初步掌握电子工程设计的思路和方法,学习电子产品生产工艺的基本知识和基本操作技能,为将来能在工

作岗位上灵活运用所学的知识以及学习接受新的电子技术知识打下良好的基础。 第二章课程设计基本步骤和方法 1.方案设计 根据设计任务书给定的技术指标和条件,初步设计出完整的电路(预设计)。 主要任务是准备好实验文件,其中包括:划出方框图;画出构成框图的个单元的逻辑电路图;画出整体逻辑图;提出元器件清单;画出连接图。要完成这一阶段的任务,需要设计者进行反复思考,大量参阅文献和资料,将各种方案进行比较及可行性论证,然后才能将方案确定下来。具体步骤是: A明确带设计系统的总体方案;

简易波形发生器的设计

目录 第一章单片机开发板 (1) 1.1 开发板制作 (1) 1.1.1 89S52单片机简介 (1) 1.1.2 开发板介绍 (2) 1.1.3 89S52的实验程序举例 (3) 1.2开发板焊接与应用 (4) 1.2.1开发板的焊接 (4) 1.2.2开发板的应用 (5) 第二章函数信号发生器 (7) 2.1电路设计 (7) 2.1.1电路原理介绍 (7) 2.1.2 DAC0832的工作方式 (9) 2.2 波形发生器电路图与程序 (10) 2.2.1应用电路图 (10) 2.2.2实验程序 (11) 2.2.3 调试结果 (15) 第三章参观体会 (16) 第四章实习体会 (17) 参考文献 (18)

第一章单片机开发板 1.1 开发板制作 1.1.1 89S52单片机简介 图1.1 89s52 引脚图 如果按功能划分,它由8个部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EP ROM)、I/O口(P0口、P1口、P2口、P3口)、串行口、定时器/计数器、中断系统及特殊功能寄存器(SF R)的集中控制方式。 各功能部件的介绍: 1)数据存储器(RAM):片内为128个字节单元,片外最多可扩展至64K字节。 2)程序存储器(ROM/EPROM):ROM为4K,片外最多可扩展至64K。 3)中断系统:具有5个中断源,2级中断优先权。 4)定时器/计数器:2个16位的定时器/计数器,具有四种工作方式。 5)串行口:1个全双工的串行口,具有四种工作方式。 6)特殊功能寄存器(SFR)共有21个,用于对片内各功能模块进行管理、监控、监视。 7)微处理器:为8位CPU,且内含一个1位CPU(位处理器),不仅可处理字节数据,还可以进行位变量的处理。 8)四个8位双向并行的I/O端口,每个端口都包括一个锁存器、一个输出驱动器和一个输入缓冲器。这四个端口的功能不完全相同。 A、P0口既可作一般I/O端口使用,又可作地址/数据总线使用; B、P1口是一个准双向并行口,作通用并行I/O口使用; C、 P2口除了可作为通用I/O使用外,还可在CPU访问外部存储器时作高八位地址线使用; D、P3口是一个多功能口除具有准双向I/O功能外,还具有第二功能。 控制引脚介绍: 1)电源:单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。 2)时钟引脚XTAL1、XTAL2时钟引脚外接晶体与片内反相放大器构成了振荡器,它提供单片机的时钟控制信号。时钟引脚也可外接晶体振荡器。 振蒎电路:单片机是一种时序电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了振荡器,

任意波形信号发生器

目录 一、题目要求及分析 (1) 1.1题目要求 (1) 1.2题目分析 (1) 二、任意波形信号发生器方案设计 (3) 2.1系统设计框图与思路 (3) 2.2 系统设计原理图 (5) 2.3 相关芯片介绍 (6) 三、相关模块具体程序实现 (10) 四、仿真及实际结果与分析 (16) 4.1波形选择及仿真结果 (16) 4.2波形选择及实际结果 (18) 4.3结果分析与相关问题解决 (23) 五、总结与体会 (24) 参考文献 (25) 附录 (26)

一、题目要求及分析 1.1题目要求 任意波形信号发生器 利用FPGA器件产生控制信号及数据信号,经DAC0832和TL082转换产生以下波形: 1)正斜率斜波; 2)正弦波; 3)锯齿波; 4)任意波形。 用示波器观察输出波形。 硬件电路内容和要求:用DAC0832实现数模转换电路,用TLC082实现电流-电压转换电路,画出电路原理图。 软件设计内容和要求:VHDL编程实现任意波形的信号控制器。要求可以用开关切换不同的波形数据输出。 扩展:增加衰减控制信号,通过开关控制衰减倍数,并在数码管显示。 1.2题目分析 VHDL语言是随着集成电路系统化和高度集成化的发展而逐步发展起来的,是一种用于数字系统的设计和测试的硬件描述语言。相比传统的电路系统的设计方法,VHDL 具有多层次描述系统硬件功能的能力,支持自顶向下和基于库的设计的特点,因此设计者可以不必了解硬件结构。从系统设计入手,在顶层进行系统方框图的划分和结构设计,在方框图一级用VHDL对电路的行为进行描述,并进行仿真和纠错,然后在系统一级进行验证,最后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,下载到具体的CPLD器件中去,从而实现可编程的专用集成电路(ASIC)的设计。 在本次课程设计中,函数发生器的设计采用自顶向下的系统设计的方法,通过MAX+plusⅡ开发环境进行编辑、综合、波形仿真,并下载到CPLD器件中,采用模块化

相关文档
相关文档 最新文档