北邮课程设计-简易信号发生器

上传人:第*** 文档编号:56895297 上传时间:2018-10-16 格式:DOCX 页数:29 大小:1.23MB
返回 下载 相关 举报
北邮课程设计-简易信号发生器_第1页
第1页 / 共29页
北邮课程设计-简易信号发生器_第2页
第2页 / 共29页
北邮课程设计-简易信号发生器_第3页
第3页 / 共29页
北邮课程设计-简易信号发生器_第4页
第4页 / 共29页
北邮课程设计-简易信号发生器_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《北邮课程设计-简易信号发生器》由会员分享,可在线阅读,更多相关《北邮课程设计-简易信号发生器(29页珍藏版)》请在金锄头文库上搜索。

1、课程设计课程设计题目:简易数字信号发生器题目:简易数字信号发生器学院:电子工程学院专业:光电信息科学与工程班级: 一、一、 课程设计要求课程设计要求以 msp430 单片机为核心,通过一个 DA(数字模拟)转换芯片,将单片机输出的方波、三角波、正弦波(数字信号)转换为模拟信号输出。提供芯片:msp430G2553/msp430f5529、DAC0832、REF102、LM384、OP07。1基本要求基本要求(1)供电电压 VDD= 5V12V;(2)信号频率:5500Hz(可调);(3)输出信号电压可调范围:0.5*VDD,直流偏移可调:0.5*VDD; (4)完成输出信号切换;(5)方波占空

2、比:平滑可调 20%80%;(6)通带内正弦波峰峰值稳定度误差:10%(负载 1K) ;(7)提交设计报告。2发挥部分发挥部分(1) 信号频率:52000Hz(可调);(2) 多通道同时输出同频正弦波,方波,三角波。 (频率可调) ;(3) 输出频率与幅度可调的正弦波与余弦波,相位误差5 度;(4) 自由发挥。二、二、 系统硬件和软件框图系统硬件和软件框图1、系统硬件框图图 1 系统硬件框图MSP430GDAC0832LM358放大模块放大模块控制按键控制按键DAC0832电源模块电源模块2、软件框图图 2 系统软件框图各函数的作用和相互关系:在主函数中首先对系统的时钟、I/O 口、定时器进行

3、了初始化。初始化完毕,开启总中断。接着进入循环等待定时器中断子程序的执行。按键中断函数主要对三个菜单按键的动作进行处理。这三个菜单按键可以实现波形的切换,频率的加减,信号的使能输出。在按键中断函数中修改的信号频率大小和波形的种类这两个参数会被主函数和定时器中断函数调用。三、三、 硬件系统设计硬件系统设计1 1、 方案论证与选择方案论证与选择方案一:利用 DAC0832 的 11 号管脚做为信号输出端,8 号管脚输入基准电压,将其输出的电流信号再转换为电压信号进行检测调试。方案二:利用 DAC0832 的 8 号管脚做为信号输出端,11 号管脚输入基准电压,其输出直接为电压信号,可以直接利用示波

4、器进行检测调试。综上,方案二省去了电流信号转电压信号的过程,实行起来更加简便。所以最终采用方案二。2 2、硬件电路系统设计、硬件电路系统设计系统主控部分采用 MSP430G2452 LaunchPad 开发板;外围电路主要包括DAC 模块、放大电路、电源及按键模块。(1)DAC 模块:DAC 模块采用的是 DAC0832。 DAC0832 是 8 分辨率的 D/A 转换集成芯片。与微处理器完全兼容。这个 DA 芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。其主要特性如下:* 分辨率为 8 位;* 电流稳定时间 1us;* 可单缓冲、双缓冲或直接数字输入;*

5、只需在满量程下调整其线性度;* 单一电源供电(+5V+15V) ;主函数主函数按键中断函数按键中断函数定时器中断函数定时器中断函数* 低功耗,20mW其引脚功能如下:* D0D7:8 位数据输入线,TTL 电平,有效时间应大于 90ns(否则锁存器的数据会出错);* ILE:数据锁存允许控制信号输入线,高电平有效;* CS:片选信号输入线(选通数据锁存器) ,低电平有效;* WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于 500ns)有效。由 ILE、CS、WR1 的逻辑组合产生 LE1,当 LE1 为高电平时,数据锁存器状态随输入数据线变换,LE1 的负跳变时将输入数据锁存;* XFER

6、:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;* WR2:DAC 寄存器选通输入线,负脉冲(脉宽应大于 500ns)有效。由WR2、XFER 的逻辑组合产生 LE2,当 LE2 为高电平时,DAC 寄存器的输出随寄存器的输入而变化,LE2 的负跳变时将数据锁存器的内容打入 DAC 寄存器并开始 D/A 转换。* IOUT1:电流输出端 1,其值随 DAC 寄存器的内容线性变化;* IOUT2:电流输出端 2,其值与 IOUT1 值之和为一常数;* Rfb:反馈信号输入线,改变 Rfb 端外接电阻值可调整转换满量程精度;* Vcc:电源输入端,Vcc 的范围为+5V+

7、15V;* VREF:基准电压输入线,VREF 的范围为-10V+10V;* AGND:模拟信号地;* DGND:数字信号地。DAC 电路原理图如下:(2)放大模块:放大电路模块只要采用的是 LM358 运算放大器。LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式。其主要特性如下:* 内部频率补偿 * 直流电压增益高(约 100dB) * 单位增益频带宽(约 1MHz) * 源电压范围宽:单电源(330V); 双电源(1.5 一15V) * 低功耗电流,适合于电池供电;低输入偏流 * 低输入失调电压和失调电流 * 共

8、模输入电压范围宽,包括接地 * 差模输入电压范围宽,等于电源电压范围 我们采用的是单电源同相放大。同时为了给信号加入偏置电压,采用了加法器的设计。LM358 引脚图及引脚功能如图所示。放大电路原理图如下:(3)电源模块:实验中用到的电压主要有 12V,5V,3.5V12V:12V 电压主要是给 DAC0832,REF102 以及 LM358 提供工作电压,其来源是由稳压电源直接产生的。5V:5V 电压主要是做为基准电压源,其产生来源是 REF102 与运放OP07 搭建产生的。其电路图如图所示3.5V:其作用主要是给 DAC0832 的 19 管脚置于高电平。其来源是msp430G2553 的

9、 VCC 管脚产生的。3 3、 总电路原理图总电路原理图4 4、焊接的万能板、焊接的万能板四、四、 软件系统设计软件系统设计1 1、程序主流程、程序主流程 如图 8 所示为程序主流程图:开始系统初始化Main()函数2 2、程序设计、程序设计系统程序主要分为以下几个模块:初始化程序、主程序、输出程序和中断函数。2.12.1 初始化程序初始化程序初始化程序主要完成的引脚的配置void IO_init(void)P1DIR=0xf0;P1REN |=BIT1+BIT2+BIT3;P1IE |=0x0E;P1IES|=0x0E;P2DIR=0x0f; /P2的低四位作为输出2.22.2主程序主程序主

10、程序要负责总体程序管理功能以及 AD 使能。int main(void)/ Stop watchdog timer to prevent time out resetWDTCTL = WDTPW + WDTHOLD;IO_init();DCO_init();ADC_init();_enable_interrupts();Timer_A0_init();while(1)ADC10CTL0 |= ENC + ADC10SC;/return 0;2.32.3 按键中断程序按键中断程序主要完成按键的读取,以及相应的输出量赋值。#pragma vector = PORT1_VECTOR_interrup

11、t void PORT1_ISR(void)/-启用Port1事件检测函数-P1_IODect();/检测通过,则会调用事件处理函数P1IFG=0; /退出中断前必须手动清除IO口中断标志void P1_IODect(void)unsigned int Push_Key=0;/-排除输出IO的干扰后,锁定唯一被触发的中断标志位-Push_Key=P1IFG/-延时一段时间,避开机械抖动区域-_delay_cycles(10000);/消抖延时/-判断按键状态是否与延时前一致-if(P1INbreak;case BIT1:WaveSelect+=5;tt=1;switch(WaveSelect)

12、case 5: break;case 10: break;case 15: break;/ case 20: break;default: WaveSelect=5;break;break;case BIT2:if(tt=1)num=num+1;Tccr0=keynumnum;if(num=100)num=1;break;case BIT3:if(tt=1)num=num-1;Tccr0=keynumnum;if(num=0)num=99;break;default:break;/任何情况下均加上default2.42.4 输出程序输出程序使用 TimerA0 计数器进行输出使能#pragma

13、 vector =TIMER0_A0_VECTOR_interrupt void Timer_A0(void) /CCIFG中断被响应后,该标志位自动清零if(WaveSelect=5)if(j0)write_dac(tcoutm) ; /三角波产生下降段tcoutm = tcoutm-8;elsettcout=0;TA0CCR0 =Tccr0;if(WaveSelect=15)if(ttcout=0)if(tcoutn 0.5Vdd直流偏移可调: 0.5Vdd4 4、方波占空比可调、方波占空比可调平滑可调 20%80%七、七、 故障及问题分析故障及问题分析1、程序烧制后,将单片机连接到电路中

14、后,波形不稳定,只有当按住 P 1.3键时,波形才会稳定。解决方法:经过几次的不断程序调试后,问题一直存在。后来我们单独搭了个外设按键来代替 P 1.3 按键,发现是因为单片机的 P 1.3 按键出了故障,从而导致波形无法稳定。2、正弦波频率无法达到 500 Hz 以上。解决方法:经过查询各种资料以及不断的学习,发现是我们在程序中所取的采样点过多,从而导致波形频率无法继续上升。从而通过减少采样点的个数,使得最后波形频率达到了 2000 Hz。3、给波形添加直流偏置时遇到的阻碍。解决方法:为了给正弦波添加直流偏置我们采用了加法器。但对于负载电阻的选取遇到了一定的麻烦。若电阻过小,会导致直流偏置改

15、变非常小,要想达到预想的直流偏置大小,只能加入非常大的电压,这对电路是非常不利的。若负载电阻过大,虽然能满足直流偏置的要求,但电路的放大倍数会非常小,甚至会导致波形反而缩小。所以通过我们不断的调试,最后发现当负载电阻为33K 时不仅满足波形的放大,也满足直流偏置的要求。八、八、 本次课程设计中的创新点本次课程设计中的创新点本次课程设计我们采用了全新的电路设计,利用了 DAC0832 直接输出电压值,省去了将电流转换为电压的步骤,不仅电路更加简便,波形输出也更加稳定。在电路的焊接,调试上也更加简单。也是在老师的鼓励下,使我们的电路从一开始的设计上就独辟蹊径,在后续的实验中也顺利地能完成此次课程设计。九、九、 总结与反思总结与反思此次课程设计综合了我们在大学本科学习到的很多知识,包括微机原理与接口技术,程序设计语言,模拟电子电路,数字电子电路等,不仅是对大学知识的综合考验,也是对于大学本科所学知识的一次深层次运用,加强了我们对于知识更加系统,更加深入的理解与运用。在对于电路的设计方面,也是考验和锻炼我们去学会怎么阅读器件的说明手册,怎么从中去筛选我们所需的重要信息。也使得我们更加具备了专业所需的基础本领。在电路的焊接方面,也是对于焊接技术的再次锻炼。通过此次课程设计,收获颇多,无论是对于学习还是对于生活都是一次收获。对于电路的分模块调试,分模块焊接;对于代码的不断调试修改,电路的不断

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号