第8章 tms320c54x片内外设及应用实例

上传人:aa****6 文档编号:56813563 上传时间:2018-10-16 格式:PPT 页数:128 大小:6.96MB
返回 下载 相关 举报
第8章  tms320c54x片内外设及应用实例_第1页
第1页 / 共128页
第8章  tms320c54x片内外设及应用实例_第2页
第2页 / 共128页
第8章  tms320c54x片内外设及应用实例_第3页
第3页 / 共128页
第8章  tms320c54x片内外设及应用实例_第4页
第4页 / 共128页
第8章  tms320c54x片内外设及应用实例_第5页
第5页 / 共128页
点击查看更多>>
资源描述

《第8章 tms320c54x片内外设及应用实例》由会员分享,可在线阅读,更多相关《第8章 tms320c54x片内外设及应用实例(128页珍藏版)》请在金锄头文库上搜索。

1、第8章 TMS320C54x片内外设及应用实例,8.1 定时器 8.2 时钟发生器 8.3 定时器/计数器编程举例 8.4 多通道缓冲串口(McBSP) 8.5 多通道缓冲串口应用实例 8.6 主机接口(HPI) 8.7 外部总线操作,8.1 定时器,定时器的组成框图如图8-1所示。它有3个存储器映象寄存器:TIM、PRD和TCR。这3个寄存器在数据存储器中的地址及其说明如表8-1所示。定时器控制寄存器(TCR)位结构如图8-2所示,各控制位和状态位的功能如表8-2所示。,返回首页,图8-1 定时器组成框图,表8-1 定时器的三个寄存器,图8-2 TCR位结构图,表8-2 定时器控制寄存器(T

2、CR)的功能,返回本节,8.2 时钟发生器,8.2.1 硬件配置PLL 8.2.2 软件可编程PLL,返回首页,8.2.1 硬件配置PLL,用于C541、C542、C543、C545和C546芯片。 所谓硬件配置PLL,就是通过C54x的3个引脚CLKMD1、CLKMD2和CLKMD3的状态,选定时钟方式,如表8-3所示。由表8-3可见,不用PLL时,CPU的时钟频率等于晶体振荡器频率或外部时钟频率的一半;若用PLL,CPU的时钟频率等于晶体振荡器频率或外部时钟频率乘以系数N(PLLN),使用PLL可以使用比CPU时钟低的外部时钟信号,以减少高速开关时钟所造成的高频噪声。,表8-3 时钟方式的

3、配置,返回本节,8.2.2 软件可编程PLL,软件可编程PLL具有高度的灵活性,其时钟定标器提供各种时钟乘法器系数,并能直接接通和关断PLL。PLL的锁定定时器可以用于延迟转换PLL的时钟方式,直到锁定为止。通过软件编程,可以选用以下两种时钟方式(如表8-4 8-6、图8-3所示)。 PLL方式,其比例系数共31种。靠锁相环电路完成。 分频(DIV)方式,其比例系数为1/2和1/4,在此方式下,片内PLL电路不工作以降低功耗。,表8-4 复位时的时钟方式(C5402),表8-5 时钟方式寄存器CLKMD各位域功能,表8-6 比例系数与CLKMD的关系,图8-3 PLL锁定时间和CLKOUT频率

4、的关系,返回本节,8.3 定时器/计数器编程举例,【例8-1】设时钟频率为16.384MHz,在TMS320C5402的XF端输出一个周期为2s的方波,方波的周期由片上定时器确定,采用中断方法实现。 1定时器0的初始化 (1)设置定时控制寄存器TCR(地址0026H)。 (2)设置定时寄存器TIM(地址0024H)。 (3)设置定时周期寄存器PRD(地址0025H)。,返回首页,2定时器对C5402的主时钟CLKOUT进行分频 CLKOUT与外部晶体振荡器频率(在本系统中外部晶体振荡器的频率为16.384MHz)之间的关系由C5402的三个引脚CLKMD1、CLKMD2和CLKMD3的电平值决

5、定,为使主时钟频率为16.384MHz,应使CLKMD1=1、CLKMD2=1、CLKMD3=0,即PLL1。,3中断初始化 (1)中断屏蔽寄存器IMR中的定时屏蔽位TINT0置1,开放定时器0中断。 (2)状态控制寄存器ST1中的中断标志位INTM位清零,开放全部中断。,4汇编源程序如下:.mmregs.def _c_int00 STACK .usect “STACK“,100h t0_cout .usect “vars“,1 ;计数器 t0_flag .usect “vars”,1 ;当前XF输出电平标志。 t0_flag=1,则XF=1;;t0_flag=0,则XF=0 TVAL .se

6、t 1639 ;16401061=1ms 因中断程序中计数器初值 ;t0_cout=1000,所以定时时间:1ms1000=1s TIM0 .set 0024H ;定时器0寄存器地址 PRD0 .set 0025H TCR0 .set 0026H.data,TIMES .int TVAL ;定时器时间常数.text * ; 中断矢量表程序段 _c_int00b startnopnop NMI rete ;非屏蔽中断nopnopnop SINT17 .space 4*16 ;各软件中断 SINT18 .space 4*16 SINT19 .space 4*16 SINT20 .space 4*1

7、6 SINT21 .space 4*16,SINT22 .space 4*16 SINT23 .space 4*16 SINT24 .space 4*16 SINT25 .space 4*16 SINT26 .space 4*16 SINT27 .space 4*16 SINT28 .space 4*16 SINT29 .space 4*16 SINT30 .space 4*16 INT0 rsbx intm ;外中断0中断retenopnop INT1 rsbx intm ;外中断1中断retenopnop INT2 rsbx intm ;外中断2中断,retenopnop TINT: bd

8、 timer ;定时器中断向量nopnopnopRINT0: rete ;串口0接收中断nopnopnop XINT0: rete ;串口0发送中断nopnopnop SINT6 .space 4*16 ;软件中断 SINT7 .space 4*16 ;软件中断,INT3: rete ;外中断3中断nopnopnop HPINT: rete ;主机中断nopnopnop RINT1: rete ;串口1接收中断nopnopnop XINT1: rete ;串口1发送中断nop nopnop *,start:LD #0,DP STM #STACK+100h,SPSTM #07FFFh,SWWSR

9、STM #1020h,PMSTST #1000,*(t0_cout) ;计数器设置为 1000(1s)SSBX INTM ;关全部中断 LD #TIMES,A READA TIM0 ;初始化 TIM,PRDREADA PRD0STM #669h,TCR0 ;初始化TCR0STM #8,IMR;初始化 IMR, 使能 timer0 中断RSBX INTM ;开放全部中断 WAIT: B WAIT *,;定时器0中断服务子程序 timer: ADDM #-1,*(t0_cout) ;计数器减1CMPM *(t0_cout),#0 ;判断是否为0BC next,NTC ;不是0,退出循环ST #10

10、00,*(t0_cout);为0,设置计数器,并将XF取反BITF t0_flag,#1 BC xf_out,NTCSSBX XFST #0,t0_flagB next xf_out: RSBX XFST #1,t0_flag next: RSBX INTMRETE.end,5链接命令文件times.cmd如下:times.obj-o times.out-m times.mapMEMORY PAGE 0:RAM1: origin =1000h ,length =500hPAGE 1:SPRAM1: origin=0060h,length=20hSPRAM2: origin=0100h,leng

11、th=200h SECTIONS .text :RAM1 PAGE 0 .data :RAM1 PAGE 0 vars :SPRAM1 PAGE 1 STACK :SPRAM2 PAGE 1 ,返回本节,8.4 多通道缓冲串口(McBSP),8.4.1 McBSP原理框图及信号接口 8.4.2 McBSP控制寄存器 8.4.3 时钟和帧同步 8.4.4 McBSP数据的接收和发送 8.4.5 有关的几个概念,返回首页,8.4.1 McBSP原理框图及信号接口,TMS320C54xx多通道缓冲串口(McBSP)由引脚、接收发送部分、时钟及帧同步信号产生、多通道选择以及CPU中断信号和DMA同步信

12、号组成,如图8-4所示。 表8-7给出了有关引脚的定义,McBSP通过这7个引脚为外部设备提供了数据通道和控制通道。McBSP通过DX和DR实现DSP与外部设备的通信和数据交换。,图8-4 McBSP原理框图,表8-7 McBSP引脚说明,表8-8 McBSP内部信号说明,返回本节,8.4.2 McBSP控制寄存器,1控制寄存器及其映射地址 表8-9列出了McBSP控制寄存器及其映射地址。 子块数据寄存器SPSDx用于指定对应子地址寄存器中数据的读写,其内部连接方式如图8-5所示。这种方法的好处是可以将多个寄存器映射到一个较小的存储空间。,表8-9 McBSP控制寄存器及其映射地址,图8-5

13、子地址映射示意图,2串行口的配置 串口控制寄存器(SPCR1、SPCR2)和引脚控制寄存器(PCR)用于对串口进行配置,接收控制寄存器(RCR1、RCR2)和发送控制寄存器(XCR1、XCR2)分别对接收和发送操作进行控制。 (1)串口控制寄存器(SPCR1、SPCR2)串口控制寄存器1(SPCR1)结构如图8-6所示,表8-10为SPCR1控制位功能说明。串口控制寄存器2(SPCR2)结构如图8-7所示,表8-11为SPCR2控制位功能说明。 (2)引脚控制寄存器(PCR)。引脚控制寄存器(PCR)结构如图8-8所示,表8-12为PCR控制位功能说明。,图8-6 串口控制寄存器1(SPCR1

14、),表8-10 SPCR1控制位功能说明,图8-7 串口控制寄存器2(SPCR2),表8-11 SPCR2控制位功能说明,图8-8 引脚控制寄存器(PCR),表8-12 PCR控制位功能说明,(3)接收控制寄存器(RCR1,2)。结构如图8-9所示,表8-13所示为RCR1控制位功能说明,表8-14所示为RCR2控制位功能说明。 (4)发送控制寄存器(XCR1,2)。发送控制寄存器(XCR1,2)结构如图8-10所示,表8-15所示为XCR1控制位功能说明,表8-16所示为XCR2控制位功能说明。,(a)RCR1,(b)RCR2,图8-9 接收控制寄存器(RCR1,2),表8-13 RCR1控

15、制位功能说明,表8-14 RCR2控制位功能说明,(a)XCR1,(b)XCR2,图8-10 发送控制寄存器(XCR1,2),表8-15 XCR1控制位功能说明,表8-16 XCR2控制位功能说明,返回本节,8.4.3 时钟和帧同步,采样率发生器由三级时钟分频组成,如图8-11所示,可以产生可编程的CLKG(数据位时钟)信号和FSG(帧同步时钟)信号。CLKG和FSG是McBSP的内部信号,用于驱动接收/发送时钟信号(CLKR/X)和帧同步信号(FSR/X)。采样率发生器时钟既可以由内部的CPU时钟驱动(CLKSM=1),也可以由外部时钟源驱动(CLKSM=0)。采样率发生器寄存器SRGR1,2控制着采样率发生器的各种操作,其结构如图8-12所示。表8-17所示为SRGR1控制位功能说明,表8-18所示为SRGR2控制位功能说明。,图8-11 采样率发生器框图,(a)采样率发生器寄存器1 (SRGR1),(b) 采样率发生器寄存器2 (SRGR2),图8-12 采样率发生器寄存器SRGR1,2结构图,表8-17 SRGR1控制位功能说明,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > 教育/培训/课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号