DSP外围设备接口精_第1页
DSP外围设备接口精_第2页
DSP外围设备接口精_第3页
DSP外围设备接口精_第4页
DSP外围设备接口精_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

会计学1DSP外围设备接口精主要内容

DSP与ADC、DAC的接口

DSP与外部存储器的接口

DSP与串口通信的接口

DSP与PCI总线的接口

小结第1页/共61页DSP与ADC、DAC的接口

集成的模数(A/D)和数模(D/A)转换器(CODEC)

独立ADC或DAC

可编程ADC和DAC

固定ADC或DAC

串行ADC和DAC

并行ADC或DACADC/DAC的分类第2页/共61页ADC/DAC主要性能指标

采样频率

采样精度

接口类型

自带采样保持与否

通道数目

电源数量和特性

封装尺寸

第3页/共61页

TLC320AD50C结构

第4页/共61页

TLC320AD50C操作

主、从工作方式

主通信和辅助通信模式

当M/S为高电平时,工作在主设备方式,此时FS和SCLK为输出信号。当M/S为低电平时,工作在从设备方式,数据传输由输入FS的和SCLK同步在与DSP的McBSP连接时,一般将TLC320AD50C配置为主方式,而McBSP为从方式

主通信用于正常的ADC或DAC的数据传输,辅助通信用于控制寄存器的读写

辅助通信模式可由硬件和软件两种方式触发

两种数据格式16位数据格式和15+1数据格式第5页/共61页

TLC320AD50C时序

第6页/共61页

TLC320AD50C内部控制寄存器

控制寄存器1(默认值00000000b,地址00001b)

比特位

描述

7D7=1:软件复位6D6=1:软件下电5D5=1:AUXP和AUXM为输入,D5=0:INP和INM作为输入4D4=1:监控AUXP和AUXM,D4=0:监控INP和INM3-2D3D2=11b:监控放大器增益=-18dBD3D2=10b:监控放大器增益=-8dBD3D2=01b:监控放大器增益=0dBD3D2=00b:监控放大器关闭1D1=1:数字环路使能,D1=0:数字环路禁止0D0=1:16比特DAC数据格式,D0=0:15+1比特DAC数据格式第7页/共61页

控制寄存器2(默认值00000000b,地址00010b)

比特位

描述

7FLAG管脚输出值6D6=1:电话模式使能,D6=0:电话模式禁止5抽取FIR滤波器溢出标志4D4=1:16比特ADC数据格式,D4=0:15+1比特ADC数据格式3D3=1:模拟环路使能,D3=0:模拟环路禁止2-0保留

控制寄存器3(默认值00000000b,地址00011b)

比特位

描述

7-6从设备个数5-0FSD延迟于FS的SCLK个数,最小为18第8页/共61页

控制寄存器4(默认值00000000b,地址00100b)

比特位

描述

7D7=1:旁通内部PLL,D7=0:使能内部PLL6-4采样频率选择(N):fs=MCLK/(128N)或MCLK/(512N),001b:N=1,010b:N=2,000b:N=83-2D3D2=11b:模拟输入增益关闭D3D2=10b:模拟输入增益=12dBD3D2=01b:模拟输入增益=6dBD3D2=00b:模拟输入增益=0dB1-0D1D0=11b:模拟输出增益关闭D1D0=10b:模拟输出增益=12dBD1D0=01b:模拟输出增益=6dBD1D0=00b:模拟输出增益=0dB第9页/共61页

辅助通信模式下DIN和DOUT数据格式第10页/共61页TLC320AD50C与DSP的连接第11页/共61页TLC320AD50C的初始化例程;***************************begin***************************** .mmregs .include"AD50C_cnst.h54" ;includetheconstantsusedbytheaic;************************macrodefinition***********************McBSP0_ENABLE .macro aux_reg stm #SPSA0,aux_reg st #0,*aux_reg+ orm #0x0001,*aux_reg- st #1,*aux_reg+ orm #0x0001,*aux_reg- .endm;resetRRST/XRSTtodisableMcBSPMcBSP0_DISABLE .macro aux_reg stm #SPSA0,aux_reg st #0,*aux_reg+ andm #0xfffe,*aux_reg- st #1,*aux_reg+ andm #0xfffe,*aux_reg- .endm

第12页/共61页;************************memoryallocation************************ .bss serial_int_flag,1;************************interruptvectorstable********************** .sect"vectors"int_reset: b Main;Mainprogram nop nop .space 76*16int_brint0: ;McBSP0reveiveinterrupt bd BRINT0_ISR pshm ST0 pshm ST1 .space 44*16 .text;************************InterruptServiceRoutine*******************BRINT0_ISR: ;setserial_int_flagifanyinterruptoccurs st #1,*(serial_int_flag) popm ST1 popm ST0 rete第13页/共61页;*****************************************************************;**Function: AddaInit;**Description: AD_DAinitializationforTLC320AD50C;*****************************************************************AddaInit: stm #0x0010,IMR st #0,*(serial_int_flag) ;cleartheinterruptflag McBSP0_ENABLEAR3 ;enableMcBSP rsbx INTM ;enablinginterruptsWait_1st_int: ld *(serial_int_flag),A nop nop bc Wait_1st_int,AEQ ;ifnointerrupt,wait st #0,*(serial_int_flag) ;cleartheinterruptflag;******************************************************************; DataFormatinSecondaryCommunication;D15D14D13|D12D11D10D9D8|D7D6D5D4D3D2D1D0;||register|register;R/W|address|data;******************************************************************第14页/共61页;setNo_OP_REG ld #(REG0_ADDR|REG0_SECONDARY_COMM),B call ADDA_Register_Setting;setcontrolregister1 ld #(REG1_ADDR|REG1_MAG_0DB|REG1_DAC_15P1MODE),B call ADDA_Register_Setting;setcontrolregister2 ld #(REG2_ADDR|REG2_PHONE_DISABLE|REG2_AL_DISABLE),B call ADDA_Register_Setting;setcontrolregister4,MCLK=8.192MHz,Fs=8kHz ld #(REG4_ADDR|REG4_AIG_12DB|REG4_AOG_0DB|REG4_N_8| REG4_DPLL_ENABLE),B call ADDA_Register_Setting;setcontrolregister3 ld #REG3_ADDR,B call ADDA_Register_Setting

st #0,*(serial_int_flag) ;clearflag ssbx INTM ;disableintrrupts ret第15页/共61页;*********************************************************************;**Function: ADDA_Register_Setting;**Description: AD_DAregistersetting;*********************************************************************ADDA_Register_Setting: stm#1b,DXR10 ;requestingsecondarycommunicationsWaitLoop0: ;waitingfor1stintcoming ld *(serial_int_flag),A nop nop bc WaitLoop0,AEQ st #0,*(serial_int_flag) ;clearint_flag stlm B,DXR10 ;writeoutregistervalueWaitLoop1: ;waitingfor2ndintcoming ld *(serial_int_flag),A nop nop bc WaitLoop1,AEQ st #0,*(serial_int_flag) ;clearint_flag ret

第16页/共61页PCM3002原理框图第17页/共61页PCM3002在5416DSK中的连接框图第18页/共61页PCM3002串口通信DEMO程序PCM3002初始化程序DSP初始化程序预定义参考实验:…\chap5\51_codec\codec_asm第19页/共61页CS5331A结构框图(18bitstereoADC)

第20页/共61页CS5331A数据输出时序

兼容I2S模式:SDATA:串行数据输出SCLK: 位时钟信号LRCK:左右声道数据帧切换MCLK:系统同步时钟(数字滤波及采样)第21页/共61页CS5331A与DSP的连接第22页/共61页McBSP与DMA的结合

例:考虑CS5331A与TMS320VC5402的McBSP0连接时的情况。假设每次需要处理的数据为100个,要求数据存放于起始地址分别为DATA_BUFFER_ADDR0和DATA_BUFFER_ADDR1的乒乓缓冲中,每个缓冲区长度为10022个字。另要求利用DMA的将接收的左、右声道数据分开放置,即一个乒乓缓冲中的数据应是先100个左声道数据然后100个右声道数据。第23页/共61页McBSP的参数设置:RJUST=10b,RINTM=10b,FSRM=CLKRM=0,FSRP=1,CLKRP=1,RFRLEN1=0000000b,RWDLEN1=101b,RPHASE=1,RFRLEN2=0000000b,RWDLEN2=101b,RDATDLY=01b

DMA的参数设置:DMCTR2=1,DSYN=0001,DBLW=1,FrameCount=99,AUTOINIT=1,DINM=1,IMOD=0,CTMOD=0,SIND=000,DMS=01,DIND=101,DMD=01,DMIDX0=200,DMFRI0=-198第24页/共61页;***********SampleroutineforMcBSPinitialization******************;McBSPglobaladdressMCBSP0_SPSA_ADDR .set 0x38MCBSP0_SPSD_ADDR .set 0x39 .global MCBSP0Init

.textMCBSP0Init: ;……saveenvironmentandothers stm #MCBSP0_CNST,AR2 stm #MCBSP0_SPSA_ADDR,AR3 stm #(15-1),BRC

rptb MCBSP0_loop-1 ld *AR2+,A stl A,*AR3+ ld *AR2+,A stl A,*AR3-MCBSP0_loop:

;……restoreenvironmentandother ret第25页/共61页;*******************TheconstantsofMcBSP0************************ .sect “McBSP0Init_table”MCBSP0_CNST: .word 0 ;subaddress==SPCR10 .word 0x4020 ;valueofSPCR10

;DLB=0,RJUST=10,CLKSTP=00,DXENA=0,

;ABIS=0,RINTM=10,RSYNCERR=0,RRST=0 .word 1 ;subaddress==SPCR20 .word 0 ;valueofSPCR20 .word 2 ;subaddress==RCR10 .word 0x00a0 ;valueofRCR10

;RFRLEN1=0000000,RWDLEN1=101 .word 3 ;subaddress==RCR20 .word 0x80a1 ;valueofRCR20

;RPHASE=1,RWDLEN2=101,RDATDLY=01

;..…. .word 14 ;subaddress==PCR0 .word 3 ;valueofPCR0

;XIOEN=0,RIOEN=0,FSXM=0,FSRM=0,CLKXM=0

;CLKRM=0,FSXP=0,FSRP=1,CLKXP=0,CLKRP=1第26页/共61页;***********SampleroutineforDMAinitialization******************;Ping-pongbufferaddressDATA_BUFFER_ADDR0 .set 0x3000DATA_BUFFER_ADDR1 .set 0x3200

.global DMAInit .textDMAInit:

;……saveenvironmentandothers

;setDMA-2highpriority,DMA-2&DMA-3INT,disableallDMA stm #0x8440,DMPREC

stm #DMA_CNST,AR3 stm #0,DMSA stm #40-1,BRC rptb DMA_loop-1 ld *AR3+,A stlm A,DMSDIDMA_loop:

;……restoreenvironmentandothers Ret第27页/共61页;*******************TheconstantsofDMA************************ .sect "DMAIniT_table"DMA_CNST:

;……DMA0andDMA1neverused

;DMA2usedforMcBSP0receive .word MCBSP0_DRR20_ADDR ;DMSRC2 .word DATA_BUFFER_ADDR0 ;DMDST2 .word 1 ;DMCTR2 .word 0x1863 ;DMSFC2

;DSYN=0001,DBLW=1,FrameCount=99 .word 0xc055 ;DMMCR2

;AUTOINIT=1,DINM=1,IMOD=0,CTMOD=0

;SIND=000,DMS=01,DIND=101,DMD=01

;……DMA3,DMA4,andDMA5neverused,andnoextendingaddressing .word 200,0 ;DMIDX0,DMIDX1 .word -198,0 ;DMFRI0,DMFRI1 .word MCBSP0_DRR20_ADDR ;DMGSA .word DATA_BUFFER_ADDR1 ;DMGDA .word 1,99 ;DMGCR,DMGFR

第28页/共61页

DSP与外部存储器的接口DSP与EEPROM的接口

并行接口

串行接口

第29页/共61页

24LC32A芯片功能框图

第30页/共61页

I2C总线协议A:总线空闲C:结束数据传输B:开始数据传输D:数据有效第31页/共61页

24LC32A写方式

字节写

页写第32页/共61页

24LC32A读方式

当前地址读

第33页/共61页

24LC32A读方式(续)

随机读

第34页/共61页

24LC32A读方式(续)

序列读第35页/共61页

DSP与FlashROM的接口FLASH与DSP的连接第36页/共61页

DSP与SRAM的接口RAM种类

静态RAM(SRAM)

动态RAM(DRAM)

同步触发SRAM(SBSRAM)第37页/共61页

GS71116读时序第38页/共61页

GS71116写时序第39页/共61页

GS71116与TMS320C54x的连接

第40页/共61页

DSP与FIFO的接口FIFO存储器种类

异步FIFO

触发式FIFO

标准同步FIFOFWFT同步FIFO第41页/共61页

触发式FIFOSN74ALVC7804

功能框图第42页/共61页

触发式FIFOSN74ALVC7804(续)

读写时序第43页/共61页

触发式FIFOSN74ALVC7804(续)

SN74ALVC7804与TMS320VC5402的连接第44页/共61页FWFT同步FIFOSN74ALVC7803

功能框图第45页/共61页FWFT同步FIFOSN74ALVC7803(续)

写时序第46页/共61页FWFT同步FIFOSN74ALVC7803(续)

读时序第47页/共61页FWFT同步FIFOSN74ALVC7803(续)

SN74ALVC7803与TMS320VC5402的连接第48页/共61页

DSP与串口通信的接口DSP与计算机通信的外部接口

串行口通信RS232RS485USBI

温馨提示

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

评论

0/150

提交评论