ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:152.04KB ,
资源ID:8876130      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8876130.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于51单片机STC89C52RC的AD9850DDS信号源设计与实现毕业设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于51单片机STC89C52RC的AD9850DDS信号源设计与实现毕业设计.docx

1、基于51单片机STC89C52RC的AD9850DDS信号源设计与实现毕业设计 SHANGHAI UNIVERSITY课程论文COURSE PAPER基于51单片机STC89C52RC的AD9850DDS信号源设计与实现报告提纲一、 电路设计方案及工作原理(根据所选题目要求,说明电路原理图,设计思想、设计指标及功能实现方式,物料清单,关键元器件选型理由等。)项目要求:1、函数信号发生器输出频率为10HZ至1MHZ(用开关分档)2、输出电压为0至8V3、输出电阻小于100欧4、可输出三种波形(正弦波、方波和三角波)5、输出直流分量可调(-3V +3V)6、有输出短路保护功能项目介绍:评分依据:1

2、、电路设计简单合理,设计分析计算过程清晰2、可输出三种波形、输出直流分量可调、有输出短路保护功能3、电路工作稳定可靠,输出波形失真小4、如合理设计方案有多个则可以加分(一):主要器件介绍1.1AD9850芯片介绍AD9850是AD公司生产的最高时钟为125 MHz、采用先进的CMOS技术的直接频率合成器,主要由可编程DDS系统、高性能模数变换器(DAC)和高速比较器3部分构成,能实现全数字编程控制的频率合成。AD9850内含可编程DDS 系统和高速比较器,可实现全数字编程控制的频率合成。可编程DDS系统的核心是相位累加器,由一个加法器和一个N位相位寄存器组成,N 一般为2432。每来一个外部参

3、考时钟,相位寄存器便以步长M递加。相位寄存器的输出与相位控制字相加后可输入到正弦查询表地址上。正弦查询表包含一个正弦波周期的数字幅度信息,每一个地址对应正弦波中0360范围的一个相位点。查询表把输入地址的相位信息映射成正弦波幅度信号,然后驱动DAC 输出模拟量。相位寄存器每过2N/ M 个外部参考时钟后返回到初始状态一次,相应地正弦查询表每经过一个循环也回到初始位置,从而使整个DDS 系统输出一个正弦波。Ad9850工作原理如下图:1.2稳压芯片 7805 7905 7812 7912芯片介绍稳压芯片 7805 7905 7812 7912电子产品中,常见的三端稳压集成电路有负电压输出的79系

4、列和正电压输出的78 系列。顾名思义,三端IC是指这种稳压用的集成电路芯片,只有三条引脚输出,分别是输入端、接地端和输出端。它的样子象是普通的三极管,TO- 220 的标准封装,也有9013样子的TO-92封装。 用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜。该系列集成稳压IC型号中的78或79后面的数字代表该三端集成稳压电路的输出电压,如7806表示输出电压为正6V,7909表示输出电压为负9V。 因为三端固定集成稳压电路的使用方便,电子制作中经常采用。 这4个型号器件的失稳电压都是3V,输出电流是1

5、A;7805输出电压是+5V、7812是+12V、最高输入电压是35V;7905输出电压是-5V、7912是-12V、最高输入电压是-35V;是三端稳压管,79XX系列是负电压输出,即输出-5V、-12V,78XX系列是正电压输出。7805管脚图集成稳压器还可以用作恒流源。 79XX系列集成压器是常用的固定负输出电压的三端集成稳压器,除输入电压和输出电压均为负值外,其他参数和特点与78XX系列集成稳压器相同。79XX系列集成稳压的三个引脚为:1脚为接地端,2脚为输入端,3脚为输出端。 79XX系列集成稳压器的应用电路也很简单。同时运用78XX和79XX稳压器,可以组成正、负对称输出的稳压电路。

6、下图所示为5V稳压电源电路,IC1采用固定正输出集成稳压器7805,IC2采用固定负输出集成稳压器7905,VD1、VD2为保护二极管,用以防止正或负输入电压有一路未接入时损坏集成稳压器。7905在实际应用中,应在三端集成稳压电路芯片上安装足够大的散热器(当然小功率的条件下不用)。当稳压管温度过高时,稳压性能将变差,甚至损坏。 7905最大输出电流为1.5A,当制作中需要一个能输出1.5A以上电流的稳压电源,通常采用几块三端稳压电路并联起来,使其最大输出电流为N个1.5A,但应用时需注意:并联使用的集成稳压电路应采用同一厂家、同一批 号的产品,以保证参数的一致。另外在输出电流上留有一定的余量,

7、以避免个别集成稳压电路失效时导致其他电路的连锁烧毁。在79* 、78 * 系列三端稳压器中最常应用的是TO-220 和TO-202 两种封装。这两种封装的图形以及引脚序号、引脚功能如附图所示。 从正面看引脚从左向右按顺序标注,接入电路时脚电压高于脚,脚为输出位。如对于79*负压系列,脚接地,脚接负电压;对与78*正压系列,脚高电位,脚接地,输出都是脚。如附图所示。 此外,还应注意,散热片总是和接地脚相连。这样在78*系列中,散热片和脚连接,而在79*系列中,散热片却和脚连接。7905典型应用电路图:79XX系列集成稳压器的典型应用电路如下图所示,这是一个输出负5V直流电压的稳压电源电路。IC采

8、用集成稳压器7905,C1、C2分别为输入端和输出端滤波电容,RL为负载电阻。当输出电流较大时,7905应配上散热板。1.3 51单片机51单片机是对目前所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为目前应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。目前很多公司都有51系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。需要注意的是52系列的单片

9、机一般不具备自编程能力。 8位CPU4kbytes程序存储器(ROM) (52为8K)128bytes的数据存储器(RAM) (52有256bytes的RAM)32条I/O口线111条指令,大部分为单字节指令21个专用寄存器2个可编程定时/计数器5个中断源,2个优先级(52有6个)一个全双工串行通信口外部数据存储器寻址空间为64kB外部程序存储器寻址空间为64kB逻辑操作位寻址功能双列直插40PinDIP封装单一+5V电源供电CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器;RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据;ROM:用以存放程序

10、、一些原始数据和表格;I/O口:四个8位并行I/O口,既可用作输入,也可用作输出;T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式;五个中断源的中断控制系统;一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信;片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率为12M。1.4数码管驱动芯片max7219 MAX7219是由美国Maxim公司开发的一款新型多功能8位LED显示驱动IC。接口采用三线SPI方式,用户只需简单修改内部相关的控制或数字RAM,便可很容易地实现多位LED显示。 MAX7219具有多个级

11、联特性,为大屏幕LED显示提供了方便。在理论上,只需三根用户I/O口控制线,便可以实现无穷多的LED级联显示。在实际应用中,已实现了149片MAX7219级联,可以控制1192位LED显示。 MAX7219特点与引脚说明 PS7219的特点: 串行接口(16位控制字); 8位共阴级LED显示驱动; 显示位数18,可数字调节; 按位进行BCD译码/不译码数字制; 16级亮度数字控制; 上电LED全熄; 提供位闪功能; 多个PS7219级联可实现任意多的LED显示; 宽24脚双列直插模块封装。 PS7219引脚图如图1所示。 引脚功能说明见表1。MAX7219内部结构 如图2 所示,MAX7219

12、由六部分组成。图2 PS7219内部组成框图 串行输入缓冲部分主要功能是与外部控制信号接口,将控制命令串行读入,并进行串并转换,供控制器读取。图1 MAX7219引脚排列 控制器 是整个IC的核心部分。它先将输入缓冲部分的控制字读入处理,根据其地址值送到相应的控制RAM或数字RAM,同时将数据送入串行同步输出部分,以便在下一个控制字输入周期,将其串行输出。 控制RAM数据RAM 这两部分一起控制LED译码显示部分,实现不同功能及字符的显示。 控制RAM包括:空操作寄存器,译码模式控制寄存器,亮度控制寄存器,掉电控制寄存器,闪烁控制寄存器,测试控制寄存器和扫描界线寄存器。 数据RAM包括:数据1

13、8寄存器。 LED译码显示 根据控制RAM和数据RAM的不同值,来实现相应的显示功能。内部时钟电路 为控制器提供频率为24MHz的基准时钟,为LED译码显示电路提供频率为1.5kHz 的扫描时钟。使用注意事项 (1)MAX7219上电后,内部RAM清零。显示前应先将亮度寄存器、译码模式寄存器及数据寄存器赋值。 (2)MAX7219应连接共阴式LED显示器,没有用的LED显示器位选引脚可以悬空不接。 (3)其显示采用扫描方式,使用普通LED亮度可能不足,可选用高亮型号或超高亮型号。对于尺寸大于0.8英寸的LED,应使用适当的驱动电路。 (4)MAX7219的RST复位端应可靠地接到复位电路上去。

14、上电复位信号宽度要求大于100ms,典型复位门限为4.65V。 (5)级联时,如果驱动的LED个数不足8的倍数,可把两片驱动器的扫描界线设置为相同的值。 例如,若需11个LED,则两片MAX7219分别联接6和5个,并把两片MAX7219的显示位数都设置为6。这样,便不会造成两片MAX7219驱动的LED亮度有所差异。 (6)当MAX7219级联个数大于8个时,需要增加CLK、LOAD信号的驱动能力。可选用如SN74HC245类似的驱动IC。其具体做法见下面将要举的一实例。应用举例单片应用 单片MAX7219驱动8位LED的原理图如图3所示。图3 MAX7219的单片应用级联应用 这里介绍一个

15、149片MAX7219级联的应用实例,如图4所示。图4 级联应用时的电原理图 本例为金融系统的壁挂式利率表,其显示的信号主要有日期和时间、存款利率及外汇兑换比率等。人机交换采用遥控方式。这个系统在硬件方面考虑了如下几个问题。 (1)电源功率 每个MAX7219的平均功率为0.75W。系统总功率P总=1490.75112W。考虑安全裕量问题,电源总设计功率为P=200W。 (2)由于149片MAX7219芯片不是配置在一块印制板,而是配置在多块板上,每块印制板上配置67片MAX7219,在相邻印制板的连接上,就应考虑CLK、LOAD、DIN的信号线不宜过长,否则通讯因受外界干扰过大而出现乱码现象

16、。 (3)RST端复位信号可连接在一起,复位信号可用专用复位芯片如IMP810L、MAX810L等控制,这里选用IMP810L。 (4)LOAD、CLK信号的驱动,采用SN74AHC244,应保证244的每根输出引脚的连接少于8个CMOS输入端。1.5.数码管数码管是一种半导体发光器件,其基本单元是发光二极管。 数码管是一类显示屏 通过对其不同的管脚输入相对的电流,会使其发亮,从而显示出数字能够显示 时间、日期、温度等所有可用数字表示的参数。器材如下图:1.6变压器用来改变交流电压,这是它名称的由来;变压器在改变电压的同时,不改变功率(不考虑损耗时),所以在电压改变时必然使电流改变,也即改变了

17、阻抗。所以在电子技术上,变压器用来作阻抗匹配用。放大器的级间耦合,除了阻容耦合、直接耦合外,还有变压器耦合,既能改变阻抗,又能隔除直流。只是变压器的体积大,频率特性差,现在用得很少。在振荡电路中,除了阻容、阻容移相振荡器外,更多应用的是变压器耦合振荡电路。这里变压器除了完成耦合以外,初级线圈的电感与外接电容器构成具有选频作用的谐振回路。1.7波段开关电路的一种接插元件。用来转换波段或选接不同电路。可按规格,以刀数、位数和绝缘片层数来分;按结构则分拨动式、旋转式、推键式、琴键式等。2.2 主要设计思想接过课题时,我们小组经过讨论,有如下几个不同方案:1.使用文氏电桥产生正弦波,经过过零比较器产生

18、方波,最后再经过积分器产生三角波。2.使用多谐振荡器产生方波,经过积分器产生三角波,再经过两次积分产生类似正弦波的波形。3.使用DDS(直接数字合成),用数字方法合成需要的各种波形。4.使用单片机(STC89C52RC)控制DDS芯片(AD9850),产生需要的波形。经过反复斟酌,小组一致认为,由于方案一和方案二是由简单模拟电路构成,有频率不能太高,容易产生干扰,正弦波波形有较大失真等缺点,首先舍弃。再者由于DDS直接数字合成过于繁琐,故最后选用方案四:使用使用单片机(STC89C52RC)控制DDS芯片(AD9850)。3.电路基本设计3.1 8051单片机系列芯片STC89C52RC有4组

19、8位共32个IO口,最高时钟频率为12MHz,本次设计中采用其中4个IO口与DDS芯片AD9850通信,4个接受独立按键的输入信号。3个与数码管显示芯片MAX7219进行通信。一组8位IO口控制位LED的点亮,一组8位IO口控制继电器。调幅电路的选择:我们选择增益可变的反相放大器进行调幅处理,由于课程要求比较高,所以我们选用美国Maxim公司的LM318单运放做此次设计中的放大器。三角波产生电路的选择:采用运算放大器做成积分器的形式对AD9850输出的方波信号进行处理产生三角波。由于积分器输出的峰峰值与积分器选用的RC时间常数有关,经过反复实验,得出最佳时间常数RC=1/4 T,T为方波周期。

20、由于频率跨度有几个数量级,故我们采用单片机控制继电器连接不同电容的形式进行频率的粗匹配,用一个可调电阻进行频率的细匹配。电源选择: 由于我们设计的是一个完善的函数信号发生器系统,所以我们不打算采用实验室提供的直流电源。而我们采用了变压器+稳压电路的设计,可以直接采取市电经过处理以后供电。分工:范俊杰:组长,总设计,安排调度组员,单片机程序,后期调试。熊康明:原料采购,电路优化,后期调试。周阳:计算参数,电源部分焊接与调试。王媛:计算参数,数码管显示部分焊接与调试。胡鹤:计算参数,模拟电路部分焊接与调试。总结与体会本次课程设计的内容为利用51单片机STC89C52RC控制AD9850 DDS芯片

21、制作一个可输出正弦波、方波、三角波等等波形的信号发生器,用示波器输出波形,用了一个寒假的时间基本完成了本次实训。在课程设计中,我们5人分工明确,每个人负责完成各自任务,然后共同研究硬件线路的连接。每个人在设计过程中都遇到了不同程度的问题,然后通过讨论,查阅资料和请教老师,各个难点都基本得到了解决。在调试过程中,我们采纳了老师的建议,将各个子程序分别调试,通过许多次的调试和修改,不断的修改和完善各个分支,最后将分支整合,组成一个完整的程序。尽管失败是一次又一次,但是我们没有气馁,一步一个脚印的去发现问题,解决问题,在摸索中不断进步。这次设计是一次团队合作的生动体现,每个人都充分发挥他们的擅长之处

22、,有的程序的编写,有的擅长硬件的连接,有的擅长报告的归纳、总结,总的来说这次设计让我们团队中的每个成员都得到了充分的锻炼,每个人在这个过程中都复习了以前所学的知识并且学到了新的知识,能力都得到不同程度的提高,可以说这是一次检验我们在大学中学习和运用知识的很好机会。为我们以后的学习和工作打下了一个良好的基础。当然在编写程序的过程中,我们也清醒的认识到自己的编程能力都有待提高,许多基本指令都不能够熟练运用,整体编程思想不够清晰。这些不足都需要我们在平时的学习过程中去弥补,通过对基本知识的学习和掌握,以及要勤于练习勤于编程,只有这样才能够去顺利完成一个程序的编写,所谓熟能生巧。缺陷分析在调试过程中,

23、我们发现输出的波形有不稳定的情况,仔细分析研究后发现,是因为电源模块的电压不够稳定导致的此原因,更换进口的电源芯片或者利用开关电源供电可以解决这个问题。三角波输出模块我们使用积分器,同时用一个可调电阻和7路继电器和电容控制积分器的RC时间常数,使三角波的失真降到最小。可是由于继电器质量良莠不齐,以及电容的容量有误差,使三角波电路不是能够很好的正常工作,更换良好的继电器就可以解决这个问题。电源模块的散热片比较烫,因为整个电路工作在比较大的功率状态,而散热片散热功率不够大,更换更大的散热片可以解决这个问题。材料清单,电路图,源程序见附录。附录一:材料清单项目数量单价总价AD9850模块1个30元3

24、0元芯片STC89C52RC1个10元10元芯片MAX72191个5元5元耐高温导线10米0.1元/米10元按键10个0.1元1元晶振12MHz1个1元1元瓷片电容 30PF2个0.1元0.2元瓷片电容 10PF1个0.1元0.1元瓷片电容 100PF1个0.1元0.1元瓷片电容 1NF1个0.1元0.1元独式电容 10NF1个0.2元0.2元CBB电容 100NF1个0.2元0.2元CBB电容 1UF 1个02元0.2元电解电容 10UF 1个0.5元0.5元继电器7个2元14元波段开关1个10元10元排线100根0.2元20元排针40Pin5组2元10元弯排针 40Pin1组2元2元排座4

25、0Pin5组2元10元杜邦接头100个0.05元5元航空插座1套5元5元电源变压器 双15V 30W1个30元30元78051个2元2元78121个2元2元79051个2元2元79121个2元2元整流桥1个3元3元大号TO-220散热片1个5元5元TO-220散热片2个1元2元自锁开关5个1元5元电解电容100UF6个0.5元3元电解电容470UF5个1元5元3mm LED 20个0.3元6元三极管S855010个0.5元5元数码管8个2元16元电位器10K2个2元4元电位器50K 1个2元2元运放LM3185个5元25元IC座X85个0.2元1元IC座 X401个2元2元IC座 X241个1

26、元1元50x3mm铜柱10根1元10元20x2mm铜柱10根0.5元5元洞洞板 13x25cm1块25元25元小号洞洞板若干10元二极管若干1元电阻若干1元焊锡 1卷30元30元共计:339.4元。附录二:电路图附录三:源程序#include # include # include #define uchar unsigned char#define uint unsigned int#define ulong unsigned long/MAX7219部分*sbit Max7219_pinCLK = P32;sbit Max7219_pinCS = P31;sbit Max7219_pinD

27、IN = P30;void delay(uint x) uint i,j; for(i=0;ix;i+) for(j=0;j=1;i-) Max7219_pinCLK=0; Max7219_pinDIN=DATA&0x80; DATA=DATA1; Max7219_pinCLK=1; void Write_Max7219(uchar address,uchar dat) Max7219_pinCS=0; Write_Max7219_byte(address); /写入地址,即数码管编号 Write_Max7219_byte(dat); /写入数据,即数码管显示数字 Max7219_pinCS=

28、1; void Init_MAX7219(void) Write_Max7219(0x09, 0xff); /译码方式:BCD码 Write_Max7219(0x0a, 0x03); /亮度 Write_Max7219(0x0b, 0x07); /扫描界限;4个数码管显示 Write_Max7219(0x0c, 0x01); /掉电模式:0,普通模式:1 Write_Max7219(0x0f, 0x01); /显示测试:1;测试结束,正常显示:0/max7219写数据/Init_MAX7219();/Delay_xms(500);/Write_Max7219(0x0f, 0x00);/MAX7219部分结束*/AD9850部分*/sbit ad9850_w_clk =P14; sbit ad9850_fq_up =P15; sbit ad9850_rest =P17; sbit ad9850_bit_data =P16; /ad9850复位(串口模式)void ad9850_reset()ad9850_w_clk=0;ad9850_fq_up=0;/rest信号ad9850_rest=0;ad9850_rest=1;ad

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1