[工学]第8章TMS320C54x的外设应用编程.ppt_第1页
[工学]第8章TMS320C54x的外设应用编程.ppt_第2页
[工学]第8章TMS320C54x的外设应用编程.ppt_第3页
[工学]第8章TMS320C54x的外设应用编程.ppt_第4页
[工学]第8章TMS320C54x的外设应用编程.ppt_第5页
已阅读5页,还剩103页未读 继续免费阅读

下载本文档

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

文档简介

第8章 TMS320C54x的外设应用编程 u8.1 定时器的原理与应用 u8.2 主机接口(HPI)应用原理与实例 u8.3 串行通信口原理与应用 u8.4 外部I/O扩展原理与应用 u8.5 本章小结 第8章 TMS320C54x的外设应用编程 1 8.1 定时器的原理与应用 T 在工业应用中,计数器和定时器常用于检测和控制中的时 序协调及控制。 T TMS320C54x的片内定时器是一个可编程的定时器,可用 于周期地产生中断。定时器的最高分辨率为处理器的CPU 时钟速度。通过带4位预定标器的16位计数器,可以获得较 大范围的定时频率。 第8章 TMS320C54x的外设应用编程 2 8.1.1 定时器工作原理 1定时器的结构组成 定时器主要由定时寄存器TIM、定时周期寄存器PRD、 定时控制寄存器TCR(包括预标定分频系数TDDR、预 标定计数器PSC、控制位TRB和TSS等)及相应的逻 辑控制电路组成。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 3 8.1.1 定时器工作原理 1定时器的结构组成 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 4 定时寄存器定时寄存器TIMTIM 逻辑控制电路逻辑控制电路 定时周期寄存器定时周期寄存器PRDPRD 定时控制寄存器定时控制寄存器TCRTCR 16 16位减位减1 1计数器。地址:计数器。地址:00240024HH 用来存放定时时间。地址:用来存放定时时间。地址:00250025HH 存放定时器的控制位和状态位。地址:存放定时器的控制位和状态位。地址:00260026HH。 用来控制定时器协调工作。用来控制定时器协调工作。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 8.1.1 定时器工作原理 1定时器的结构组成 5 8.1.1 定时器工作原理 2.定时器的控制寄存器 定时控制寄存器TCR 是16位存储器映射寄存器,包含定 时器的控制位和状态位。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 6 8.1.1 定时器工作原理 2.定时器的控制寄存器 T 各个位功能组合说明如下: (1)TDDR:定时器分频系数,用来对CLKOUT进行分频 ,以改变定时周期。其最大预定标值为16,最小预定 标值为1。当PSC减到0后,以TDDR中的数加载PSC 。 (2)TSS:定时器停止状态位,用于停止或启动定时器。 复位时,TSS位清0,定时器立即定时;当TSS=0, 定时器启动工作;当TSS=1,定时器停止工作。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 7 8.1.1 定时器工作原理 2.定时器的控制寄存器 T 各个位功能组合说明如下: (3)TRB:定时器重新加载位,用来复位片内定时器。当 TRB置1时,以PRD中的数加载TIM,以及以TDDR中 的值加载PSC。TRB总是读成0。 (4)PSC:定时器预定标计数器,其标定范围为116。当 PSC减到0后,TDDR位域中的数加载到PSC,TIM减1 。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 8 8.1.1 定时器工作原理 2.定时器的控制寄存器 (5)Free、Soft:软件调试控制位。Free和Soft位结 合使用,用来控制调试程序断点操作情况下的定时 器工作状态,功能说明如表8-1所示。 (6)保留:保留;读成0。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 9 8.1.1 定时器工作原理 3.定时器的工作原理 主定时器模块由PRD和TIM组成。在正常工作情况下, 当TIM减到0后,PRD中的时间常数自动地加载到TIM 。当系统复位或者定时器单独复位(TRB置1)时, PRD中的时间常数重新加载到TIM。 主定时模块的定时中断(TINT)信号输出至CPU以及定时 器的输出引脚TOUT。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 10 8.1.1 定时器工作原理 3.定时器的工作原理 T 定时器的工作过程: 定时分频系数和周期数分别装入TCD和PRC寄存器中; 每来一个定时脉冲CLKOUT,计数器PSC减1; 当PSC减至0时,PSC产生借位信号; 在PSC的借位信号作用下,TIM减1计数,同时将分频系 数装入PSC,重新计数; 当TIM减到0时,定时时间到,由借位产生定时中断TINT 和定时输出TOUT,并将PRD中的时间常数重新装入TIM 。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 11 8.1.1 定时器工作原理 4.定时器应用的初始化 (1)定时器模块的初始化步骤如下: 1) TCR的TSS位置1,关闭定时器,停止定时。 2) 装载PRD值。 3) 重新装入TCR,初始化TDDR,设置TSS=0和TRB=1, 重装载定时器周期。启动定时器。 (2)设置定时器中断方法(INTM=1)如下: 1) 将IFR中的TINT置1,以清除尚未处理完的定时器中断。 2) 将IMR中的TINT置1,启动定时器中断。 3) 将INTM置0,启动全部中断。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 12 8.1.1 定时器工作原理 4.定时器应用的初始化 (3)复位时,TIM和PRD被设置为最大值(0FFFFh), TCR中的TDDR置0,定时器可以通过启动定时控制寄 存器(TCR)完成以下操作: 1) 设定定时器的工作方式。 2) 设定预定标计数器中的当前数值。 3) 启动或停止定时器。 4) 重新装载定时器。 5) 设置定时器的分频值。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 13 8.1.2 定时器的应用实例 例8-1 PLL初始化实例 假设外部晶振提供10M的时钟输入,希望设置TMS320C54x 的工作主频为100MHZ。汇编子函数实现代码如下: _CLKMD: STM #0b, 58h ;switch to DIV mode TstStatu: LDM 58h, A AND #01b, A ;poll STATUS bit BC TstStatu, ANEQ STM #09007h, 58h;switch to PLL RET 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 14 8.1.2 定时器的应用实例 例8-2 定时器自动装载定时 设置参数: TSS=0:启动定时器;TRB=1:自动装载; TDDR=Ah:分频系数10 soft=1,free=0:计数器减至0时,停止工作; TCR=0AAAh。 定时周期:0101h;关闭定时器中断:IFR=0008h ; 开放定时器中断:IMR=0008h。 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 15 8.1.2 定时器的应用实例 例8-2 定时器自动装载定时 T 代码如下: STM #0000h,SWWSR ;不插等待时间 STM #0010h,TCR ;TSS=0关闭定时器 STM #0101h,PRD ;加载周期寄存器(PRD) STM #0AAAh,TCR;装入定时器控制字,启动定 时器 STM #0080h,IFR;消除尚未处理完的定时器中断 STM #0080h,IMR ;开放定时器中断 RSBX INTM;开放中断 8.1 定时器的原理与应用 第8章 TMS320C54x的外设应用编程 16 8.2 主机接口(HPI)应用原理与实例 8.2.1 主机接口(HPI)应用原理 TMS320C54x的主机接口(HPI)用于实现与主处 理器的通信,外部主机或主处理器可以很方便的 通过HPI接口读写TMS320C54x的片内RAM,从 而大大提高数据交换的能力。主机与DSP通过HPI 的通信,可通过专用地址和数据寄存器、HPI控制 寄存器以及使用外部数据与接口控制信号来实现 。 第8章 TMS320C54x的外设应用编程 17 8.2.1 主机接口(HPI)应用原理 1.标准HPI接口的工作模式 共享寻址模式(SAM方式) 主机和TMS320C54x都能寻址HPI存储器。 主机寻址模式(HOM方式) 在HOM方式下,HPI存储器只能让主机寻址 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 18 8.2.1 主机接口(HPI)应用原理 2.标准HPI接口的内部结构及对外硬件接口信号 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 19 8.2.1 主机接口(HPI)应用原理 2.标准HPI接口的内部结构及对外硬件接口信号 标准HPI对外硬件接口信号线主要由以下信号组成: HD0HD7:双向并行三态数据总线,与主机数据总线 相连。当不传送数据(HDSx或HCS=1)或 EMU1/OFF=0(切断所有输出)时,HD7HD0均处于 高阻状态。 HCS:片选信号,与主机地址线或控制线相连。作为 HPI的使能输入端,在每次寻址期间必须为低电平,两 次寻址之间也可以连续停留在低电平。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 20 8.2.1 主机接口(HPI)应用原理 2.标准HPI接口的内部结构及对外硬件接口信号 HAS:地址选通信号。 HBIL:字节顺序识别信号,与主机地址线或控制线连接 ,用于识别主机传送来的一个字(16位数据)中的是第几 字节(8位数据)。当HBIL=0时为第1字节;当HBIL=1时 为第2字节。 HRDY:HPI准备好端,与主机异步准备好线相连。高电 平表示HPI已准备好,可执行一次数据传送;低电平表示 HPI正忙于完成当前事务。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 21 8.2.1 主机接口(HPI)应用原理 2.标准HPI接口的内部结构及对外硬件接口信号 HCNTL0、HCNTL1:主机控制信号,与主机地址线或 控制线连接,用来选择主机所要寻址的寄存器,功能说 明如表所示。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 22 8.2.1 主机接口(HPI)应用原理 2.标准HPI接口的内部结构及对外硬件接口信号 HDS1、HDS2:数据选通信号,与主机读选通和写选 通或数据选通线连接,用于在主机寻址HPI周期内,控 制HPI数据的传送。 HDS1和HDS2信号与HCS一道产 生内部选通信号。 HINT:HPI中断输出信号,与主机中断输入相连。受 HPIC寄存器中的HINT位控制。当TMS320C54x复位时 为高电平,EMU1/OFF低电平时为高阻状态。 HR/W:读/写信号。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 23 8.2.1 主机接口(HPI)应用原理 3.标准HPI接口的接口寄存器 HPI接口的接口寄存器有三个,分别是控制寄存器 HPIC、数据寄存器HPID和地址寄存器HPIA。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 24 8.2.1 主机接口(HPI)应用原理 3.标准HPI接口的接口寄存器 HPI的控制寄存器HPIC为16位寄存器,用来控制HPI的 操作模式。其高8位与低8位完全相同,提供了4个控制 位,分别为BOB、SMOD、DSPINT和HINT位。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 25 第8章 TMS320C54x的外设应用编程 26 8.2.1 主机接口(HPI)应用原理 3.标准HPI接口的接口寄存器 主机和TMS320C54x对HPIC寄存器的寻址读写 会有4种结果: (1)主机读HPIC寄存器 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 27 8.2.1 主机接口(HPI)应用原理 3.标准HPI接口的接口寄存器 (2)主机写HPIC寄存器 (3) TMS320C54x读HPIC寄存器 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 28 8.2.1 主机接口(HPI)应用原理 3.标准HPI接口的接口寄存器 (4) TMS320C54x写HPIC寄存器 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 29 8.2.1 主机接口(HPI)应用原理 4.标准HPI与增强型EHPI-8接口区别 T 标准HPI与增强型EHPI-8接口非常类似,但在功能上存在 三点区别,在实际应用中请读者注意: (1)标准HPI接口中外部主机只能访问固定位置的2K大小的 片内RAM,而增强型HPI-8接口可以访问TMS320C54x 整个内部RAM。 (2)增强8位HPI只有同步模式,而标准8位HPI有异步模式 ,即外部主处理器可在DSP的时钟CLOCK不工作时访 问TMS320C54x内部RAM。 (3)在增强型HPI-8中主机和TMS320C54x只能共享访问 RAM(SAM访问模式),而标准模式中,可以实现 SAM和HOM两种方式的访问。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 30 8.2.2 主机接口(HPI)应用实例 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 31 8.2.2 主机接口(HPI)应用实例 这种连接方式实际是把TMS320C54x的HPI映射为主机 的存储空间,通过对其操作访问的TMS320C54x的片 内数据存储空间。主机及TMS320C54x可各自编程, 把TMS320C54x片内RAM作为公共数据交换区,实现 相互通信。TMS320C54x可编程读写此块数据;主机 也可通过对HPI寄存器操作读写实现读写此块数据。另 外TMS320C54x也可以设置HPI控制寄存器HPIC触发 对主机的中断申请操作。 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 32 8.2.2 主机接口(HPI)应用实例 DSP初始化HPI接口设置为主机/DSP共用寻址模式( SAM方式),代码如下: volatile unsigned int *p; p=(volatile unsigned int *)0x002c;/config HPIC , SAM mode *p=0x02; DSP 在SAM方式下触发主机中断,代码如下: volatile unsigned int *p; p=(volatile unsigned int *)0x002c; *p=0x0A; 8.2 主机接口(HPI)应用原理与实例 第8章 TMS320C54x的外设应用编程 33 8.3 串行通信口原理与应用 T TMS320C54x具有高速、全双工串行口,可以与串行设 备(如编解码器和串行A/D转换器)直接通信,也可用 于多处理器系统中处理器之间的通信。 T TMS320C54x系列的串行口有四种类型: 标准同步串行口SP、 缓冲同步串行口BSP、 时分多路串行口TMD、 多通道缓冲串行口McBSP。 第8章 TMS320C54x的外设应用编程 34 8.3.1 标准同步串行口SP 1.标准同步串行口SP结构 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 35 8.3.1 标准同步串行口SP 1.标准同步串行口SP结构 标准同步串行口由16位数据接收寄存器(DRR)、数 据发送寄存器(DXR)、接收移位寄存器(RSR)、发 送移位寄存器(XSR)、2个装载控制逻辑电路以及2个 位/字控制计数器组成。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 36 8.3.1 标准同步串行口SP 1.标准同步串行口SP结构 T 标准同步串行口各部分的功能: 数据接收寄存器DRR。它是16位的存储器映射数据接收 寄存器,用来保存来自RSR寄存器并将要写到数据总线 的输入数据。复位时,DRR被清除。 数据发送寄存器DXR。它是16位的存储器映射数据发送 寄存器,用来保存来自数据总线并将要加载到XSR的外 部串行数据。复位时,DXR被清除。 数据接收移位寄存器RSR。它是16位的数据接收移位寄 存器,用来保存来自串行数据接收(DR)引脚的输入数 据,并控制数据到DRR的传输。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 37 8.3.1 标准同步串行口SP 1.标准同步串行口SP结构 T 标准同步串行口各部分的功能: 数据发送移位寄存器XSR。它是16位数据发送移 位寄存器,用来控制来自DXR的外部数据的传输, 并保存将要发送到串行数据发送引脚的数据。 串行口控制寄存器SPC。它是16位的存储器映射 串行接口控制寄存器,用来保存串行接口的模式控 制和状态位。 控制电路。它用于控制串行口协调工作,分为: 1) 装载控制电路:完成接收和发送数据的装载。 2) 位/字控制计数器:完成位/字传输控制。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 38 例8-4 两个TMS320C54x串行通信的连接 对于左侧TMS320C54x设备 ,发送过程分为以下几步: (1)发送数据装入DXR。 (2)当上一个数据发送完后, DXR的数据会自动装入XSR。 (3)在发送帧同步信号FSX和发 送时钟CLKX作用下,将XSR的 数据通过引脚DX发送输出。 对于右侧TMS320C54x设备, 接收过程分为以下几步: (1)在接收帧同步信号FSR和接 收时钟CLKR作用下,接收数据 通过DR引脚移至RSR中。 (2)当RSR满时,将数据装入 DRR中。 (3)接收端检测到数据到达即可 进一步处理。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 39 8.3.1 标准同步串行口SP 2.串行口控制寄存器SPC TMS320C54x 标志同步串行口的操作是由串行 口控制寄存器SPC决定的。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 40 8.3.1 标准同步串行口SP 2.串行口控制寄存器SPC T SPC的各控制位的功能 (1)Res(第0位):保留位,用于单 TMS320C54x测试串行口代码。在串行接口总 读为0。 (2)DLB(第1位):数字回送模式位,用于设置 串行接口为数据回送模式。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 41 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 8.3.1 标准同步串行口SP 2.串行口控制寄存器SPC SPC的各控制位的功能 (2)DLB(第1位): 1) 当DLB=0时,为禁止数据回送模式。DR、FSR和CLKR 信号来自它们各自器件引脚。 2)当DLB=1时,为使能数据回送模式。通过图 (a)和图 (b) 所示的多路复用器,将DR和FSR信号分别连接到DX和 FSX。另外,如果MCM=1,则输出时钟CLKR由片内时 钟CLKX驱动;如果MCM=0,则输出时钟CLKR来自器件 的CLKR引脚。该配置允许CLKX和CLKR在外部连接在 一起,并且由同一个时钟源提供时钟。图(c)为CLKR的逻 辑结构。 42 第8章 TMS320C54x的外设应用编程 8.3.1 标准同步串行口SP 2.串行口控制寄存器SPC SPC的各控制位的功能 (3) FO(第2位):数据格式位,该位用于定义串行口发送/接收数据的字长。 (4) FSM(第3位):帧同步模式位,该位规定串行口工作时,在初始帧同步脉冲之后是否 还要求FSX和FSR帧同步脉冲。 (5) MCM(第4位):时钟模式位,用来设定CLKX的时钟源。 (6) TXM(第5位):发送模式位,用于设定帧同步脉冲FSX的来源。 (7) XRST(第6位):发送复位位,用来对串行口发送器进行复位。 (8) RRST(第7位):接收复位位,用来对串行口接收器进行复位。 (9) IN0(第8位):接收时钟状态位,用于显示接收时钟CLKR当前状态。 (10) IN1(第9位):发送时钟状态位,用于显示发送时钟CLKX当前状态。 (11)RRDY(第10位):接收准备好位,用于检测接收移位寄存器RSR接收数据的状态。 (12)XRDY(第11位):发送准备好位,用于检测发送寄存器DXR发送数据的状态。 (13)XSREMPTY(第12位):发送移位寄存器空位,用于反映发送移位寄存器的状态。 (14) RSRFULL(第13位):接收移位计数器满,用来反映接收移位寄存器的状态,高电 平有效。 (15) Free(第14位)、Soft(第15位):仿真控制位,用于调试程序遇到断点时决定串行 口的时钟状态。 8.3 串行通信口原理与应用 43 8.3.1 标准同步串行口SP 3.标准同步串行口SP的使用操作 T 例:TMS320VC5402 用标准同步串口SP实现数据通信,处理时使用中断 方式: T (1)串口的初始化 1) 复位,并且把0038h(或0008h)写到SPC,初始化串行接口。 2) 把00C0h写到IFR,清除任何挂起的串行接口中断。 3) 把00C0h和IMR求或逻辑运算,使能串行接口中断。 4) 清除ST1的INTM位,使能全局中断。 5) 把00F8h(或00C8h)写入SPC,启动串行接口。 6) 把第一个数据写到DXR。如果这个串行接口与另一个处理器的串行接 口连接,而且这个处理器产生一个帧同步信号SFX,则在写这个数据 之前必须有握手信号。 T (2)串口中断服务程序处理 1) 保存上下文到堆栈中。 2) 读DRR或写DXR,或者同时进行两种操作。从DRR读出的数据写到存 储器中预定单元,写到DXR的数据从存储器的指定单元取出。 3) 恢复现场。 4) 用RETE从中断子程序返回,并重新使能中断。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 44 8.3.2 缓冲同步串行口BSP T 缓冲同步串行口BSP是一种增强型同步串行口,它是在同 步串行口的基础上增加了一个自动缓冲单元ABU。 T ABU是一个附加的逻辑功能,它利用专用总线,控制串行 口直接与TMS320C54x的内部存储器进行数据交换,这就 使得串口传送的开销最小,且具有更快的数据传输速率。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 45 8.3.2 缓冲同步串行口BSP 1.缓冲同步串行口BSP结构 缓冲同步串行口共有6个寄存器: 数据接收寄存器(BDRR) 数据发送寄存器(BDXR) 控制寄存器(BSPC) 控制扩展寄存器(BSPCE) 接收移位寄存器(BRSR) 发送移位寄存器(BXSR) 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 46 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 47 8.3.2 缓冲同步串行口BSP 2.缓冲同步串行口的控制寄存器BSPCE BSPCE寄存器包含控制位和状态位,用于控制BSP和 ABU的增强功能。寄存器的低10位用于增强特性控制, 高6位用于ABU控制。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 48 T BSPCE寄存器各位功能说明如下。 (1)ABUC(第1510位):ABU控制寄存器,用于自动缓冲单元的控 制。 (2)PCM(第9位):PCM脉冲编码模式位,用于设置串口工作于编码 模式。 (3)FIG(第8位):帧同步信号忽略,该位仅在连续发送模式下且具 有外部帧同步信号, 以及连续接收模式下工作。 (4)FE(第7位):格式扩展位,用于和SPC中的FO位一起指定字长 。 (5)CLKP(第6位):时钟极性设置位,用于设定接收和发送时,何 时采样数据。 (6)FSP(第5位):帧同步极性设置位,用于设定帧同步脉冲触发电 平高低。 (7)CLKDV(第40位):CLKDV内部发送时钟分频因数。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 49 8.3.2 缓冲同步串行口BSP 3.ABU自动缓冲单元 BSPCE的最高6位组成了ABU的控制寄存器(ABUC) ,用于自动缓冲单元的控制。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 50 (1)HALTR(第15位):自动缓冲接收停止位,用于决 定当缓冲区已接收到一半时,自动缓冲是否暂停。 (2)RH(第14位):接收缓冲区半满,用来指明接收缓 冲区哪一半已经填满。 (3)BRE(第13位):自动接收使能控制位,用于控制 自动缓冲接收。 (4)HALTX(第12位):自动缓冲发送禁止,用于控制 自动缓冲发送是否暂停。 (5)XH(第11位):发送缓冲区半满。用来表示发送缓 冲区哪一半已经发送。 (6)BXE(第10位):自动缓冲发送使能位,用来控制自动缓 冲发送。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 51 8.3.2 缓冲同步串行口BSP 3.ABU自动缓冲单元 T 自动缓冲过程归纳如下: (1)ABU完成对缓冲存储器的存取。 (2)工作过程中地址寄存器自动增加,直到缓冲区的底部( 到底部后,地址寄存器内容恢复到缓冲存储区顶部)。 (3)如果数据到了缓冲区的一半或底部,就会产生中断,并 且刷新XH/XL。 (4)如果选择禁止自动缓冲功能,当数据过半或到达缓冲区 底部时,ABU自动停止自动缓冲功能。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 52 8.3.2 缓冲同步串行口BSP 4.BSP的使用初始化操作 (1)BSP发送初始化步骤 1) 把0008h写到BSPCE寄存器,复位和初 始化串口。 2) 把0020h写到IFR,清除挂起的串口中 断。 3) 把0020h与IMR进行或操作,使能串口 中断。 4) 清除ST1的INTM位,使能全局中断。 5) 把1400h写到BSPCE寄存器,初始化 ABU的发送器。 6) 把缓冲区开始地址写到AXR。 7) 把缓冲长度写到BKX。 8) 把0048h写到BSPCE,开始串口操作。 (2)BSP接收初始化步骤 1) 把0000h写到BSPCE寄存器,复位和初始化 串口。 2) 把0010h写到IFR,清除挂起的串口中断。 3) 把0010h与IMR进行或操作,使能串口中断 。 4) 清除ST1的INTM位,使能全局中断。 5) 把2160h写到BSPCE寄存器,初始化ABU的 发送器。 6) 把缓冲开始地址写到ARR。 7) 把缓冲长度写到BKR。 8) 把0080h写到BSPCE寄存器,开始串口操作 。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 53 8.3.2 缓冲同步串行口BSP 5.BSP省电工作模式 TMS320C54x提供几种省电工作模式,允许部分或整个 器件进入休眠或低功耗状态。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 54 8.3.2 缓冲同步串行口BSP 6.SP与BSP的差别 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 55 T8.3.3 时分多路串行口TDM T 时分多路串行口TDM是一个允许数据时分多路的同步串 行接口。 T 1.TDM的时分复用工作方式 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 56 8.3.3 时分多路串行口TDM 2.TDM的寄存器 T TDM串口操作通过6个存储器映射寄存器和2个其他专用寄 存器来实现。 TRCV、TDXR、TSPC、TCSR、 TRTA、TRAD、TRSR、TXSR。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 57 (1)TDM数据接收寄存器TRCV:用来保存接收的串行数据, 功能与DRR相同。 (2)TDM数据发送寄存器TDXR:用来保存发送的串行数据, 功能与DXR相同。 (3)TDM串口控制寄存器TSPC:包含TDM的模式控制或状态 控制位 (4)TDM接收地址寄存器TRAD:存留TDM地址线的各种状态 信息。 (5)TDM通道选择寄存器TCSR:指定每个通信器件发送操作 时间段。 (6)TDM发送/接收地址寄存器TRTA:低8位(RA0RA7)为 接收地址,高8位(TA0TA7)发送地址。 (7)TDM数据接收移位寄存器TRSR:控制从输入引脚到 TRCV数据的接收保存过程,与RSR功能类似。 (8)TDM数据发送移位寄存器TXSR:控制从TDXR来的输出 数据的传送,并保存从TDM引脚发送出去的数据,与XSR 功能相同。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 58 8.3.3 时分多路串行口TDM 3.TDM的应用连接 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 59 8.3.4 多通道缓冲串行口McBSP T 多通道缓冲串行口McBSP是一个高速、全双工、多通道缓冲串 行接口 。 T McBSP的主要特点: 串行口的接收、发送时钟既可由外部设备提供,又可由内部 时钟提供。 帧同步信号和时钟信号的极性可编程。 信号的发送和接收既可单独运行,也可结合在一起配合工作 。 McBSP的串行口可由CPU控制运行,也可以脱离CPU通过直 接内存的读取操作来单独运行。 具有多通道通信能力,可达128个通道。 数据的宽度可在8、12、16、20、24和32位中选择,并可对 数据进行A律和律压缩和扩展。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 60 8.3.4 多通道缓冲串行口McBSP 1.多通道缓冲串行口McBSP结构 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 61 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串行口McBSP的控制寄存器 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 62 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (1)McBSP的控制寄存器SPCR1 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 63 (1)McBSP的控制寄存器SPCR1 第8章 TMS320C54x的外设应用编程 64 (1)McBSP的控制寄存器SPCR1 第8章 TMS320C54x的外设应用编程 65 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (2)McBSP的控制寄存器SPCR2 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 66 第8章 TMS320C54x的外设应用编程 (2)McBSP的控制寄存器SPCR2 67 第8章 TMS320C54x的外设应用编程 (2)McBSP的控制寄存器SPCR2 68 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (3)McBSP的引脚控制寄存器PCR 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 69 第8章 TMS320C54x的外设应用编程 (3)McBSP的引脚控制寄存器PCR 70 第8章 TMS320C54x的外设应用编程 (3)McBSP的引脚控制寄存器PCR 71 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (4)McBSP的接收控制寄存器RCR1 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 72 第8章 TMS320C54x的外设应用编程 (4)McBSP的接收控制寄存器RCR1 73 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (5) McBSP的接收控制寄存器RCR2 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 74 第8章 TMS320C54x的外设应用编程 (5) McBSP的接收控制寄存器RCR2 75 第8章 TMS320C54x的外设应用编程 (5) McBSP的接收控制寄存器RCR2 76 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (6) McBSP的发送控制寄存器XCR1 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 77 第8章 TMS320C54x的外设应用编程 (6) McBSP的发送控制寄存器XCR1 78 8.3.4 多通道缓冲串行口McBSP 2. 多通道缓冲串口McBSP的控制寄存器 (7) McBSP的发送控制寄存器XCR2 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 79 第8章 TMS320C54x的外设应用编程 (7) McBSP的发送控制寄存器XCR2 80 第8章 TMS320C54x的外设应用编程 (7) McBSP的发送控制寄存器XCR2 81 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (1)McBSP串行口的复位 T McBSP串行口的复位有两种方式 系统复位 McBSP复位 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 82 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (2)McBSP串行口的初始化 T McBSP复位后,可进行初始化,其步骤如下: 1) 对控制寄存器的复位位(接收/发送复位)置0,即使 RRST、XRST和GRST位为零。 2) 根据串口复位的要求,对McBSP的寄存器进行编程 配置。 3) 等待2个时钟周期,以保证内部时钟同步。 4) 对DXD写信息,设置数据通道。 5) 设置XRST和RRST置1,使串口处于使能状态。 6) 如果需要内部帧同步信号,则设定FRST=1。 7) 等待2个时钟周期后,接收器和发送器被激活。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 83 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (3)McBSP串口的多通道选择配置 使用单相帧同步设置McBSP,可为发送器、接收器 选择独立的多通道工作模式。每一帧代表一个时分 复用(TDM)数据流。 McBSP的多通道选择配置可以通过设定多通道控制 寄存器来进行。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 84 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (3)McBSP串口的多通道选择配置 1) 多通道控制寄存器MCR1 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 85 第8章 TMS320C54x的外设应用编程 1) 多通道控制寄存器MCR1 86 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (3)McBSP串口的多通道选择配置 2)多通道控制寄存器MCR2 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 87 第8章 TMS320C54x的外设应用编程 2) 多通道控制寄存器MCR2 88 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (3)McBSP串口的多通道选择配置 3) 接收通道使能寄存器RCERx 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 RCERA的位结构定义 RCERB的位结构定义 89 第8章 TMS320C54x的外设应用编程 90 8.3.4 多通道缓冲串行口McBSP 3.McBSP串口的控制操作 (3)McBSP串口的多通道选择配置 4) 发送通道使能寄存器XCERx 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 91 第8章 TMS320C54x的外设应用编程 92 8.3.4 多通道缓冲串行口McBSP 4.McBSP的通信应用 数据发送过程: 1) TMS320C54x通过外设总线, 将数据写入数据发送寄存器 DXR1,2。 2) McBSP串口将DXR1,2中的发 送数据传送到发送移位寄存器 XSR1,2中。 3) 通过发送移位寄存器XSR1,2 ,将数据经DX引脚移出发送。 数据接收过程: 1) McBSP串口通过DR引脚,将接 收数据移入接收移位数据寄存器 RSR1,2中。 2) 将RSR1,2中的接收数据拷贝 到接收缓冲寄存器RBR1,2。 3) 将RBR1,2中的接收数据复制 到数据接收寄存器DRR1,2。 4) TMS320C54x或DMA控制器从 DRR1,2中读出数据。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 93 8.3.5 McBSP串行口应用实例 扩展一个串行A/D转换应用 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 94 8.3.5 McBSP串行口应用实例 MS320C54x在驱动MAX1247正常工作之前,必须先 初始化McBPS0为SPI工作模式,配置双向读写模式 ,将控制寄存器FRST和GRST位设置为1,其他位设 置为0。 8.3 串行通信口原理与应用 第8章 TMS320C54x的外设应用编程 95 8.4 外部I/O扩展原理与应用 T TMS320C54x除了提供程序存储空间和数据存储空间外 ,还提供了I/O存储空间,I/O存储空间只存于片外。 T I/O存储空间访问时序对于等待周期处理更灵活一些,这 点略不同于程序存储空间和数据存储空间操作,这使得 I/O访问外设更方便些。 第8章 TMS320C54x的外设应用编程 8.4.1 I/O空间扩展外设原理 1.I/O空间的外扩总线 T I/O存储空间的外设扩展需要将外设连接到 TMS320C54x提供的外围总线上 96 8.4.1 I/O空间扩展外设原理 2.I/O空间的读写时序 8.4 外部I/O扩展原理与应用 第8章 TMS320C54x的外设应用编程 97 8.4.1 I/O空间扩展外设原理 3.TMS320C54x系统对I/O扩展外设的访问 汇编语言中使用PORTR、PORTW命令访问 TMS320C54x的I/O存储空间。 在C语言中使用ioport关键字访问TMS320C54x的 I/O存储空间。 8.4 外部I/O扩展原理与应用 第8章 TMS320

温馨提示

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

评论

0/150

提交评论