您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 2MSP430-波形输出
页1题目:数字式信号发生器学校:电子科技大学队员:日期:2014年5月27日星期二页2摘要本设计采用430在DAC有效工作范围内,实现正弦波形信号、锯齿波形信号、方波信号输出。并且努力实现优化设计1.信号波形参数可以使用键盘输入设置调整,并在LED阵列回显2.可以使用计算机辅助设定任意波形信号数据,并使用串行接口输入系统实现波形产生输出。目录1、方案原理--------------------------------------------------------------------------------------------31.1波形选择和调节波形方案------------------------------------------------------------------31.2方波输出方案----------------------------------------------------------------------------------31.3正弦波输出方案-------------------------------------------------------------------------------31.4三角波输出方案-------------------------------------------------------------------------------42、方案的实现------------------------------------------------------------------------------------------53、本人在小组中承担的工作-----------------------------------------------------------------------64、附录----------------------------------------------------------------------------------------------------6页31方案选择1.1波形选择和调节波形方案1.2方波输出方案方波的产生程序是根据波形的频率要求计算出每次幅值跃变的时间,等到定时器A的即使时间到时进入中断进行一次跃变,而且方波占空比和频率的设置都通过定时器初始数据达到设定的要求页41.3正弦波输出方案本程序的波形产生原理是将一个波形周期分成n等分,每加上一个偏移量,而这个偏移量就决定了我们的频率大小。然后调取正弦函数数组sin_tab[100]中的数据乘以我们的相应幅度值。1.4三角波输出方案三角波的产生程序根据波形的频率要求计算出每次幅值变化的时间,写入到计数器中,继而跳去三角波储存数据,ucharcodesawtooth_tab[100]依次经过乘法诚意相应的幅度值写入DAC中。等到定时器A的计时时间到时进入中断变量i进行一次增值。页52、方案的实现2.1IAR的使用一.IARFOR430简介IARSystems是全球领先的嵌入式系统开发工具和服务的供应商。公司成立于1983年,迄今已有27年,提供的产品和服务涉及到嵌入式系统的设计、开发和测试的每一个阶段,包括:带有C/C++编译器和调试器的集成开发环境(IDE)、实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模工具。国内普及的MSP430开发软件种内不多,主要有IAR公司的EmbeddedWorkbenchforMSP430(简称为EW430)和AQ430。目前IAR的用户居多。IAREW430软件提供了工程管理,程序编辑,代码下载,调试等所有功能。并且软件界面和操作方法与IAREWforARM等开发软件一致。因此,学会了IAREW430,就可以很顺利地过渡到另一种新处理器的开发工作二.方案实现步骤1.打开、建立工程并设置2.编写程序3.程序调试添加好文件后,应该在工程下看到选择需要调试的文件,如main.c选择(Compile)按钮,对main.c进行编译第一次编译是需要保存WorkspaceFiles页64.烧入程序3、本人在小组中承担的工作本人在小组中负责调试程序,并且调节小组成员的工作。在调试程序中,我主要负责写正弦波程序和方案选择的程序。工作亮点是通过学习,掌握了430的中断的使用,并且可以运用到实际操作中。附录:50Hz正弦波程序staticintSin_tab[200]={(篇幅有限,这里不做描述)}voiddac12_init(){DMACTL0=DMA0TSEL_7;//SetupDMA0DMA0SA=(int)Sin_tab;//SourceblockaddressDMA0DA=DAC12_0DAT_;//DestinationsingleaddressDMA0SZ=0xc8;//BlocksizeDMA0CTL=DMADT_4+DMASRCINCR_3+DMAEN;//Rptsinglech,incsrc,word-wordADC12CTL0=REF2_5V+REFON;//SetupDAC0LoadwithTimer_A,groupwithDAC1DAC12_0CTL=DAC12LSEL_2+DAC12IR+DAC12AMP_2+DAC12IFG+DAC12ENC;//SetupTimer_ATACCTL1=OUTMOD_3;//CCR1set/resetTACCR1=1;//CCR1PWMDutyCycleTACCR0=800;//ClockperiodofCCR0TACTL=TASSEL_2+ID_0+MC_1;//ACLK,upmode}intmain(void){inti;WDTCTL=WDTPW+WDTHOLD;//StopWDT_BIS_SR(OSCOFF+SCG0+GIE);//DisableLFXT1xtalosc&FLLloopFLL_CTL1&=~XT2OFF;//ActivateXT2highfreqxtal//Waitforxtaltostabilizedo{IFG1&=~OFIFG;//ClearOSCFaultflagfor(i=5;i0;i--);//Timeforflagtoset}while((IFG1&OFIFG));//OSCFaultflagstillset?FLL_CTL1|=SELM1;//MCLK=XT2FLL_CTL1|=SELS;dac12_init();while(1);//Loopinplace}
本文标题:2MSP430-波形输出
链接地址:https://www.777doc.com/doc-5249396 .html