




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及应用课程设计题 目: 用单片机实现的波形发生器 专 业: 10自动化(2) 学 号: 201010320220 姓 名: 完成日期: 2013-6-28 指导教师: 张 玲 单片机原理及应用课程设计任务书班级: 姓名: 指导老师:张 玲 2013年 6 月 28 日设计题目:用单片机实现的波形发生器设计任务1 以单片机为主控制器设计一波形发生器,通过示波器观察所得的信号波形。2 通过功能选择,可输出方波、正弦波和三角波。设计要求1 调研、查找并收集资料。2 总体设计。3 硬件设计::用a4纸画出硬件的接线图。4 软件设计:画流程图及编写程序。5 撰写设计说明书(字数约2500字左右)。6 参考资料目录参考资料单片机原理及接口技术 胡汉才 清华大学出版社单片机中级教程 张俊谟 北航出版社单片机原理及接口技术 李全利 高等教育出版社教研室主任签字: 年 月 日 目录1 引言42 概述52.1 方案论证5方案一5方案二5方案三53主要芯片介绍63.1 高精度可编程波形发生器ad9833中文资料63.1.1 ad983363.1.2 ad9833的结构及功能64 软件程序94.1 程序流程图94.2 程序95 调试与实物展示135.1结果分析135.2 实物图16附录:总体电路图171 引言 信号发生器是指产生所需参数的电测试信号的仪器。按信号波形可分为正弦信号、函数(波形)信号、脉冲信号和随机信号发生器等四大类。信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。各种波形曲线均可以用三角函数方程式来表示。能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。正弦信号是频率成分最为单一的一种信号,因这种信号的波形是数学上的正弦曲线而得名。任何复杂信号例如音乐信号,都可以通过傅里叶变换分解为许多频率不同、幅度不等的正弦信号的迭加。方波信号是指电路系统中信号的质量,如果在要求的时间内,信号能不失真地从源端传送到接收端,我们就称该信号是方波信号。信号具有良好的方波信号是指当在需要的时候,具有所必需达到的电压电平数值。差的方波信号不是由某一单一因素导致的,而是板级设计中多种因素共同引起的。主要的方波信号问题包括反射、振荡、地弹、串扰等阶梯波发生器产生的阶梯信号,在无线电遥测,调频信号磁带记录以及数字电压表中较为有用,有时作为比较基准电压.产生阶梯波的方法也较多。 实现信号发生器的方法有很多种,通过模拟电路的脉冲信号发生电路配合积分微分电路可以产生正弦,三角波,方波信号,而目前市面上有很多集成好的信号发生器芯片,例如ad9850、ad9833等芯片,能通过单片机等控制器产生频率可变的很稳定和精度很高的基础信号,本设计采用at89s52控制集成芯片ad9833产生正弦波,三角波和方波信号,通过加法器处理方波信号实现方波到阶梯波的转变,并利用第二课堂的资源制作成实物,将实验产生的波形通过数字示波器测试出来。2 概述 该系统是通过51单片机控制集成的dds波形发生器产生三角波,正弦波,方波的电路设计,经过测试系统能产生精确度为0.1hz的上述波形,频率范围可通过控制器使频率在1hz3mhz的稳定的波形范围内。该设计通过了硬件调试,设计论文中的波形图像都来自于数字示波器的usb flash devide端口。2.1 方案论证方案一:通过da0832 8位精度的数字-模拟转换芯片,使用这块集成芯片优点有芯片价格低廉,接口简单,软件编写简单,但不足之处是芯片产生的合成信号转换速度低,产生信号的频率范围很有限方案二:采用纯数字模拟技术,用ne555史密斯触发器产生方波信号,以方波为基波通过模拟电路组成的积分微分电路再生成其他波形,通过手动调节电阻从而控制波形频率,其结构图如图1 图1 该方案的优点在于成本很低很低,并且可以免去程序的编制,不需要微处理器的知识,能很好的巩固硬件知识。但有利必有弊,其缺点在于过多的硬件器件使系统稳定性大幅度下降,没有软件辅助波形设定麻烦,波形不稳定,最主要的是纯模拟电路调试很麻烦。方案三:采用集成芯片dds波形发生器,该系列芯片优点突出,其中ad9833是adi公司生产的一款低功耗,可编程波形发生器,能够产生正弦波、三角波、方波输出。其特点是频率和相位可通过改变内部寄存器来编程,通过主控制器选择波形,频率。三线的spi接口使得线路简单,软件编写简单,输出频率有所提高,其缺点是输出杂散大。 按键输入频率和切换波形at89s52spi通信ad9833信号发生器根据上面的优缺点比较综合论证,本设计采用方案三。3主要芯片介绍3.1 高精度可编程波形发生器ad9833中文资料3.1.1 ad9833 ad9833是adi公司生产的一款低功耗,可编程波形发生器,能够产生正弦波、三角波、方波输出。波形发生器广泛应用于各种测量、激励和时域响应领域,ad9833无需外接元件,输出频率和相位都可通过软件编程,易于调节,频率寄存器是28位的,主频时钟为25mhz时,精度为0.1hz,主频时钟为1mhz时,精度可以达到0.004hz。可以通过3个串行接口将数据写入ad9833,这3个串口的最高工作频率可以达到40mhz,易于与dsp和各种主流微控制器兼容。ad9833的工作电压范围为2.3v5.5v。3.1.2 ad9833的结构及功能 电路结构 ad9833是一块完全集成的dds(direct digital frequency synthesis)电路,仅需要1个外部参考时钟、1个低精度电阻器和一个解耦电容器就能产生高达12.5mhz的正弦波。除了产生射频信号外,该电路还广泛应外于各种调制解调方案。这些方案全都用在数字领域,采用dsp技术能够把复杂的调制解调算法简化,而且很精确。 ad9833的内部电路主要有数控振荡器(nco)、频率和相位调节器、sine rom、数模转换器(dac)、电压调整器,其功能框图如图2所示。图2 ad933的核心是28位的相位累加器,它由加法器和相位寄存器组成,每来1个时钟,相位寄存器以步长增加,相位寄存器的输出与相位控制字相加后输入到正弦查询表地址中。正弦查询表包含1个周期正弦波的数字幅度信息,每个地址对应正弦波中0360范围内的1个相位点。查询表把输入的地址相位信息映射成正弦波幅度的数字量信号,去dac输出模拟量,相位寄存器每经过228/m个mclk时钟后回到初始状态,相应地正弦查询表经过一个循环回到初始位置,这样就输出了一个正弦波。输出正弦波频率为:foutm(fmclk/228) (1)其中,m为频率控制字,由外部编程给定,其范围为0m2281。 vdd引脚为ad9833的模拟部分和数字部分供电,供电电压为2.3v5.5v。ad9833内部数字电路工作电压为2.5v,其板上的电压调节器可以从vdd产生2.5v稳定电压,注意:若vdd小于等于2.7v,引脚cap/2.5v应直接连接至vdd。 功能描述 ad9833有3根串行接口线,与spi、qspi、microwire和dsp接口标准兼容,在串口时钟sclk的作用下,数据是以16位的方式加载到设备上,时序图如图3所示,fsync引脚是使能引脚,电平触发方式,低电平有效。进行串行数据传输时,fsync引脚必须置低,要注意fsync有效到sclk下降沿的建立时间t7的最小值。fsync置低后,在16个sclk的下降沿数据被送到ad9833的输入移位寄存器,在第16个sclk的下降沿fsync可以被置高,但要注意在sclk下降沿到fsync上升沿的数据保持时间ts的最小和最大值。当然,也可以在fsync为低电平的时候,连续加载多个16位数据,仅在最后一个数据的第16个sclk的下降沿的时将fsync置高,最后要注意的是,写数据时sclk时钟为高低电平脉冲,但是,在fsync刚开始变为低时,(即将开始写数据时),sclk必须为高电平(注意t11这个参数)。当ad9833初始化时,为了避免dac产生虚假输出,reset必须置为1(reset不会复位频率、相位和控制寄存器),直到配置完毕,需要输出时才将reset置为0;reset为0后的89个mclk时钟周期可在dac的输出端观察到波形。ad9833写入数据到输出端得到响应,中间有一定的响应时间,每次给频率或相位寄存器加载新的数据,都会有78个mclk时钟周期的延时之后,输出端的波形才会产生改变,有1个mclk时钟周期的不确定性,因为数据加载到目的寄存器时,mclk的上升沿位置不确定。3.2 89s52介绍 at89s52是一种低功耗、高性能cmos8位微控制器,具有8k 在系统可编程flash存储器。使用atmel 公司高密度非易失性存储器技术制造,与工业80c51 产品指令和引脚完全兼容。片上flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位cpu 和在系统可编程flash,使得at89s52在众多嵌入式控制应用系统中得到广泛应用。4 软件程序4.1 程序流程图图6示出了ad9833的软件流程。无论是写控制寄存器、频率寄存器还是相位寄存器、在写数据之前都需要把选通信号置为有效状态,这样写入的数据才会有效,否则无效。在dsp发送完1个数据字后将产生spi中断请求,本设计中未使用中断方式,而且通过查询中断标志来跳出,并虚读dsp的接收缓冲器清除中断标志。 图34.2 程序#include #include #define bitb 0x0800sbit fsync = p14;sbit sclk = p15;sbit sdata = p16;#define dds_sclk_up sclk=1#define dds_sclk_down sclk=0#define dds_sdata_up sdata=1#define dds_sdata_down sdata=0#define dds_fsync_up fsync=1#define dds_fsync_down fsync=0unsigned int config_data8;void delay2us(unsigned char i) while (-i);void writedds2byte(unsigned int config) unsigned char i;dds_sclk_down;_nop_();dds_fsync_up;_nop_();dds_sclk_up;delay2us(1);dds_fsync_down;_nop_();for (i=0; i16; i+) if (config & 0x8000) dds_sdata_up;else dds_sdata_down;delay2us(1);dds_sclk_down;delay2us(1);dds_sclk_up;config = 1;dds_fsync_up;_nop_();dds_sclk_down;delay2us(100);/波形发生函数/入口参数: 频率:freq (12000000) freq=12000000; switch(shape) case 0: config_data0=0x2108; config_data7=0x2008; break; case 1: config_data0=0x210a; config_data7=0x200a; break; case 2: config_data0=0x2128; config_data7=0x2028; break; default:config_data0=0x2108; config_data7=0x2008; temp=freq*13.4217728; /temp=freq*(0x10000000/25000000); config_data1=temp&0x3fff; config_data3=config_data1; config_data2=(temp&0x0fffc000)14; config_data4=config_data2; config_data1=config_data1|0x4000; config_data2=config_data2|0x4000; config_data3=config_data3|0x8000; config_data4=config_data4|0x8000; config_data5=0xc000; config_data6=0xe000; for(k=0;k12000000) freq1=12000000; if (freq212000000) freq2=12000000; switch(shape) case 0: config_data0=0x2108; config_data7=0x2008; break; case 1: config_data0=0x210a; config_data7=0x200a; break; case 2: config_data0=0x2128; config_data7=0x2028; break; default:config_data0=0x2108; config_data7=0x2008; temp=freq1*13.4217728; /temp=freq*(0x10000000/20000000); config_data1=temp&0x3fff; config_data2=(temp&0x0fffc000)14; temp=freq2*13.4217728; config_data3=temp&0x3fff; config_data4=(temp&0x0fffc000)14; config_data1=config_data1|0x4000; config_data2=config_data2|0x4000; config_data3=config_data3|0x8000; config_data4=config_data4|0x8000; config_data5=0xc000; config_data6=0xe000; for(k=0;k8;k+) writedds2byte(config_datak); while (1) for (k=200; k; k-);writedds2byte(config_data7 | bitb);for (k=200; k; k-);writedds2byte(config_data7 & (bitb);void key(void)if
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- CN120205008A 一种用于光伏一体化玻璃釉料的均匀混合搅拌装置
- 铁及其重要化合物(复习讲义)-2026年高考化学一轮复习(山东专用)原卷版
- 天津和平区某中学2024-2025学年八年级上学期期末考试物理试题
- 诗词赏析15首(原卷版)-2023-2024学年八年级语文下学期期
- 人生之舟(第四单元)-2025-2026学年七年级语文上册阅读素养通关训练(解析版)
- 老师不做课件的原因
- 配眼镜基础知识培训课件
- 《外墙外保温系统用建筑密封胶》编制说明
- 2025年度绿色建材砂石料采购合作协议书
- 2025年度知识产权许可使用合同承诺书
- 项目部刻章申请书
- 版挖掘机租赁合同
- 语言学概论全套教学课件
- JJF 1265-2022生物计量术语及定义
- GB/T 8118-2010电弧焊机通用技术条件
- GB/T 17421.7-2016机床检验通则第7部分:回转轴线的几何精度
- 电工技能测试
- 药事管理学全套课件
- 数字色彩课件
- 社区心理学课件
- 质量整改通知单(样板)
评论
0/150
提交评论