版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章第六章 C54X系列系列DSP的外设及应用的外设及应用第第6 6章章 C54x C54x系列系列DSPDSP的外设及应的外设及应用用 ?DSP ?DSP原理及实践应用原理及实践应用? ?电子课件电子课件第六章第六章 C54X系列系列DSP的外设及应用的外设及应用第六章第六章 C54X系列系列DSP的外设及应用的外设及应用第六章第六章 C54X系列系列DSP的外设及应用的外设及应用第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 TMS320C54x DSP的控制存放器TCR各位的说明如下。 Res :保存位,读成0。 Soft、Free:用于控制调试程序断点操作情况下的定时器
2、状态,这两位结合起来使用。当Soft=0且Free=0的情况时,定时器立即停止工作;当Soft=1且Free=0且计数器减到0的情况时,定时器停止工作;当Soft=x且Free=1的情况时,定时器继续运行。 PSC:定时器预定标计数器。这是一个减1 计数器,当PSC减到0后,TDDR存放器的值装载到PSC存放器,TIM减1。PSC可被TCR读取,PSC的作用相当于预分频器。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 TRB : 定时器重新加载位,用来复位片内定时器。当TRB=1时,TIM存放器装入PRD存放器中的数,并且预定标计数器PSC装入TDDR存放器中的值。TRB总是读
3、成0。 TSS: 定时器停止状态位,用于停止或启动定时器。TSS=0,定时器开始;TSS=1,定时器停止。 TDDR: 定时器分频系数。按此分频系数对CLKOUT进行分频,以改变定时周期。当PSC=0时,TDDR存放器的值装载到PSC存放器中。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 定时器可访问的存放器有三个:TIM、PRD、TCR。TIM和PRD这两种存放器共同工作,提供定时器的当前计数值。在正常情况下,当TIM减到0后,PRD中的时间常数自动地加载到TIM。当系统复位( =1) 或定时器复位(TRB=1)时,PRD中的时间常数重新加载到TIM。在TMS320C54x
4、DSP中,定时器定时周期通过16位的PRD存放器和一个4位分频器比率来控制,后者由TCR存放器的TDDR位说明。 定时器产生中断的中断周期和中断速率的计算公式分别如下。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 其中CLKOUT是DSP芯片时钟周期,TDDR和PRD分别为定时器的分频系数和时间常数。 TINT请求信号将中断标志存放器IFR中的TINT位置1,用于向CPU申请中断,可以利用中断屏蔽存放器IMR来禁止或允许该请求。当系统不用定时器时,应设置中断屏蔽存放器IMR的相应位来屏蔽TINT。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 对定时器的初始化主要
5、有以下几个步骤: (1)将TCR中的TSS位置1,关闭定时器。所对应的指令是: STM #10010H ,TCR (2)加载PRD。所对应的指令是: STM #0100H,PRD; (3)重新加载TCR(使TDDR初始化;令TSS位为0,以接通 CLKOUT;重新加载TRB位,置1,以使TIM减到0后重新加载PRD),启动定时器。所对应的指令是: STM #0C20H,TCR 假设要开放定时器中断,必须(假定INTM=1)有: 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 (4)将IFR中的TINT位置1,去除尚未处理完的定时器中断。所对应的指令是: STM #0008H ,
6、IFR (5)将IMR中的TINT位置1,开放定时器中断。所对应的指令是: STM #0008H, IMR (6)将STI中的INIM位置0,从整体上开放中断。所对应的指令是: RSBX INTM第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.1.2 定时器的应用定时器的应用 例:设例:设TMS320C5402的工作的工作频率为频率为100MHz,设置定时器,设置定时器0的定的定时周期为时周期为2s,每检测到一次中断,每检测到一次中断,计数值计数值ms就加就加1,利用查询方式每计利用查询方式每计1000个数就令个数就令XF引脚的电平翻转一引脚的电平翻转一次,在次,在XF引脚输
7、出一矩形波,使引脚输出一矩形波,使LED指示灯不停的闪烁。指示灯不停的闪烁。 通过定时器的中断周期公式通过定时器的中断周期公式我们计算出我们计算出TDDR=15,PRD=1249。因定时器因定时器2s中断一次,故每中断一次,故每1s XF引引脚的电平翻转翻转一次来实现脚的电平翻转翻转一次来实现LED指示灯不停闪烁的目的。指示灯不停闪烁的目的。 定时器中断效劳程序如下:定时器中断效劳程序如下:第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 interrupt void timer0()中断函数 ms+; while(1)循环函数 while(ms1000); / 长时间定时1000
8、ms ms=0; asm( RSBX XF ); /使用内嵌的汇编指令asm( ) 将XF清零 while(ms1000); / 长时间定时1000ms ms=0; asm( SSBX XF ); /使用内嵌的汇编指令asm( ) 将XF引脚置位 2s程序代码如下:第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 #include cpu_reg.h int j; int ms; ioport unsigned portf000; int motor; void main() asm( STM #0000h,CLKMD ); while(*CLKMD & 0 x01 );
9、asm( STM #97FFh,CLKMD ); /设置CPU运行频率100M /* 40C7h:5*clkin =100M 30c7h:4*clkin =80M 20c7h:3*clkin =60M 10C7h:2*clkin =40M */ 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 asm( stm #4240h, SWWSR ); /等待片上的程序1 asm( stm #00a0h, PMST ); /MP/MC = 0, IPTR = 001,ovly=0 asm( stm #0802h, BSCR ); asm(“ STM #0h,IMR );/中断屏蔽存放 器I
10、MR asm( STM #0010h,TCR ); /关定时器,定时控制存放器TCR地址0026H。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 asm( STM #04C1h,PRD ); /2s,定时周期存放器PRD地址0025H)。 asm( STM #0C2fh,TCR ); /TCR=最后四位 asm( STM #0008h,IFR ); asm(“ ORM #0008h,*(IMR) );/开中断,中断屏蔽存放 器IMR asm( RSBX INTM ); /开中断,状态控制存放器ST1中的中断标志 位INTM位清零,开放全部中断 ms=0; 第六章第六章 C54X
11、系列系列DSP的外设及应用的外设及应用 while(1) while(ms100); /LED_flash ms=0; asm( RSBX XF ); /位复位 motor=0 x8; for(j=0;j 1; if(motor = 0 x0) motor=0 x8; /* 只有低4 位有效 */ 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 while(ms100); ms=0; asm( SSBX XF ); /位置位 motor=0 x8; for(j=0;j 1; if(motor = 0 x0) motor=0 x8; /* 只有低4 位有效 */ interrupt
12、 void timer0() ms+; 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用6.2 主机接口主机接口 C54x片内有一个主机接口(Host Port Interface,HPI),HPI是一种高速、异步并行接口,通过它可以连接到标准的微处理器总线。通过TMS320C54x的主机接口,可以高速访问TMS320C54x的片内存储器,这样便于与其他主机之间进行信息交换。HPI接口是以主处理器为主,DSP为从的主从结构。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.2.1 HPI的结构的结构 HPI主要由五个局部组成,图是主要由五个局部组成,图是HPI的结构
13、框图。的结构框图。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 HPI存储器(DARAM): 用于TMS320XC54x与主机间传送数据,地址从1000H到17FFH,也可以用作通用的双寻址数据RAM或程序RAM。 HPI地址存放器(HPIA): 由主机对其进行直接访问,存放当前寻址HPI存储单元的地址。 HPI数据锁存器(HPID): 由主机对其进行直接访问。如果进行的是读操作那么存放从HPI存储器读出的数据;如果进行的是写操作那么存放要写到HPI存储器的数据。 HPI控制存放器(HPIC): C54x和主机都能对其直接访问,用于主处理器与DSP相互连接,实现相互的中断请求。
14、 HPI控制逻辑:用于处理HPI与主机之间的接口信号。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 当C54x与主机交换信息时,HPI是主机的一个外围设备。在TMS320C54x和主机传送数据时,HPI能自动地将外部接口传来的连续的8位数组合成16位数后传送给TMS320C54x。 HPI有两种工作方式:共用寻址方式(SAM)和仅主机寻址方式(HOM)。在共用寻址方式下,TMS320C54x和主机都能访问HPI存储器,HPI支持设备与TMS320C54x之间的高速传送数据,HPI支持的传输速度为(Fdn)/5。其中Fd为CLKOUT(TMS320C54x的主频率);n是主机每进
15、行一次外部寻址的周期数,通常n为4(或3)。假设在仅主机寻址方式下,仅仅只能让主机寻址HPI存储器,且访问的速度更快,主机每50ns寻址一个字节(160Mbps),且与TMS320C54x的时钟频率无关。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.2.2 HPT设计 图是TMS320C54xHPI与主机的连接框图。HPI提供了灵活而方便的接口,接口外围电路简单。TMS320C54xHPI与主机相连时,几乎不需要附加其他的逻辑电路。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 HPI信号的名称和功能如下: (1)数据总线:HD0HD7,数据总线的宽度为8位。
16、当不传送数据或切断所有输出时,数据总线均为高阻态。 (2)地址总线:具体分为HBIL,HCNTL0、HCNTL1和 地址线 其中HCNTL0和HCNTL1为主机控制信号,用来选择主机所要寻址的HPIA存放器或HPI数据锁存器或HPIC存放器。当HCNTL0、HCNTL1=00时,表示主机可以读/写HPIC存放器;当HCNTL0、HCNTL1=01时,表示主机可以读/写HPID锁存器。每读1次,HPIA事后增1,每写一次,HPIA事先增1。当HCNTL0、HCNTL1=10时,表示主机可以读/写HPIA存放器。当HCNTL0、HCNTL1=11时,表示主机可以读/写HPID锁存器。第六章第六章
17、C54X系列系列DSP的外设及应用的外设及应用 HBIL为字节识别信号,用来识别主机传送过来的是第1个字节还是第2个字节。 为读/写信号,高电平表示主机要读HPI,低电平表示写HPI。 (3)控制线:具体分为 和 控制线。 其中 和 为数据选通信号,在主机寻址HPI周期内控制HPI数据的传送。 和 信号与 一道产生内部选通信号。 为片选信号。如果HPI的使能输入端,在每次寻址期间必须为低电平,而在两次寻址之间也可以停留在低电平 为地址选通信号。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 (4)握手线:具体分为HRDY和 。 HRDY用于控制HPI是否准备好。高电平表示HPI已
18、准备好执行一次数据传送;低电平表示HPI正忙于完成当前事务。 为HPI中断输出信号,受HPIC存放器中的HINT位控制。当TMS320C54x复位时为高电平, 低电平时为高阻状态。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 主机对HPI的访问由外部和内部两局部组成。外部访问由主机与HPI存放器交换数据。内部访问时HPI存放器与DSP存储单元交换数据。TMS320C54x的HPI存储器是一个2K16位字的DARAM。它在数据存储空间的地址为1000H-17FFH。HPI存储器地址的自动增量特性,可以用来连续寻址HPI存储器。每进行一次读操作,都会使HPIA事后增1;每进行一次写
19、操作,都会使HPIA事先增1。HPIA存放器是一个16位存放器,在HPIA中,只有低11位有效。HPIA的增/减对HPIA存放器所有16位都会产生影响。由于HPI指向2K字的存储空间,因此主机对它的寻址是很方便的,地址为0-7FFH。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.2.3 HPI的应用的应用 例:假设以下为双例:假设以下为双DSP通过通过HPI通讯,通讯,DSP1向向DSP2的的数据空间发送数据,并读回到数据空间发送数据,并读回到DSP1的存储器当中。其中的存储器当中。其中DSP2的的HPI口的口的HPIC,映射到,映射到DSP1的的0 x8000、0 x80
20、01;HPIA映射到映射到0 x8008、0 x8009;HPID映射到映射到0 x8006、0 x8007。由于。由于DSP2在访问过程不需要操作,所以在访问过程不需要操作,所以DSP1的的程序代码如下:程序代码如下: STM 0 x1000,AR1 ST 0 x00 , *AR1 PORTW *AR1, 0 x8000 ;将将0 x00写入写入HPIC高位高位 ST 0 x00, *AR1 PORTW *AR1, 0 x8001 ;上下位都写为上下位都写为0 x00第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 NOP ST 0 x10, *AR1 PORTW *AR1, 0
21、 x8008 ;将0 x10写入HPIA高位 ST 0 x20, *AR1 PORTW *AR1, 0 x8009 ;将0 x20写入HPIA地位 NOP ;地址为0 x1020 NOP NOP Loop: ST 0 x1A, *AR1 NOP PORTW *AR1, 0 x8006 ;将0 x1A写入DSP2地址0 x1020的高位第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 NOP ST 0 x2B, *AR1 PORTW *AR1, 0 x8007 ;将0 x2B写入DSP2地址0 x1020的地位 NOP NOP NOP STM 0 x1016, AR2 NOP POR
22、TR 0 x8006,*AR2 ;将读到的数存入0 x1016和0 x1017两个单元 NOP ;每个为8位数 STM 0 x1017, AR2 NOP第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 PORTR 0 x8007, *AR2 NOP NOP ST 0 x36, *AR1 NOP PORTW *AR1, 0 x8006 ;利用自动增量模式将0 x3647写入DSP2的0 x1060 NOP ST 0 x47, *AR1 NOP POPTW *AR1, 0 x8007 NOP NOP NOP第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 STM 0 x10
23、18, AR2 NOP PORTR 0 x8006, *AR2 ;将DSP2中的数通过HPI读到DSP1的0 x1018 ;和0 x1019中,此时DSP1两个单元中分别为 ;两个8位数 NOP STM 0 x1019,AR2 NOP PORTR 0 x8007,*AR2 NOP NOP Hear B hear .end第六章第六章 C54X系列系列DSP的外设及应用的外设及应用6.3 缓冲串行口缓冲串行口 TMS320C54x具有高速、全双工串行口,串行口的功能是提供器件内外数据的串行通信,就是发送器将并行数据逐位移出而成为串行数据流,接收器将串行数据流以一定的时序和格式呈现在连接收/发的数
24、据线上。 TMS320C54x有四种类型的串行口:标准同步串行口(SPI)、缓冲串行口(BSP)、时分多路串行口(TDM)和多通道穿缓冲串行口(McBSP)。并且TMS320C54x的所有串行口的收发操作都是双缓冲的,他们可以工作在任意低的时钟频率上。本节主要讨论TMS320C54x四种类型当中的缓冲串行口。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.3.1 标准同步串行口的结构和控制存放器标准同步串行口的结构和控制存放器 当缓冲串行口工作在标准方式时,缓冲串行口的功能当缓冲串行口工作在标准方式时,缓冲串行口的功能与标准串行口相同,因此我们有必要首先了解一下标准串与标准串
25、行口相同,因此我们有必要首先了解一下标准串行口。然后再讨论缓冲串行口。行口。然后再讨论缓冲串行口。 图是标准串行口的结构框图。由图可见,串行口由图是标准串行口的结构框图。由图可见,串行口由16位数据接收存放器位数据接收存放器(DRR)、数据发送存放器、数据发送存放器(DXR)、接收移、接收移位存放器位存放器(RSR)、发送移位存放器、发送移位存放器(XSR)以及控制电路组成以及控制电路组成。 其串行口各引脚的定义说明如表其串行口各引脚的定义说明如表6-1所示。所示。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 串行口可
26、通过访问3个存放器工作,这三个存放器分别为串行口控制存放器(SPC)、发送数据存放器(DXR)和接收数据存放器(DRR)。这3个存放器都是16位的存储器映射存放器。DXR和DRR可在串行操作时分别用于传送和获取数据;标准同步串行口的操作是由串行口控制存放器(SPC)决定的。SPC的结构图如下图。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 由图可知,SPC有16个控制位,其中7位是只读,其余9位可以读/写。 SPC存放器各控制位的功能说明如下: Free、Soft:仿真控制位。当Free、Soft=00时,立即停止串行口时钟,结束传送数据;Free、Soft=01时,接收数据不
27、受影响,假设正在发送数据,那么等到当前字发送完成后停止发送数据;Free、Soft=1x时,表示使串行口不受仿真调试断点的影响。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用TxdR RSRFULL:接收移位存放器满标志位。当RSRFULL=1,表示RSR已满。当以下三种情况同时发生时将使RSRFULL变成有效(RSRFULL=1)。即上一次从RSR传到DRR的数据还没有读取、RSR已满和一个帧同步脉冲已出现在FSR端。当以下三种情况之一发生时将使RSRFULL变成无效(RSRFULL=0)。即读取DRR中的数据、串行口复位和TMS320C54x复位时。 第六章第六章 C54X系
28、列系列DSP的外设及应用的外设及应用 :发送移位存放器空标志位。当以下三种情况之一发生时将会使 变成低电平。即上一个数有DXR传送到XSR后,DXR还没有被加载,而XSR中的数已经移空。 XRDY:发送准备就绪位。当XRDY位由0变到1,立即产生一次发送中断(XINT),表示DXR中的内容已经复制到XSR,可以向DXR加载新的数据字。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 RRDY: 发送就绪位。当RRDY由0变到1,立即产生一次接受中断(RINT),表示RSR中的内容已经复制到DRR,可以从DRR中取数了。 IN1:输入引脚1。当允许CLKX引脚作为位输入引脚时, IN
29、1位反响了CLKX引脚的当前状态。 IN0:输入引脚0。当允许CLKR引脚作为位输入引脚时,IN0位反响了CKLR引脚的当前状态。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 :接收复位标示位和发送复位标志位。这两个标示位都是低电平有效,当 = =0时,串行口处于复位状态;当 = =1时,串行口处于工作状态;当当 = =MCM(时钟方式位)=0时,由于不必输出CLKX,可使TMS320C54x的功耗进一步降低。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 TXM:发送方式位。用于设定帧同步脉冲FSX的来源。TXM的功能说明如下:当TXM=0时,将FSX设置成输入
30、,由外部提供帧同步脉冲;当TXM=1时,将FSX设置成输出,每次发送数据的帧同步脉冲由内部产生。 MCM:时钟方式位。用于设定CLKX的时钟源。MCM的功能说明如下:当MCM=1时,片内时钟频率是CLKOUT频率的四分之一,将CLKX配置成输出,采用内部时钟;当MCM=0时,将CLKX配置成输入,采用外部时钟。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 FSM:帧同步方式位。当FSM=1时,串行口工作在字符组方式,每发送/接收一个字都要求一个帧同步脉冲FSX/FSR。当FSM=0时,串行口工作在连续方式,在给出初始帧同步脉冲之后不需要帧同步脉冲。这一位规定了串行口工作时,在初
31、始帧同步脉冲之后是否还要求帧同步脉冲FSX和FSR。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 FO:数据宽度标志位。当FO=1时,数据按8位字节发送,首先传送MSB。当FO=0时,发送和接收的数据都是16位字。用该位来规定串行口发送/接收数据的字长。 DLB:数字自循环测试方式位。当DLB=1时,片内通过一个多路开关,将DR和FSR分别与DX和FSX相连。假设在DLB=1的情况下,MCM=1(选择片内串行口时钟CLKX为输出),CLKR由CLKX驱动;MCM=0(CLKX从外部输入),CLKR由外部CLKX信号驱动。当DLB=0时,禁止使用该功能,那么串行口工作在正常方式,
32、此时DR、FSR和CLKR都从外部参加。 Res:保存位。此位总是读成0。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.3.2 BSP的结构和控制存放器的结构和控制存放器 缓冲串行口缓冲串行口(Buffered Serial Port,BSP):即在标准同即在标准同步串行口的根底上增加了一个自动缓冲单元步串行口的根底上增加了一个自动缓冲单元(ABU)。BSP是一种增强型标准串行口,它是全双工的,并有是一种增强型标准串行口,它是全双工的,并有两个可设置大小的缓冲区。缓冲串行口支持高速的传两个可设置大小的缓冲区。缓冲串行口支持高速的传送,可减少中断效劳的次数。送,可减少中断效劳
33、的次数。 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 BSP串行口共有6个存放器:分别是数据接收存放器BDDR、数据发送存放器BDXR、控制存放器BSPC、控制扩展存放器BSPCE、数据接收移位存放器BRSR、数据发送移位存放器BXSR。在标准模式时,BSP利用自身专用的数据发送存放器、数据接收存放器、串行口控制存放器进行数据通信,也利用附加的控制扩展存放器BSPCE处理它的增强功能和控制ABU。BSP发送和接收移位存放器不能用软件直接存取,但是具有双缓冲能力。 BSP串行口的结构框图如下图。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用第六章第六章 C54X系
34、列系列DSP的外设及应用的外设及应用 BSP串行口的结构和特点: 缓冲串行口是一种增强型串行口。ABU利用独立于CPU的专用总线,让串行口直接读/写TMS320C54x内部存储器。这样可以使串行口处理事务的开销最省,并能到达最快的数据率。并且BSP有非缓冲方式和自动缓冲方式。当缓冲串行口工作在非缓冲方式时,BSP传送数据与标准串行口一样,都是在软件控制下经中断进行的;当工作在自动缓冲方式时,串行口直接与TMS320C54x内部存储器进行16位数据传送。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 ABU具有自身的自循环寻址存放器组,每个都与地址产生单元无关。在自动缓冲寻址时,使
35、用ABU可以编程缓冲区的长度和起始地址,可以产生缓冲满中断,并可以在运行中停止缓冲功能。 BSP串行口在标准串行口的根底上新增了像可编程串行时钟、帧同步信号的正负机型和选择时钟等功能。在原有的8、16位数据转换之外新增加了10、12位字转换。这些特殊的功能操作都是由控制扩展存放器(BSPCE)决定的。BSPCE的结构图如下图。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 BSPCE存放器各控制位的功能说明如下: HALTR:自动缓冲停止位。HALTR=1时,缓冲区接收到一半数据时,自动缓冲停止。此时BRE清零,串行口继续以标准模式工作;当HALTR=0时 ,缓冲区接收到一半数据
36、时继续操作。 RH:接收缓冲区半满标志位。当RH=1时,表示后半局部缓冲区满,当前接收的数据正存入前局部缓冲区;当RH=0时,表示前半局部缓冲区满,当前接收的数据正存入后半局部缓冲区。 BRE:自动接收使能控制位。当BRE=1时,允许自动接收;当BRE=0时,禁止自动接收,串行口以标准模式进行工作。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 HALTX:自动发送禁止位。当HALTX=1时,假设一半缓冲区发送完成后,自动缓冲停止,此时BRE清零,串行口继续以标准模式进行工作;当HALTX=0时,假设一半缓冲区发送完成后,自动缓冲继续工作。 XH:发送缓冲禁止位。当XH=1时,缓
37、冲区后半局部发送完成,当前发送数据取自缓冲区的前半局部;当XH=0时,缓冲区前半局部发送完成,当前发送数据取自缓冲区的后半局部。 BXE:自动发送使能位。当BXE=1时,允许自动发送;当BXE=0时,禁止自动发送。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 PCM:脉冲编码模块模式位。当PCM=1时,设置脉冲编码模式;当PCM=0时,去除脉冲编码模式。 注意,PCM设置串行口工作与编码模式,只影响发送器。BDXR和BXSR转换不受该位影响。在PCM模式下,只有它的最高位(15)为0,BDXR才被发送,为1时,BDXR不发送。BDXR发送期间BDX处于高阻态。 FIG:帧同步信
38、号忽略位。当FIG=1时,忽略帧同步信号。当FIG=0时,在第一个帧脉冲之后的帧同步脉冲重新启动时发送。 注意,FIG位可以将16位传输格式以外的各种传输字长压缩打包,可用于外部帧同步信号的连续发送和接收。利用FIG可以节省缓冲内存。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 FE: 扩展格式设置位。 CLKP:时钟极性控制位。当CLKP=1时,接收器在BCLKR的上升沿采样数据,在BCLKR的下降沿发送数据;当CLKP=0时,在BCLKR的下降沿采样数据,在BCLKR的上升沿发送数据。利用该位来设定接收和发送数据采样时间特性。 FSP:帧同步极性设置位。当FSP=1时,帧同
39、步脉冲由低电平激活;当FSP=0时,帧同步脉冲由高电平激活。利用该位来设定帧同步脉冲触发电平的上下。 CLKDV:内部发送时钟分频因数位。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.3.3 BSP的应用 例:对TMS320C54x的McBSP串口进行控制和使用,并利用C5402的McBSP1串口实现数据的收发。 所有的TMS320C54X都提供了串口,大多数都支持缓冲串口。BSP串行接口能与串行设备,如编/译码器,串行A/D和D/A转换器等直接通信。BSP支持8,10,12或16-bit数据单元的发送,同时允许程控串口通讯的时钟频率。从VC5402开始,TMS32054x
40、x提供了统一的多通道缓冲串口-McBSP。 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 串口初始化包括两个局部:串口收发中断的设置和串口存放器的初始化。如果利用DES5402PP实验板来实现该功能,需要将DES5402PP实验板的串口1设置为单相帧,字长为16bit,发送CLOCK由内部CPU时钟产生,频率为500KHz,并输出。同时串口接收时钟也使用该信号。发送帧同步信号由发送位移存放器自动产生,同时也提供给串口接收电路。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 具体设置参见下面的代码: STM #0,MCBSP1_SPSA ;选择 SPCR11 STM
41、 #2000h,MCBSP1_SPSD ;在DRR中接收 sign_extend STM #1,MCBSP1_SPSA ;选择SPCR20 STM #100h,MCBSP1_SPSD STM #2,MCBSP1_SPSA ;选择 RCR10 STM #40h,MCBSP1_SPSD ;每个字16比特 STM #3,MCBSP1_SPSA ;选择 RCR20 STM #40h,MCBSP1_SPSD第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 STM #4,MCBSP1_SPSA ;选择 XCR10 STM #40h,MCBSP1_SPSD ;每个字16比特 STM #5,MCB
42、SP1_SPSA ;选择 XCR20 STM #0,MCBSP1_SPSD STM #6,MCBSP1_SPSA ;选择SRGR1 STM #1C8h,MCBSP1_SPSD ;CLKG=100M /200=500K STM #7,MCBSP1_SPSA ;选择 SRGR2 STM #2000h,MCBSP1_SPSD ;抽样速率产生器钟 ;从CPU时钟驱动 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 ;0 x8,0 x9,0 xa,0 xb,0 xc,0 xd all = 0 x0 STM #0eh,MCBSP1_SPSA ;选择 PCR0 STM #0a0eh,MCBSP
43、1_SPSD RPT #0ffh NOP STM #0h,MCBSP1_SPSA STM #2001h,MCBSP1_SPSD ;使能接收 ! STM #1,MCBSP1_SPSA STM #1c1h,MCBSP1_SPSD ;使能发送 ! STM #0,DXR11 串口收发中断的设置包括中断屏蔽存放器IMR的设置,即允许串口1的发送和接收中断,同时设置PMST,指定中断向量表的位置,以便正确响应中断。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.4 DMA的控制与操作 TI公司早先推出的C54x芯片大多没有DMA控制器。后来,在C5402、C5410、C5420等多种DS
44、P芯片内部集成了DMA控制器,应用比较广泛。DMA控制器有6个可独立编程的DMA通道,每个DMA通道可以进行不同内容的DMA操作。由于DMA控制器可以在无需CPU干扰的情况下,完成存储器不同块间的数据传输。DMA允许数据在内部传输、片内外设或外部设备之间传输,而不需要CPU的参与。也就是说,DMA可以在不占用CPU资源的情况下,实现数据的自由传送。因为DMA传输和CPU运算独立进行、互不影响,这样可以减轻CPU的负担,使CPU的高速运算能力得到充分的发挥,在实时性要求比较高的场合具有更大的意义。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.4.1 DMA控制器的工作原理 1
45、、DMA请求 首先是CPU对DMA控制器进行初始化,并向I/O接口发出操作命令,然后由I/O发出DMA请求。 2、DMA响应 DMA控制器对DMA请求判别优先级及屏蔽,向总线裁决逻辑提出总线请求。当CPU执行完当前总线周期即可释放总线控制权。此时,总线裁决逻辑输出总线应答,表示DMA已经响应,在进行数据传输之前,CPU还必须把源地址和目的地址等必需的参数写入DMA控制器,然后再通过DMA控制器通知I/O口开始DMA传输数据。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 3、DMA传输 DMA控制器获得总线控制权后,CPU即刻挂起或只执行内部操作,由DMA控制器输出读写命令,直接
46、控制RAM与I/O口进行传输,在传送过程中不需要中央处理器的参与。但是,一旦CPU需要使用DMA所占用的总线时,DMA就必须立即把总控制权交还给CPU。 第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 4、DMA结束 DMA的所有功能都是通过存放器在系统时钟控制下完成的。当完成规定的成批数据传送后,DMA控制器即释放总线控制权,并向I/O接口发出结束命令。当I/O接口收到结束命令后,一方面停止I/O设备的工作,另一方面向CPU提出中断请求。最后,带着本次操作结果及转台继续执行原来的程序。第六章第六章 C54X系列系列DSP的外设及应用的外设及应用 6.4.2 DMA控制器的应用 例1 程序存储器到数据存储器的DM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026青海省事业编计算机岗面试易错题集 含答案含解析
- 2026 年人教版高中地理必修第一册期中质量检测卷
- 中国医科院健康科普
- 2026年中国烟草总公司福建省公司人员招聘考试备考题库及答案详解
- 2026年中阳县教师招聘考试备考试题及答案解析
- 吉安市吉州区人社局公开招聘城镇公益性岗位工作人员考试备考试题及答案解析
- 2026年国家电网有限公司技术学院分公司人员招聘参考题库及答案详解
- 2026年市容环境卫生管理业务考试试卷及答案
- 物业防汛防内涝应急处置方案
- 2026雅安职业技术学院附属医院第二批见习人员招募考试备考题库及答案解析
- 安徽 马钢股份招聘考试 需招聘 26 人
- 铁路外包施工人员安全准入考试题库
- 第二十六章 二次函数 单元测试卷(含答案) 2026-2027学年人教版九年级数学上册
- 2026苏教版六年级数学上册第四单元第7课时《练习八》教案
- 2025年遗体火化师题库及答案
- UG练习图纸大全-65张-绝对受用
- 高空作业清洁合同范本
- 《EPDM应用技术规程》
- (正式版)DB15∕T 1932-2020 《公路抗凝冰沥青混合料设计与施工技术规范》
- 中行职称管理办法
- 2025年MySQL数据类型试题及答案
评论
0/150
提交评论