基于DSP的函数发生器及数据采集系统设计课程设计

上传人:仙*** 文档编号:30156386 上传时间:2021-10-09 格式:DOC 页数:27 大小:961.06KB
收藏 版权申诉 举报 下载
基于DSP的函数发生器及数据采集系统设计课程设计_第1页
第1页 / 共27页
基于DSP的函数发生器及数据采集系统设计课程设计_第2页
第2页 / 共27页
基于DSP的函数发生器及数据采集系统设计课程设计_第3页
第3页 / 共27页
资源描述:

《基于DSP的函数发生器及数据采集系统设计课程设计》由会员分享,可在线阅读,更多相关《基于DSP的函数发生器及数据采集系统设计课程设计(27页珍藏版)》请在装配图网上搜索。

1、11课程设计(论文)题 目 名 称 基于 DSP 的函数发生器及数据采集系统 课 程 名 称 DSP 原理与应用 学 生 姓 名 学 号 系 、专 业 信息工程系、通信工程 指 导 教 师 2010 年 11 月 11 日摘要在21世纪的今天,信号发生器已经广泛地应用于雷达应用,通信系统的仿真与测试等国防、科研和工业领域。而随着社会的不断进步和科研的不断深入,对信号发生器的波形可编程性、波形的精度与稳定性等性能提出了更高的要求。基于DSP的信号发生器正是以其编程的高度灵活性,波形的高精度与高稳定性等特点而脱颖而出,具有极大的应用价值和广泛的应用前景。该函数信号发生器主要由TMS320C5410

2、和TLC320AD50C两大部分组成。在DSP芯片上完成对波形的编程,通过多通道缓冲串口向TLC320AD50C(数模转换器)发送波形数据,通过TLC320AD50C的插值滤波等措施产生模拟波行输出。该函数信号发生器的硬件设计中TMS3205410和TLC320AD50C的连接采用SPI协议,TLC320AD50C作为SPI主器件,提供帧同步和时钟信号,多通道缓冲串口作为SPI从器件。通过软硬件的联合调试最终实现了方波、三角波、锯齿波和正弦波等波形的产生,并成功的实现了其波形的幅度和频率可调性。关键词:函数信号发生器,TMS3205410,TLC320AD50C, SPI协议IIAbstrac

3、tNowadays in the 21st century, the signal generator has been widely used in national defense, scientific research and industrial fields such as radar applications, the simulation and testing of communication systems. With the developing of society and the deepening of scientific research, the wavefo

4、rm of the programmable and the accuracy and stability properties signal generator is needed for higher improved than before. DSP-based signal generator which is famous for its highly flexibility in its programming, highly-precision waveform characteristics with highly stability and come to the fore,

5、has a great value and extensive application prospects in future. The signal generator is composed of two major parts,the TMS320C5410 and TLC320AD50C. The waveform is programmed on the DSP chips ,then the data is sent through McBSP to TLC320AD50C (DAC),and with the help of the interpolation filtering

6、 of the TLC320AD50C, the analog wave line output is formed. The signal generator hardware design ,the connection of TMS3205410 and TLC320AD50C is based on SPI protocol.TLC320AD50C is as the SPI master device, provides frame synchronization and clock signals, McBSP is as the SPI from the device. The

7、generated of waveforms such as Square wave, triangle wave, sawtooth and sine wave and so on is finally come true ,and the amplitude and frequency adjustable is successfully realization ,with the joint commissioning of hardware and software.Key words: signal generator, TMS3205410, TLC320AD50C, McBSP,

8、 SPI protocol目录摘要IABSTRACTII第 1 章 前言1第 2 章 发生器简介2第 3 章 总体设计方案33.1 CPU 单元43.2 硬件电路设计73.3 芯片简介73.4 接口设计83.5 程序设计9第 4 章 调试及仿真12第 5 章 设计总结14参考文献15附录1611第 1 章 前言在现在电子学的各个领域,常常需要高精度且频率可方便调节的信号发生器。各种波形曲线均可以用三角函数方程来表示。能够产生多种波形,如三角形,锯齿形,矩形波(含方波) 、正弦波的电路被称为函数信号发生器。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。函数信号发生器的实现方法通常有以下

9、几种:(1)用分立元件组成的函数发生器:通常是单函数发生器且频率不高,其工作很不稳定,不易调试。(2)可以由晶体管,运放IC等通用器件制作,更多的则是用专门的函数信号发生器IC产生。早期的函数信号发生器IC,如L8038、BA205、XR2207/2209等,它们的功能较少,精度不高,频率上限只有300KHz,无法产生更高的信号,调节方式也不够灵活,频率和占空比不能独立调节,二者相互影响。(3)利用单片机集成芯片的函数信号发生器:能产生多种波形,达到较高的频率,且易于调试,鉴于此,美国马克西姆公司开发了新一代函数信号发生器ICMAX038,它克服了(2)中芯片的缺点,可以达到更高的技术指标,是

10、上述芯片望尘莫及的。MAX038频率高,精度好,因此它被称为高频精密函数信号发生器IC。在锁相环,压控振荡器,频率合成器,脉宽调制器等电路的设计,MAX038都是优选的器件。(4)利用专用直接数字合成DDS芯片函数发生器:能够产生任意波形并达到很高的频率。但成本较高。综合分析以上四种实现方法的性价比,我们决定采用单片集成芯片AX038来设计函数发生器。频率越高、产生波形种类越多的发生器性能越好,但器件成本和技术要求也大大提高,因此在满足工作要求的前提下,性价比高的发生器是我们的首选。MAX038芯片是一种高频精密的函数发生器,可产生三角波、锯齿波、正弦波、方波及脉冲波,且频率及占空比的控制可独

11、立进行。 Lin管脚电流范围在10400A时电路获得最佳工作性能。输出波形的选择由逻辑地址引脚A0和A1的组合来决定:A1A010或11时,输出正弦波;A1A000时,输出方波;A1A001时输出三角波。波形切换可在03s内完成,但输出波形有05s的延迟时间。输出频率由Lin引脚的电流、SOSC引脚的对地电容量和FADJ的电压来决定。22第 2 章 发生器简介信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。凡是产生测试信号的仪器,统称为信号源,也称为信号发生器,它用于产生被测电路所需特定参数的电测试信号。函数发生器是使用最广的通用信号源,提供正弦波、锯齿波、方波、脉冲波等波

12、形,有的还同时具有调制和扫描功能。函数波形发生器在设计上分为模拟式和数字合成式。众所周知,数字合成式函数信号源(DDS)无论就频率、幅度乃至信号的信噪比(S/N)均优于模拟式,其锁相环(PLL)的设计让输出信号不仅是频率精准,而且相位抖动(phase Jitter)及频率漂移均能达到相当稳定的状态,但数字式信号源中,数字电路与模拟电路之间的干扰始终难以有效克服,也造成在小信号的输出上不如模拟式的函数信号发生器,如今市场上的大部分函数信号发生器均为DDS信号源。任意波形发生器,是一种特殊的信号源,不仅具有一般信号源波形生成能力,而且可以仿真实际电路测试中需要的任意波形。在我们实际的电路的运行中,

13、由于各种干扰和响应的存在,实际电路往往存在各种缺陷信号和瞬变信号,如果在设计之初没有考虑这些情况,有的将会产生灾难性后果。任意波发生器可以帮您完成实验,仿真实际电路,对您的设计进行全面的测试。由于任意波形发生往往依赖计算机通讯输出波形数据。在计算机传输中,通过专用的波形编辑软件生成波形,有利于扩充仪器的能力,更进一步仿真实验。另外,内置一定数量的非易失性存储器,随机存取编辑波形,有利于参考对比,或通过随机接口通讯传输到计算机作更进一步分析与处理。有些任意波形发生器有波形下载功能,在作一些麻烦费用高或风险性大的实验时,通过数字示波器等仪器把波形实时记录下来,然后通过计算机接口传输到信号源,直接下

14、载到设计电路,更进一步实验验证。由于模拟技术实现的信号发生器要求大量的硬件来做支撑,所以它的复杂度会随着波形的复杂度增加随之不成比例增加,同时由模拟电路构成的信号发生器不但参数的准确度你难以保证,而且体积和功耗都很大;而由数字电路构成的信号发生器,体积较大,价格较贵;加上人们对特殊信号需求的增加,对波形的精度、稳定性、幅度和频率的可调性要求的增加,单纯的模拟和数字电路构成的信号发生器已经难以满足这些要求,在这中情况下,基于DSP的信号发生器应运而生。33第 3 章 总体设计方案利用MATLAB或者C语言离线计算信号原始数据(根据一定的函数:如通用三角波、方波、正弦波或任意波) ,将原始数据以头

15、文件的形式或*.dat(16进制)文件读入给DSP,发出波形。将该波形经自制放大器(跟随或放大)电路,再输入给实验箱A/D端子,可以进行数据采集,采集的数据可以存储成文件形式,再次利MATLAB或C语言进行谱分析等。 DSP 控制器 D/A 转换器 A/D 转换器 图 3.1 系统框图 DSP控制模块作用为将读入的波形数据传送给D/A转换器发出波形,并且通过A/D转换器对数据采集,将采集的数据存储成文件的形式。D/A转换器作用是进行数模转换,A/D转换器的作用为进行模数转换。整个实验采用EL-DSP-EXPII教学实验系统,EL-DSP-EXPII教学实验系统属于一种综合的教学实验系统,该系统

16、采用双CPU设计,实现了DSP的多处理器协调工作。两个DSP通过HPI口并行连接, CPU1可以通过 HPI 主机接口访问CPU2的存储空间。该系统采用模块化分离式结构,使用灵活方便二次开发。可根据自己的需求选用不同类型的CPU适配板,其公司所有CPU适配板是完全兼容的,用户在不需要改变任何配置情况下,更换CPU适配板即可作TI公司的不同类型的DSP的相关试验。除此之外,在实验板上有丰富的外围扩展资源(数字、模拟信号发生器,数字量IO扩展,语音CODEC编解码、控制对象、人机接口等单元) ,可以完成DSP基础实验、算法实验、控制对象实验和编解码通信试验。44CPU1CPU2语音编码解码模块存续

17、器扩展模块信号源模块A/D模块LCD模块数字量输入、输出模块CPLDD/A模块电源模块温控模块直流电机模块步进电机模块键盘/LED模块 HPI图 3.2 EL-DSP-EXPII 教学实验系统功能框图3.1 CPU 单元CPU单元包括CPU1、CPU2两块CPU板,用户可根据需要选择不同种类的CPU板。板上除CPU之外还包括以下单元:3.1.1 CPU 模式选择CPU通常情况下可以根据用户需求工作在不同的模式下,主要用MP/Error!的电平来决定。当MP/Error!为高电平时,DSP工作在微处理器模式,当MP/Error!为低电平时。DSP工作在为计算机方式。在不同模式下存储器映射表有所不

18、同。详细信息请查阅相应的数据手册。3.1.2 电源模块在CPU板上由于TMS320VC54X数字信号处理器内核采用3.3V和1.8V供电,因此需要将通用的5V转换成3.3V和1.8V。为中央处理器提供内部电源。转换电路如图所示:C18DGNDC20C233.3V1.8VC22C21VCCNC1NC21GND31EN41IN51IN6NC7NC82GND92EN102IN112IN12NC13NC14NC15NC162OUT172OUT182 SENSE19NC20NC212 RESET221OUT231OUT241FB/ SENSE25NC26NC271 RESET28U3C19图 3.3 转

19、换电路图553.1.3 电平转换由于数字信号处理其内部采用3.3V和1.8V供电,而且其输入输出接口电平为3.3V,对于数字量输出而言完全可以和5V电平兼容。但对于数字量输入而言,由于其内部是3.3V,因此不能将中央处理器的输出口直接和外围扩展的5V器件相连,必须加入电平转换期间进行电平转换和信号隔离。典型的就是数据线,必须进行隔离,对于其他的涉及到的输入信号也要进行相应的转换。在CPU板上,U2(LVTH16245)完成了该项功能。3.1.4 复位电路以及时钟单元复位电路主要包括上电复位和硬件手动复位,每次复位要求至少要有8到10个系统时钟。因此要求适当的配置复位电路RC网络。时钟电源主要利

20、用数字信号处理器内部晶振源,并通过外部锁相环控制电路,选择适当倍频倍数,为CPU内部提供系统时钟。 +3.3V S1 R4 100K C17 4.7uF RESET R15 1k +3.3V 1 2 U3A 7414 3 4 U3B 7414 施密特触发器 D0 LED 图 3.4 复位电路图图 3.5 复位电路参数 663.1.5 语音处理单元语音CODEC采用TLC320AD50芯片。该芯片采用sigma-delta技术提供高精度低速信号变换,有两个串行同步变换通道、D/A转换前的差补滤波器和A/D变换后的滤波器。其他部分提供片上时序和控制功能。Sigma-delta结构可以实现高精度低速

21、的数模模数转换。芯片的各种应用软件配置可以通过串口来编程实现。主要包括:复位、节电模式、通信协议、串行时钟速率、信号采样速率、增益控制和测试模式。最大采样速率22.05kb/s,采样精度16bit。语音处理单元由语音输入模块、TLC320AD50模块、输出功率模块组成。语音输入模块采用偏置和差动放大技术,并经过滤波和处理后将输入到语音编解码芯片TLV320AD50,前端输入的电压范围为-2.5V-+2.5V。经过变换后输入到AD50的芯片的差动信号范围为0-5V。TLC320AD50C作为主方式,通过DSP的MCBSP0口进行通信。音频信号通过D/A转换后输出,由于TLC320AD50输出的是

22、差动信号,因此首先经过差动放大,然后可以推动功率为0.4W的板载扬声器,也可以接耳机输出。音频输入前端处理AD50DSP音频输出功率放大McBSP图 3.6 语音处理单元原理框图语音处理单元接口说明:J14:音频输入端子,可输入CD、声卡、MP3、麦克风等语音信号。J15:音频输出端子,可接耳机、音箱。J3: 语音处理单元输入信号接口J1: 语音处理单元输出信号接口J6: 地语音处理单元拨码开关说明:S1: 拨码开关:77码位备注1ON:帧同步脉冲接通,缺省设置; OFF: 帧同步脉冲关断;2ON:串口时钟接通,缺省设置;OFF: 缓冲串口时钟关断;S2:拨码开关码位备注1ON:直流量输入,O

23、FF:交流量输入,缺省设置2ON:扬声器输出OFF:扬声器关闭,缺省设置语音处理单元可调电位器说明:“输入调节”:逆时针音量变大顺时针音量变小“输出调节”:逆时针音量变大顺时针音量变小注:语音处理单元的二号孔IN和OUT通过导线的连接,可以为温控单元,信号源单元提供A/D,D/A转换的功能。3.2 硬件电路设计在系统中,为了应用DSP卓越的数字信号处理能力,我们必须先将模拟信号进行数字化(A/D转换) ,再对采样数据进行相应的算法处理,最后经过数字信号模拟化(D/A转换)后输出。在DSP系统中的关键问题是怎样十分容易和高效地实现这些转换,因此必然涉及到接口电路的设计。实验采用一种单片内集成了A

24、DC通道和DAC通道的模拟接口电路TLC320AD50C(以下简称AD50)与TMS320VC5402缓冲串口的接口实现设计,然后,基于这种接口电路的硬件设计,通过软件编程实现函数信号发生及数据采集。3.3 芯片简介TMS320VC5402是TI公司生产的从属于TMS320C54x系列的一个工作灵活、高速、具有较高性价比、低功耗的16位定点通用DSP芯片。其主要特点包括:采用改进的哈佛结构,1条程序总线(PB) ,3条数据总线(CB、DB、EB)和4条88地址总线(PAB,CAB,DAB,EAB) ,带有专用硬件逻辑CPU,片内存储器,片内外围专用的指令集,专用的汇编语言工具等。TMS320V

25、C5402含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片内还包括一个定时器(调整采样率和帧同步延时)和控制器(调整编程放大增

26、益,锁相环PLL,主从模式) 。AD50有28脚的塑料SOP封装(带DW后缀)和48脚的塑料扁平封装(带PT后缀) ,体积较小,适应于便携设备。AD50的工作温度范围是070,单一5V电源供电或5V和3.3V联合供电,工作时的最大功耗为120 mW。3.4 接口设计图 3.7 AD50 的内部结构简图图1最上面第一通道为模拟信号输入监控通道,第二通道为模拟信号转化为数字信号(A/D)通道,第三通道为数字信号转化为模拟信号(D/A)通道,最下面一路是AD50的工作频率和采样频率控制通道。本文所述的输入时钟(MCLK)为8.192MHz,A/D与D/A的采样频率为MCLK/(128*N)Hz(N为

27、AD50C的第4个寄存器46位所设)。99AD50与DSP的引脚连接方式图 3.8 系统硬件连线图AD50与TMS320VC5402是以SPI方式连接的。AD50工作在主机模式(M/S=1) ,提供SCLK(数据移位时钟)和FS(帧同步脉冲) 。TMS320VC5402工作于SPI方式的从机模式,BCLKX1和BFSX1为输入引脚,在接数据和发数据时都是利用外界时钟和移位脉冲。3.5 程序设计3.5.1 程序流程图开始 DSP 串口1 初始化 DSP中断控制设置 复位 AD50C 给寄存器 1 编程 给寄存器 2 编程 给寄存器 4 编程 给寄存器 3 编程 开始 发送 D/A转换数据接收 A

28、/D转换数据 结束 图 3.9 软件流程图3.5.2 关键代码初始化DSP串口STM SPCR1, McBSP1_SPSA ; 将SPCR1对应的子地址放到子地址寄存器1010SPR中STM #0000h, McBSP1_SPSD ; 将#0000H加载到SPCR1中,使接收中断由帧有效信号触发STM SPCR2, McBSP1_SPSA ; 将SPCR2对应的子地址放到子地址寄存器SPR中STM #0000h, McBSP1_SPSD ;帧同步发生器复位,发送器复位 STM RCR1, McBSP1_SPSA ; 将RCR1对应的子地址放到子地址寄存器SPRSTM #0040h, McBSP

29、1_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对应的子地址放到子地址

30、寄存器SPRSTM #000eh, McBSP1_SPSD ;工作于从模式初始化AD50Crsbx xf ;复位AD50call waitNOPSTM SPCR1, McBSP1_SPSA ;允许McBSP1接收数据LDM McBSP1_SPSD,AOR #0 x0001, ASTLM A, McBSP1_SPSDSTM SPCR2, McBSP1_SPSA ; 允许McBSP1发送数据LDM McBSP1_SPSD,AOR #0 x0001, ASTLM A, McBSP1_SPSDLD #0h, DP ; 数据放到第0页rpt #23NOP 1111ssbx xf ;使AD50开始工作NO

31、PNOP CALL IfTxRDY1 ;初始化AD50寄存器STM #0 x0001 ; cBSP1_DXR1;要求辅助通信NOPCALL IfTxRDY1 STM #0100h, McBSP1_DXR1;写00h到寄存器1,15+1模式CALL IfTxRDY1STM #0000h, McBSP1_DXR1 NOPNOPrpt #20hnop CALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;要求辅助通信CALL IfTxRDY1 STM #0200h, McBSP1_DXR1;写00h到寄存器2CALL IfTxRDY1STM #0000h, McBSP1_DX

32、R1 CALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;要求辅助通信CALL IfTxRDY1 STM #0300h, McBSP1_DXR1;写00h到寄存器3CALL IfTxRDY1STM #0000h, McBSP1_DXR1 CALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;要求辅助通信STM #0490h, McBSP1_DXR1;写00h到寄存器4;不使用内部PLL;采样频率为64kCALL IfTxRDY11212STM #0000h, McBSP1_DXR1 第 4 章 调试及仿真1语音处理单元”的拨码开关设置: S1:

33、拨码开关码位备注1ON:帧同步脉冲接通2ON:串口时钟接通S2: 拨码开关码位备注1OFF:交流量输入2OFF:扬声器关闭2用音频线连接“语音模块”的J14和J153运行CCS软件,加载程序;4加载实验数据File/Data/Load 分别装载sin.dat和其它波形数据5按F5运行程序,用示波器检测“语音处理单元”的2号孔接口“J1”输出一个正弦波;图 4.1 正弦波图1313图 4.2 方波图图 4.3 三角波图6查看数据存储器中的内容变化加载实验数据File/Data/Load ,装载sin.dat,数据存储器内容为:图 4.4 采集前时域波形图对数据进行采集,数据存储器内容为:1414

34、图 4.5 采集后时域波形图第 5 章 设计总结通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。通过这次课程设计,加强了我们动手、思考和解决问题的能力。同时我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。某个人的离群都可能导致导致整项工作的失败

35、。只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败。团结协作是我们实习成功的一项非常重要的保证。而这次实习也正好锻炼我们这一点,这也是非常宝贵的。对我而言,知识上的收获重要,精神上的丰收更加可喜。挫折是一份财富,经历是一份拥有。这次课程设计必将成为我人生旅途上一个非常美好的回忆!1515参考文献1 支长义等.DSP 原理及开发应用.北京:北京航空航天大学出版社,2006.2 清源科技.TMS320C54xDSP 硬件开发教程.北京:机械工业出版社,2003.3 彭启琮等.DSP 技术的发展与应用.北京:高等教育出版社,2002.4 苏涛等.DSP

36、实用技术.西安:西安电子科技大学出版社,2002.5 刘益成.TMS320C54xDSP 应用程序设计与开发.北京航空航天大学出版社,2002.6 赵红怡.DSP 技术与应用实例(第二版).北京电子工业出版社,2008.7 周霖.DSP 通信工程技术应用.北京国防工业出版社,2004.8 汪安民等.DSP 应用开发使用子程序.北京人民邮电出版社,2005.9 张雄伟等.DSP 芯片的原理与开发应用.北京电子工业出版社,2000.1616附录源程序:源程序:/*you must load the data file wave.dat before your running the program

37、!*/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 _O

38、penMcBSP.global _CloseMcBSP .global _WRANDREAD .include MMRegs.h_InitC5402:NOPLD #0, DP ; reset datapage pointer1717STM #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 #0 xF7ff, CLKMD * S

39、TM #0 x4007, CLKMD ; set C5402 DSP clock to 100MHz;(based on DSK crystal at 20MHz)* Configure C5402 System Registers *STM #0 x2000, SWWSR ; 2 wait cycle for IO space &; 0 wait cycle for data&prog spacesSTM #0 x0000,BSCR ; set wait states for bank switch:; 64k mem bank, extra 0 cycle between; consecu

40、tive prog/data read;STM #0 x1800,ST0 ; ST0 at default setting;STM #0 x2900,ST1 ; ST1 at default setting(note:INTX=1)STM #0 x00A0,PMST ; MC mode & OVLY=1, vectors at 0080h* Set up Timer Control Registers *STM #0 x0010, TCR ; stop onchip timer0STM #0 x0010, TCR1 ; stop onchip timer1; Timer0 is used as

41、 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, McB

42、SP1_SPSA ; register subaddr for SPCR2; XINT generated by frame sync1818STM #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

43、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 subadd

44、ress of PCRSTM #000eh, McBSP1_SPSD ; clk and frame from external (slave); FS at pulsemode(00)* Finish DSP Initialization *STM #0 x0000, IMR ; disable peripheral interruptsSTM #0 xFFFF, IFR ; clear the intrupts flagsRET ; return to mainNOPNOP * Waiting for McBSP0 RX Finished *IfRxRDY1:NOPSTM SPCR1, M

45、cBSP1_SPSA ; enable McBSP1 RxLDM McBSP1_SPSD, AAND #0002h, A ; mask RRDY bitBC IfRxRDY1, AEQ ; keep checkingNOPNOPRET ; returnNOP1919NOP* Waiting for McBSP0 TX Finished *IfTxRDY1:NOPSTM SPCR2, McBSP1_SPSA ; enable McBSP1 TxLDM McBSP1_SPSD, AAND #0002h, A ; mask TRDY bitBC IfTxRDY1, AEQ ; keep checki

46、ng NOPNOPRET ; returnNOPNOP*_OpenMcBSP:rsbx xfcall waitNOPSTM SPCR1, McBSP1_SPSA ; enable McBSP0 RX for ADC data inLDM McBSP1_SPSD,AOR #0 x0001, ASTLM A, McBSP1_SPSDSTM SPCR2, McBSP1_SPSA ; enable McBSP0 TX for DTMF outLDM McBSP1_SPSD,AOR #0 x0001, ASTLM A, McBSP1_SPSDLD #0h, DP ; load data page 0rp

47、t #23NOP ssbx xf2020NOPNOP;CALL IfTxRDY1;STM #0 x0101, McBSP1_DXR1;CALL IfTxRDY1;STM #0 x0208, McBSP1_DXR1;rsbxxf; NOP;NOP CALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;request secondary communicationNOPCALL IfTxRDY1 STM #0100h, McBSP1_DXR1;write 00h to register 1CALL IfTxRDY1STM #0000h, McBSP1_DXR1 NOPNOP

48、rpt #20hnopCALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1 STM #0200h, McBSP1_DXR1;write 00h to register 2 CALL IfTxRDY1STM #0000h, McBSP1_DXR1 CALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1 STM #0300h, McBSP1_DXR1;write 00h to

49、 register 3CALL IfTxRDY12121STM #0000h, McBSP1_DXR1 CALL IfTxRDY1STM #0 x0001, McBSP1_DXR1;request secondary communicationCALL IfTxRDY1 STM #0490h, McBSP1_DXR1;write 00h to register 4;bypass internal DPLL;and select the Sample Frequency CALL IfTxRDY1STM #0000h, McBSP1_DXR1 ;CALL IfTxRDY1;STM #0 x000

50、1, McBSP1_DXR1;CALL IfTxRDY1;STM #0102h, McBSP1_DXR1 ;enable digital loopback ;CALL IfTxRDY1;STM #0 x0001, McBSP1_DXR1;CALL IfTxRDY1;STM #0208h, McBSP1_DXR1 ;enable analog loopbackRETNOPNOP*_CloseMcBSP:STM SPCR1, McBSP1_SPSA ; disable McBSP0 RXLDM McBSP1_SPSD,AAND #0 xFFFE, ASTLM A, McBSP1_SPSDSTM S

51、PCR2, McBSP1_SPSA ; disable McBSP0 TXLDM McBSP1_SPSD,AAND #0 xFFFE, ASTLM A, McBSP1_SPSDRPT #52222RETNOPNOP*_WRANDREAD:stm0 x0039,ar3stm0 x3000,ar2stm0 x1000,ar1loop:CALL IfTxRDY1 ldu*ar1+,Bnopnopnopnopand #0fffeh,b ;mask the LSBnopnopnopnopstlmB, McBSP1_DXR1nopnopnopnopCALL IfRxRDY1ldm McBSP1_DRR1,bstl b,*ar2+nopnopnop2323nopbanzloop,*ar3-nopnopretnopnop *wait: stm 20h,ar3loop1: stm 020h,ar4loop2:banz loop2,*ar4-banz loop1,*ar3-ret nopnopnopnop.end* End of File InitC5402.asm*

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!