




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
电子与信息工程学院综合实验课程报告课题名称 基于DSP的函数发生器及数据采集系统专 业 电子信息工程 班 级 07电子(2)班 学生姓名 学 号 指导教师 2010年7月1日函数发生器一般是指能自动产生正弦波、方波、三角波的电压波形的电路或者仪器。电路形式可以采用由运放及分离元件构成;也可以采用单片集成函数发生器。根据用途不同,有产生三种或多种波形的函数发生器;数据采集系统是指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程。数据采集系统是结合基于计算机的测量软硬件产品来实现灵活的、用户自定义的测量系统。本课程设计介绍方波、三角波、正弦波函数发生器和数据采集的方法。此次课程设计拟采用DSP实验室的EL-DSP-EXPII教学实验系统中的MCBSP串口控制D/A芯片,发出波形,将输出波形放大再输入给A/D芯片、采集并分析。1. 总体设计方案介绍利用MATLAB或者C语言离线计算信号原始数据(根据一定的函数:如通用三角波、方波、正弦波或任意波),将原始数据以头文件的形式或*.dat(16进制)文件读入给DSP,发出波形。将该波形经自制放大器(跟随或放大)电路,再输入给实验箱A/D端子,可以进行数据采集,采集的数据可以存储成文件形式,再次利MATLAB或C语言进行谱分析等。 DSP 控制器D/A转换器A/D转换器 系统框图 DSP控制模块作用为将读入的波形数据传送给D/A转换器发出波形,并且通过A/D转换器对数据采集,将采集的数据存储成文件的形式。D/A转换器作用是进行数模转换,A/D转换器的作用为进行模数转换。整个实验采用EL-DSP-EXPII教学实验系统,EL-DSP-EXPII教学实验系统属于一种综合的教学实验系统,该系统采用双CPU设计,实现了DSP的多处理器协调工作。两个DSP通过HPI口并行连接, CPU1可以通过HPI主机接口访问CPU2的存储空间。该系统采用模块化分离式结构,使用灵活方便二次开发。可根据自己的需求选用不同类型的CPU适配板,其公司所有CPU适配板是完全兼容的,用户在不需要改变任何配置情况下,更换CPU适配板即可作TI公司的不同类型的DSP的相关试验。除此之外,在实验板上有丰富的外围扩展资源(数字、模拟信号发生器,数字量IO扩展,语音CODEC编解码、控制对象、人机接口等单元),可以完成DSP基础实验、算法实验、控制对象实验和编解码通信试验。EL-DSP-EXPII教学实验系统功能框图CPU单元CPU单元包括CPU1、CPU2两块可以更换的 CPU板,用户可根据需要选择不同种类的CPU板。板上除CPU之外还包括以下单元:1)CPU模式选择CPU通常情况下可以根据用户需求工作在不同的模式下,主要用MP/的电平来决定。当MP/为高电平时,DSP工作在微处理器模式,当MP/为低电平时。DSP工作在为计算机方式。在不同模式下存储器映射表有所不同。详细信息请查阅相应的数据手册。2)电源模块在CPU板上由于TMS320VC54X数字信号处理器内核采用3.3V和1.8V供电,因此需要将通用的5V转换成3.3V和1.8V。为中央处理器提供内部电源。转换电路如图所示:3) 电平转换由于数字信号处理其内部采用3.3V和1.8V供电,而且其输入输出接口电平为3.3V,对于数字量输出而言完全可以和5V电平兼容。但对于数字量输入而言,由于其内部是3.3V,因此不能将中央处理器的输出口直接和外围扩展的5V器件相连,必须加入电平转换期间进行电平转换和信号隔离。典型的就是数据线,必须进行隔离,对于其他的涉及到的输入信号也要进行相应的转换。在CPU板上,U2(LVTH16245)完成了该项功能。) 复位电路以及时钟单元复位电路主要包括上电复位和硬件手动复位,每次复位要求至少要有8到10个系统时钟。因此要求适当的配置复位电路RC网络。时钟电源主要利用数字信号处理器内部晶振源,并通过外部锁相环控制电路,选择适当倍频倍数,为CPU内部提供系统时钟。语音处理单元语音CODEC采用TLC320AD50芯片。该芯片采用sigma-delta技术提供高精度低速信号变换,有两个串行同步变换通道、D/A转换前的差补滤波器和A/D变换后的滤波器。其他部分提供片上时序和控制功能。Sigma-delta结构可以实现高精度低速的数模模数转换。芯片的各种应用软件配置可以通过串口来编程实现。主要包括:复位、节电模式、通信协议、串行时钟速率、信号采样速率、增益控制和测试模式。最大采样速率22.05kb/s,采样精度16bit。 语音处理单元由语音输入模块、TLC320AD50模块、输出功率模块组成。语音输入模块采用偏置和差动放大技术,并经过滤波和处理后将输入到语音编解码芯片TLV320AD50,前端输入的电压范围为-2.5V-+2.5V。经过变换后输入到AD50的芯片的差动信号范围为0-5V。TLC320AD50C作为主方式,通过DSP的MCBSP0口进行通信。音频信号通过D/A转换后输出,由于TLC320AD50输出的是差动信号,因此首先经过差动放大,然后可以推动功率为0.4W的板载扬声器,也可以接耳机输出。语音处理单元原理框图语音处理单元接口说明:J14:音频输入端子,可输入CD、声卡、MP3、麦克风等语音信号。J15:音频输出端子,可接耳机、音箱。J3: 语音处理单元输入信号接口J1: 语音处理单元输出信号接口J6: 地语音处理单元拨码开关说明:S1: 拨码开关:码位备注1ON:帧同步脉冲接通,缺省设置; OFF: 帧同步脉冲关断;2ON:串口时钟接通,缺省设置;OFF: 缓冲串口时钟关断;S2:拨码开关码位备注1ON:直流量输入,OFF:交流量输入,缺省设置2ON:扬声器输出; OFF:扬声器关闭,缺省设置语音处理单元可调电位器说明:“输入调节”:逆时针音量变大顺时针音量变小“输出调节”:逆时针音量变大顺时针音量变小注:语音处理单元的二号孔IN和OUT通过导线的连接,可以为温控单元,信号源单元提供A/D,D/A转换的功能。2. 硬件电路设计:在系统中,为了应用DSP卓越的数字信号处理能力,我们必须先将模拟信号进行数字化(A/D转换),再对采样数据进行相应的算法处理,最后经过数字信号模拟化(D/A转换)后输出。在DSP系统中的关键问题是怎样十分容易和高效地实现这些转换,因此必然涉及到接口电路的设计。实验采用一种单片内集成了ADC通道和DAC通道的模拟接口电路TLC320AD50C(以下简称AD50)与TMS320VC5402缓冲串口的接口实现设计,然后,基于这种接口电路的硬件设计,通过软件编程实现函数信号发生及数据采集。2.1芯片简介TMS320VC5402是TI公司生产的从属于TMS320C54x系列的一个工作灵活、高速、具有较高性价比、低功耗的16位定点通用DSP芯片。其主要特点包括:采用改进的哈佛结构,1条程序总线(PB),3条数据总线(CB、DB、EB)和4条地址总线(PAB,CAB,DAB,EAB),带有专用硬件逻辑CPU,片内存储器,片内外围专用的指令集,专用的汇编语言工具等。TMS320VC5402含4K字节的片内ROM和16K字节的双存取RAM,1个HPI(Host Port Interface)接口,2个多通道缓冲单口MCBSP(Multi-Channel Buffered Serial Port),单周期指令执行时间10ns,双电源(1.8V和3.3V)供电,带有符合IEEE1149.1标准的JTAG边界扫描仿真逻辑。AD50是TI公司生产的一个16位、音频范围(采样频率为2K22.05KHZ)、内含抗混叠滤波器和重构滤波器的模拟接口芯片,它有一个能与许多DSP芯片相连的同步串行通信接口。AD50C片内还包括一个定时器(调整采样率和帧同步延时)和控制器(调整编程放大增益,锁相环PLL,主从模式)。AD50有28脚的塑料SOP封装(带DW后缀)和48脚的塑料扁平封装(带PT后缀),体积较小,适应于便携设备。AD50的工作温度范围是070,单一5V电源供电或5V和3.3V联合供电,工作时的最大功耗为120 mW。2. 2接口设计图1 AD50的内部结构简图图1最上面第一通道为模拟信号输入监控通道,第二通道为模拟信号转化为数字信号(A/D)通道,第三通道为数字信号转化为模拟信号(D/A)通道,最下面一路是AD50的工作频率和采样频率控制通道。本文所述的输入时钟(MCLK)为8.192MHz,A/D与D/A的采样频率为MCLK/(128*N)Hz(N为AD50C的第4个寄存器46位所设)。AD50与DSP的引脚连接方式AD50与TMS320VC5402是以SPI方式连接的。AD50工作在主机模式(M/S=1),提供SCLK(数据移位时钟)和FS(帧同步脉冲)。TMS320VC5402工作于SPI方式的从机模式,BCLKX1和BFSX1为输入引脚,在接数据和发数据时都是利用外界时钟和移位脉冲。3. 程序设计3.1程序流程图:3.2 关键代码初始化DSP串口STM SPCR1, McBSP1_SPSA ; 将SPCR1对应的子地址放到子地址寄存器SPR中STM #0000h, McBSP1_SPSD ; 将#0000H加载到SPCR1中,使接收中断由帧有效信号触发STM SPCR2, McBSP1_SPSA ; 将SPCR2对应的子地址放到子地址寄存器SPR中STM #0000h, McBSP1_SPSD ;帧同步发生器复位,发送器复位 STM RCR1, McBSP1_SPSA ; 将RCR1对应的子地址放到子地址寄存器SPRSTM #0040h, McBSP1_SPSD ; 接收帧长度16位STM RCR2, McBSP1_SPSA ; 将RCR2对应的子地址放到子地址寄存器SPRSTM #0040h, McBSP1_SPSD ; 接收为单相,每帧16位STM XCR1, McBSP1_SPSA ; 将XCR1对应的子地址放到子地址寄存器SPRSTM #0040h, McBSP1_SPSD ; 接收每帧16位STM XCR2, McBSP1_SPSA ; 将XCR2对应的子地址放到子地址寄存器SPRSTM #0040h, McBSP1_SPSD ; 发送为单相,每帧16位STM PCR, McBSP1_SPSA ; 将PCR对应的子地址放到子地址寄存器SPRSTM #000eh, McBSP1_SPSD ;工作于从模式初始化AD50Crsbx xf ;复位AD50call waitNOPSTM SPCR1, McBSP1_SPSA ;允许McBSP1接收数据LDM McBSP1_SPSD,AOR #0x0001, ASTLM A, McBSP1_SPSDSTM SPCR2, McBSP1_SPSA ; 允许McBSP1发送数据LDM McBSP1_SPSD,AOR #0x0001, ASTLM A, McBSP1_SPSDLD #0h, DP ; 数据放到第0页rpt #23NOP ssbx xf ;使AD50开始工作NOPNOP CALL IfTxRDY1 ;初始化AD50寄存器STM #0x0001 ; cBSP1_DXR1;要求辅助通信NOPCALL IfTxRDY1 STM #0100h, McBSP1_DXR1;写00h到寄存器1,15+1模式CALL IfTxRDY1STM #0000h, McBSP1_DXR1 NOPNOPrpt #20hnop CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;要求辅助通信CALL IfTxRDY1 STM #0200h, McBSP1_DXR1;写00h到寄存器2CALL IfTxRDY1STM #0000h, McBSP1_DXR1 CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;要求辅助通信CALL IfTxRDY1 STM #0300h, McBSP1_DXR1;写00h到寄存器3CALL IfTxRDY1STM #0000h, McBSP1_DXR1 CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;要求辅助通信STM #0490h, McBSP1_DXR1;写00h到寄存器4;不使用内部PLL;采样频率为64kCALL IfTxRDY1STM #0000h, McBSP1_DXR1 4. 调试1. 语音处理单元”的拨码开关设置: S1:拨码开关码位备注1ON:帧同步脉冲接通2ON:串口时钟接通S2: 拨码开关:码位备注1OFF:交流量输入2OFF:扬声器关闭2. 用音频线连接“语音模块”的J14和J153. 运行CCS软件,加载程序;4. 加载实验数据File/Data/Load 分别装载sin.dat和其它波形数据,OK即可;5. 按F5运行程序,用示波器检测“语音处理单元”的2号孔接口“J1”输出一个正弦波;正弦波方波三角波6. 查看数据存储器中的内容变化加载实验数据File/Data/Load ,装载sin.dat,数据存储器内容为:对数据进行采集,数据存储器内容为:5.设计总结通过本次综合实验让我们对实验室所用的实验箱有了更深层次的认识,同时结合多门专业知识设计小系统,为以后从事电子系统综合设计打下基础。在调试过程中正弦波可以无失真的采集并还原出来,但是对于方波和三角波由于偷懒,使用实验室中原有的原始数据,因为数据有所出入,调试时出现了失真,在我们重新更改过数据后,采集效果比较理想。此次课程设计中我们用利用实验室EL-DSP_EXPII教学实验系统中的MCBSP串口控制D/A芯片,发出波形,将输出波形放大再输入给A/D芯片、采集并分析。所采集的数据可以导出到.dat文件中,然后利用MATLAB或者C语言进行谱分析。要求我们能够综合利用DSP技术MATLAB、C语言、软件设计、信号系统等课程的相关知识,所以通过此次综合实验,我们不仅锻炼了动手能力,还较系统性的复习了以上课程,利用实践来检验我们所学的理论,让我们更深层次的理解和掌握理论知识。6. 附件源程序:/*you must load the data file wave.dat before your running the program!*/extern void InitC5402(void);extern void OpenMcBSP(void);extern void CloseMcBSP(void);extern void WRITEAD50(void);extern void READAD50(void);/* Main Function Program*/void main(void)InitC5402(); /* initialize C5402 DSP */OpenMcBSP();while (1)WRANDREAD(); /* mainloop */ .global _InitC5402 .global _OpenMcBSP.global _CloseMcBSP .global _WRANDREAD .include MMRegs.h_InitC5402:NOPLD #0, DP ; reset datapage pointerSTM #0, CLKMD ; software setting of DSP clockSTM #0, CLKMD ; (to divider mode before setting)TstStatu1:LDM CLKMD, AAND #01b, A ;poll STATUS bitBC TstStatu1, ANEQSTM #0xF7ff, CLKMD * STM #0x4007, CLKMD ; set C5402 DSP clock to 100MHz;(based on DSK crystal at 20MHz)* Configure C5402 System Registers *STM #0x2000, SWWSR ; 2 wait cycle for IO space &; 0 wait cycle for data&prog spacesSTM #0x0000,BSCR ; set wait states for bank switch:; 64k mem bank, extra 0 cycle between; consecutive prog/data read;STM #0x1800,ST0 ; ST0 at default setting;STM #0x2900,ST1 ; ST1 at default setting(note:INTX=1)STM #0x00A0,PMST ; MC mode & OVLY=1, vectors at 0080h* Set up Timer Control Registers *STM #0x0010, TCR ; stop onchip timer0STM #0x0010, TCR1 ; stop onchip timer1; Timer0 is used as main loop timer;STM #2499, PRD ; timer0 rate=CPUCLK/1/(PRD+1); =40M/2500=16KHz* STM #6249, PRD ; if CPU at 100M/6250=16KHz * Initialize McBSP1 Registers *STM SPCR1, McBSP1_SPSA ; register subaddr of SPCR1STM #0000h, McBSP1_SPSD ; McBSP1 recv = leftjustify; RINT generated by frame syncSTM SPCR2, McBSP1_SPSA ; register subaddr for SPCR2; XINT generated by frame syncSTM #0000h, McBSP1_SPSD ; McBSP1 Tx = FREE(clock stops; to run after SW breakpointSTM RCR1, McBSP1_SPSA ; register subaddr of RCR1STM #0040h, McBSP1_SPSD ; recv frame1 Dlength = 16 bitsSTM RCR2, McBSP1_SPSA ; register subaddr of RCR2 STM #0040h, McBSP1_SPSD ; recv Phase = 1; ret frame2 Dlength = 16bitsSTM XCR1, McBSP1_SPSA ; register subaddr of XCR1STM #0040h, McBSP1_SPSD ; set the same as recvSTM XCR2, McBSP1_SPSA ; register subaddr of XCR2STM #0040h, McBSP1_SPSD ; set the same as recvSTM PCR, McBSP1_SPSA ; register subaddress of PCRSTM #000eh, McBSP1_SPSD ; clk and frame from external (slave); FS at pulsemode(00)* Finish DSP Initialization *STM #0x0000, IMR ; disable peripheral interruptsSTM #0xFFFF, IFR ; clear the intrupts flagsRET ; return to mainNOPNOP * Waiting for McBSP0 RX Finished *IfRxRDY1:NOPSTM SPCR1, McBSP1_SPSA ; enable McBSP1 RxLDM McBSP1_SPSD, AAND #0002h, A ; mask RRDY bitBC IfRxRDY1, AEQ ; keep checkingNOPNOPRET ; returnNOPNOP* Waiting for McBSP0 TX Finished *IfTxRDY1:NOPSTM SPCR2, McBSP1_SPSA ; enable McBSP1 TxLDM McBSP1_SPSD, AAND #0002h, A ; mask TRDY bitBC IfTxRDY1, AEQ ; keep checking NOPNOPRET ; returnNOPNOP*_OpenMcBSP:rsbx xfcall waitNOPSTM SPCR1, McBSP1_SPSA ; enable McBSP0 RX for ADC data inLDM McBSP1_SPSD,AOR #0x0001, ASTLM A, McBSP1_SPSDSTM SPCR2, McBSP1_SPSA ; enable McBSP0 TX for DTMF outLDM McBSP1_SPSD,AOR #0x0001, ASTLM A, McBSP1_SPSDLD #0h, DP ; load data page 0rpt #23NOP ssbx xfNOPNOP;CALL IfTxRDY1;STM #0x0101, McBSP1_DXR1;CALL IfTxRDY1;STM #0x0208, McBSP1_DXR1;rsbxxf; NOP;NOP CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;request secondary communicationNOPCALL IfTxRDY1 STM #0100h, McBSP1_DXR1;write 00h to register 1CALL IfTxRDY1STM #0000h, McBSP1_DXR1 NOPNOPrpt #20hnop CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1 STM #0200h, McBSP1_DXR1;write 00h to register 2 CALL IfTxRDY1STM #0000h, McBSP1_DXR1 CALL IfTxRDY1STM #0x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1 STM #0300h, McBSP1_DXR1;write 00h to regis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 考点攻克自考专业(小学教育)附完整答案【网校专用】
- 2025年富裕县12345综合指挥中心招聘公益性岗位人员(1人)模拟试卷及参考答案详解1套
- 网络改变世界课件
- 2023年江苏省丹阳市中考数学必背100题及1套参考答案详解
- 期货从业资格之期货投资分析考试历年机考真题集及答案详解(典优)
- 2024年辅警招聘考试高分题库附参考答案详解【综合题】
- 2023年度燃气职业技能鉴定题库检测试题打印及参考答案详解(精练)
- 火电电力职业鉴定模拟试题附参考答案详解【巩固】
- 2025山东商务职业学院招聘21人模拟试卷附答案详解(b卷)
- 2024-2025学年度新疆能源职业技术学院妇产护理期末自我提分评估附答案详解【轻巧夺冠】
- 2023恒温恒湿实验室工程技术规程
- GB/T 4798.4-2023环境条件分类环境参数组分类及其严酷程度分级第4部分:无气候防护场所固定使用
- 程序设计基础(第3版)(2019年高等教育出版社出版图书)
- (小鼠)常用实验动物生物学特点及其在生物医学教程课件
- GB/T 5023.1-2008额定电压450/750 V及以下聚氯乙烯绝缘电缆第1部分:一般要求
- 第七章-辐射防护分析课件
- 研究生英语阅读综合教程reading more
- 比较思想政治教育学-课件
- 国有企业职务犯罪惩治与预防
- 国家教学示范中心-电子科学与技术中心-国防科技大学
- ZXONE8700技术规范书
评论
0/150
提交评论