第6章DSP片内外设
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
STM #20h,TCR
DSP计数器的定时控制,不仅产生TOUT信 号,用来控制外围电路,同时也产生中断TINT 给CPU。CPU利用该中断,可以控制程序进程, 进行中断服务程序的处理。 DSP技术讲义,2007,陈军波©电子信息工程学院
6.3 串行口
4种串口
SP串口(标准同步串口) BSP串口(带缓冲的串口) TDM串口(时分复用串口) MCBSP串口(多通道带缓冲串口)
收发模块相互独立 由DRR、DSR、RSR、XSR以及控制电路组成 时钟信号可以选择内部或者外部 回返模式(用于测试) 2种工作方式:查询和中断
结构和特点(P169)
DSP技术讲义,2007,陈军波©电子信息工程学院
工作过程(教材P171)
缓冲寄存器 移位寄存器 串并转换 CPU的读写 工作方式:2种
DSP技术讲义,2007,陈军波©电子信息工程学院
4. 定时器的初始化
定时器的基准工作脉冲由CLKOUT提供,每来 一个脉冲预定标计数器PSC减1,当PSC减至0时, 下一个脉冲到来,PSC产生借位。
借位信号分别控制定时计数器TIM减1和或门2 的输出,重新将TDDR的内容加载预定标计数器PSC ,从而完成定时工作的一个基本周期。 定时器的定时时间为: 定时周期 = TCLK×(TTDDR+1)×(TPRD+1)
DSP技术讲义,2007,陈军波©电子信息工程学院
定时器的工作过程:
① 定时分频系数和周期数分别装入TCR和PRD寄存器中; ② 每来一个定时脉冲CLKOUT,计数器PSC减1;
③ 当PSC减至0时,PSC产生借位信号;
④ 在PSC的借位信号作用下,TIM减1计数,同时将分频 系数装入PSC,重新计数; ⑤ 当 TIM 减到 0 时,定时时间到,由借位产生定时中断 TINT和定时输出TOUT,并将PRD中的时间常数重 新装入TIM。
DSP技术讲义,2007,陈军波©电子信息工程学院
预定标模块包括TCR中的TDDR和PSC位,由 CPU时钟定时,每来一个CPU时钟,PSC值减1。 当PSC减至0、设备复位或定时器复位时, TDDR的内容复制到PSC中。
4位预定标计数器PSC和16位定时计数器TIM组 成一个20位计数器,定时器每接收一个CPU时钟减 1,当计数器减到0时,产生定时中断(TINT),同时 PSC和TIM重新装入预设的值。
中断到 CPU DMA DSP技术讲义, 2007,陈军波©同步事件到 电子信息工程学院
(1) 外部引脚 DX: 串行数据发送引脚; DR: 串行数据接收引脚; CLKX: 发送时钟引脚; CLKR: 接收时钟引脚; FSX: 发送帧同步引脚; FSR: 接收帧同步引脚; CLKS: 外部提供的采样时钟引脚。 McBSP通过DX和DR引脚与外部设备进行数据 通信,时钟和帧同步等控制信息的传输通过CLKX 、CLKR、FSX和FSR引脚来实现。
DSP技术讲义,2007,陈军波©电子信息工程学院
例子:
教材P167
中断程序中设置一个计数器(减法) 执行中断程序时定时器仍然在工作(同时) TSS:控制定时器的开始(TSS=0)和停止(TSS=1) TRB: 定时器复位信号
当计数器的值为0时,产生的借位脉冲自动给计数器 加载初值:TDDR和PRD
送,同时允许程控串口通信的时钟频率。
DSP技术讲义,2007,陈军波©电子信息工程学院
何为缓冲串口? 所谓缓冲串口,实际上是在标准串口的基础上增加了
一个2K的自动缓冲单元,叫ABU。每次串口发送数据时,硬 件自动将发送缓冲中的数据送出;在接收数据时,硬件自 动将收到的数据写入接收缓存。 缓冲串口的工作方式:
DSP技术讲义,2007,陈军波©电子信息工程学院
3. 定时控制寄存器TCR
16位存储器映像寄存器,包含定时器的控制位和状 态位。
15 ~ 12 11 10 9~6 5 4 3~0
TCR 0026h
保留
Soft
Free
PSC
TRB
TSS
TDDR
保留位
软件调试控制位
预定标 计数器
复位
停止/ 启动
初值
2) 地址寄存器自动增加,直至缓冲区的底部,然后 地址寄存器内容恢复到缓冲存储区顶部。
3)
DSP技术讲义,2007,陈军波©电子信息工程学院
▼TDM串口
时分复用串口
将时间分为相等的间隔,每个间隔表示一个通道 也可配置为标准工作模式 了解(P176)
教学要求:
DSP技术讲义,2007,陈军波©电子信息工程学院
BNMINT 串口控 制逻辑 中断 控制 BRINT 中断 逻辑
BCLKR BFSR
BDRR
BSPC
DSP技术讲义,2007,陈军波©电子信息工程学院
2. 控制寄存器BSPC(P170)
BSPC用于控制串行口的操作。
15 BSPCH Free 仿真 控制 13 12 11 10 9 RSRFUL XSREMPT Soft XRDY RRDY IN1 L Y 仿真 接收移位 发送移位 发送 接收 发送 控制 寄存器 寄存器 准备 准备 时钟 满 空 好 好 状态 14 8 IN0 接收 时钟 状态
DSP技术讲义,2007,陈军波©电子信息工程学院
例:设工作频率为40MHz的TMS320C5402,要求 产生40kHz的定时控制,则计数器的初始化程序如 下: STM #10h,TCR ;停止计数器(TSS=1) STM #999, PRD ;设置PRD寄存器值为999
TINT中断频率为 Foutclk/(999+1)=40MHz/1000=40kHz ;重新装入TIM和PSC,然后 启动计数器(TSS=0,TRB=1)
DSP技术讲义,2007,陈军波©电子信息工程学院
McBSP结构(P178)
DR DX RSR XSR RBR 扩展 压缩 DRR DXR
CLKX CLKR FSX FSR CLKS 多通道选择 时钟和帧同步 信号发生及控 制
SPCR RCR XCR SRGR PCR MCR RCER XCER RINT XINT REVT XEVT REVTA XEVTA 16 位 外 设 总 线
▼McBSP多通道缓冲串行口
’C54x的多通道缓冲串行口McBSP是在缓冲串行口的 基础上发展起来的。在外部通道选择电路的控制下,采用 分时方式实现多路缓冲串行通信。 McBSP串行口可以与其他’C54x器件、编程器或其他 串口器件通信。 McBSP的功能包括(P177) ● 全双工通信; ● 双缓冲的发送和三缓冲接收数据存储器,支持连续的 数据流传送; ● 独立的接收、发送帧和时钟信号; ● 可直接与工业标准的编码器、模拟界面芯片(AICs)、 其他串行A/D、D/A器件连接并通信;
缓冲区使用方式: 循环寻址
DSP技术讲义,2007,陈军波©电子信息工程学院
以VC542为例,与BSP串口有关的存储器映射寄存器共有6个。
地址 0x22 0x23 0x38 0x39 0x3A 0x3B
寄存器符号 BSPC BSPCE AXR BKX ARR BKR
功能 16位串口控制寄存器 16位串口扩展控制寄存器 11位发送缓冲区地址寄存器 11位发送缓冲区大小寄存器 11位接收缓冲区地址寄存器 11位接收缓冲区大小寄存器
1)非缓冲方式 2)自动缓冲方式
DSP技术讲义,2007,陈军波©电子信息工程学院
非缓冲方式:
串口工作和标准SP相同,不使用缓冲区;
自动缓冲方式:
不需每传送一个字就发一次中断,而是每通过一次缓冲器的 半边界,才产生中断至CPU,从而减少频繁中断对CPU的影响。 发送和接受缓冲最大的长度为2K,对C542而言,这2K的缓冲 区在0800h~0FFFh之间。缓冲区的长度和起始地址是用户可 编程的,但必须遵守一定的规范。
1)查询方式收发:查询串口寄存器SPC中的发送和接收完成 位:XRDY,RRDY 2)中断方式收发: 收发中断信号是否有效
串口操作编程:教材P172
1)串口初始化 2)串口中断服务程序
DSP技术讲义,2007,陈军波©电子信息工程学院
▼BSP缓冲串口
DSP的缓冲串行接口(BSP)能与串行设备, 如编/译码器、串行A/D和D/A转换器等直接通 信。缓冲串口支持8,10,12或16位数据单元的发
片内外设
定时器、串口、主机接口、通用IO等 通过访问片内外设寄存器来实现控制
访问方式
片内外设寄存器
寄存器种类及地址
CPU寄存器(教材P41),地址:0~1F(第0页) 片内外设寄存器(教材P163),地址:20~5F(第0页)
DSP技术讲义,2007,陈军波©电子信息工程学院
6.2 可编程定时器
TMS320C54x都提供了串行通信接口(SP),芯片型号 不同,配置的串口类型和数目都有所不同
DSP技术讲义,2007,陈军波©电子信息工程学院
▼SP串口(标准同步串口)
串口信号
1)时钟:CLKR,CLKX 2)帧同步信号:FSR,FSX 3)数据(发送和接受): DR,DX 4)中断信号(跟CPU接口):RINT,XINT
7
BSPCL RRST 接收 复位
6
XRST 发送 复位
5
TXM 发送 模式
4
MCM 时钟 选择模式
3
FSM 帧 同步 模式
2
FO 数据 格式
1
DLB 数据 回送 模式
0
Res 保留
DSP技术讲义,2007,陈军波©电子信息工程学院
2. BSP的控制寄存器BSPCE
BSPCE寄存器包含控制位和状态位,用于控制 BSP和ABU的增强功能。寄存器的低10位用于增强 特性控制,高6位用于ABU控制。
DSP技术讲义,2007,陈军波©电子信息工程学院
定时器初始化步骤如下:
① TCR的TSS位置1,关闭定时器,停止定时;
② 装载PRD值; ③ 重新装入TCR,初始化TDDR,设置TSS=0和TRB=1
,重装载定时器周期。启动定时器。
设置定时器中断方法(假定INTM=1,关闭)如下: ● 将IFR中的TINT置1,以清除尚未处理完的定时器中 断; ● 将IMR中的TINT置1,启动定时器中断。 ● 将INTM置0,启动全部中断。
DSP技术讲义,2007,陈军波©电子信息工程学院
1. BSP结构
TMS320C54x内存界面 16 11 自动缓冲单元ABU 控制 XRDY RRDY BXINT BMINT BRINT
BCLKX BFSX
BDXR
BSPCE BXINT TMS320C54x CPU界面
BDX BDR
BXSR BRSR
第6章 DSP片内外设
DSP硬件系统设计
☆DSP片内外设 ☆DSP中断系统控制 ☆ DSP系统设计
DSP技术讲义,2007,陈军波©电子信息工程学院
第一部分 DSP片内外设
可编程定时器
串行通信接口
主机接口
通用I/O
DSP技术讲义,2007,陈军波©电子信息工程学院
6.1 DSP片内外设概述
DSP技术讲义,2007,陈军波©电子信息工程学院
1. 定时器的组成
1 1 1 SRESET TRB
初值 PRD 计数器 TIM
初值 TDDR 预定标计数器 PSC
&
CLKOUT TSS
借位
借位
主定时模块
预定标模块
TINT 1 TOUT
DSP技术讲义,2007,陈军波©电子信息工程学院
2. 定时器工作原理 主定时模块包括PRD和TIM,由预定标模块定时 ,预定标模块每输出一个时钟,TIM减1。当TIM 减到0后,TIM装入PRD的值。 当设备复位(SRESET=0)或者定时器复位 (TRB=1)时,PRD的内容将装入TIM中。 主定时模块的定时中断(TINT)信号输出至CPU 以及定时器的输出引脚TOUT。
C54x的片内有2个定时器,是可编程的定时 器,主要用于产生周期性的中断。 定时器的最高分辨率为处理器的CPU时钟速 度。通过带4位预定标器的16位计数器,可以获 得较大范围的定时频率。 DSP片内计数器利用系统时钟CLKOUT作为计 数时钟,使用三个存储器映射寄存器(TIM, PRD, TCR)来控制计数。
15~10 BSPCE ABU控制 9 8 7 6 5 4~0
PCM
FIG
FE
CLKP
FSP
CLKDV
AΒιβλιοθήκη BaiduU 控制位
脉冲编码 帧同步信 扩展 时钟极性 帧同步极 发送时钟 模式位 号选择位 格式位 设置位 性设置位 分频因数
DSP技术讲义,2007,陈军波©电子信息工程学院
BSP自动缓冲过程
1) ABU完成对缓冲存储器的存取;