第七章C54x片内外设、接口及应用-主机接口课件.ppt
《第七章C54x片内外设、接口及应用-主机接口课件.ppt》由会员分享,可在线阅读,更多相关《第七章C54x片内外设、接口及应用-主机接口课件.ppt(71页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、http:/n 主机接口n 定时器n 串行口n 中断系统 第7章 TMS320C54x 片内外设、接口及应用http:/1.概 述u 为满足数据处理的需要,为满足数据处理的需要,C54xC54x器件除提供功能强大的器件除提供功能强大的 CPU CPU、改进的哈佛结构的总线、片内大容量的高速存储、改进的哈佛结构的总线、片内大容量的高速存储 器和大范围的寻址,还提供了丰富的片内外围电路。器和大范围的寻址,还提供了丰富的片内外围电路。http:/ 通用通用I/OI/O引脚(引脚(BIOBIO和和XFXF)定时器定时器 时钟发生器时钟发生器 主机接口主机接口HPIHPI 软件可编程的等待状态发生器软件
2、可编程的等待状态发生器 可编程的分区转换逻辑可编程的分区转换逻辑 直接存储器访问直接存储器访问DMADMA控制器控制器 串行口串行口-标准同步串口、带缓冲的串口标准同步串口、带缓冲的串口BSPBSP、多通道缓冲串口、多通道缓冲串口 McBSP McBSP和时分复用串口和时分复用串口TDMTDMu 不同型号的不同型号的C54xC54x芯片具有不同的外设数量和配置:芯片具有不同的外设数量和配置:http:/2.片内外设的存储器映射寄存器n 片内外设的控制与操作是通过片内外设的控制与操作是通过存取存储器映射的控制和存取存储器映射的控制和 数据寄存器数据寄存器实现;实现;n 这些寄存器可用来与外设交换
3、数据,这些寄存器可用来与外设交换数据,CPUCPU通过访问这些通过访问这些 寄存器来操作和控制外设;寄存器来操作和控制外设;n 置位或清零控制寄存器中的相应位可以使能、禁止、初置位或清零控制寄存器中的相应位可以使能、禁止、初 始化或动态配置外设;始化或动态配置外设;n 片内外设的寄存器映射到数据存储空间的第片内外设的寄存器映射到数据存储空间的第0 0页页20H20H5FH5FH 地址中。地址中。P43P43http:/表表1 VC54021 VC5402的部分片内外设映射寄存器的部分片内外设映射寄存器http:/7.1 主机接口http:/n 主机接口主机接口HPIHPI是是C54xC54x芯
4、片具有的一种芯片具有的一种8 8位或位或1616位的并行接口位的并行接口部件部件1.概述 主机和主机和DSPDSP可独立地对可独立地对HPIHPI接口操作;接口操作;主机和主机和DSPDSP握手可握手可通过中断方式通过中断方式来完成;来完成;主机可通过主机可通过HPIHPI直接访问直接访问CPUCPU的存储空间的存储空间,包括存储器映像,包括存储器映像 寄存器;寄存器;主机还可通过主机还可通过HPIHPI接口装载接口装载DSPDSP应用程序、接收应用程序、接收DSPDSP运行结果运行结果 或诊断或诊断DSPDSP运行状态,为运行状态,为DSPDSP芯片的接口开发提供了一种极为芯片的接口开发提供
5、了一种极为 方便的途径。方便的途径。n 特点:特点:主要用于主要用于DSPDSP与其他主设备或主处理器与其他主设备或主处理器(主机(主机-主控者)主控者)进行通信进行通信http:/图图2 HPI2 HPI接口框图接口框图2.结构1000H-17FFH DARAMhttp:/(1)(1)共用访问模式共用访问模式(SAMSAM)主机和主机和C54xC54x都能访问都能访问HPIHPI存储器。如果存储器。如果C54xC54x与主机的周期与主机的周期发生冲突,发生冲突,主机具有访问优先权主机具有访问优先权,C54xC54x需等待一个周期。需等待一个周期。3.HPI的工作方式(2)(2)仅主机访问模式
6、仅主机访问模式(HOMHOM)只有主机可以访问只有主机可以访问HPIHPI存储器,存储器,C54xC54x则处于复位状态或内则处于复位状态或内外所有时钟都停止工作的空闲状态。外所有时钟都停止工作的空闲状态。此方式下,此方式下,HPIHPI支持更快的主机访问速度,与支持更快的主机访问速度,与C54xC54x的时钟的时钟速度无关。速度无关。HPIHPI具有两种工作方式:具有两种工作方式:http:/图图3 HPI3 HPI与主机设备之间的连接框图与主机设备之间的连接框图4.HPI的基本功能http:/表表3 HPI3 HPI用于主机和用于主机和C54x DSPC54x DSP之间通信的寄存器之间通
7、信的寄存器5.HPI的寄存器名称名称地址地址功能描述功能描述HPIAHPI地址寄存器,主机可直接地址寄存器,主机可直接访问访问HPIC002CHHPI控制寄存器,可由控制寄存器,可由主机或主机或C54X直接直接访问访问,包含,包含HPI操作的控制和状操作的控制和状态态位。位。HPIDHPI数据寄存器,只能由主机数据寄存器,只能由主机访问访问,包含从包含从HPI存存储储器器读读出的数据或要写出的数据或要写到到HPI存存储储器的数据。器的数据。http:/6.HPI-8与HPI的区别n HPI-8 HPI-8是是8 8位增强位增强HPIHPI接口接口n 是用于连接是用于连接C54xC54x芯片与主
8、机设备或主机处理器的并行接口芯片与主机设备或主机处理器的并行接口n 主机与主机与C54xC54x芯片通过芯片通过C54xC54x的片内的片内RAMRAM交换数据。交换数据。n C5402 C5402、C5410C5410带有带有HPI-8HPI-8,C5420C5420为为HPI-16HPI-16。标标准准8位位HPI增增强强型型8位位HPI只允只允许访问许访问片内片内RAM指定的指定的2k字字允允许对许对整个片内整个片内RAM进进行行访问访问在在HOM方式,方式,仅仅能主机能主机寻寻址址HPI存存储储器器主机与主机与C54x都能都能访问访问HPI存存储储器器在在HOM方式,允方式,允许许主机
9、的异步主机的异步访问访问主机主机访问总访问总是与是与C54x的的时钟时钟同步同步表表2 2 标准标准HPIHPI与与HPI-8HPI-8的区别的区别http:/7.2 定时器http:/ C54xDSP C54xDSP的定时器是一个带有的定时器是一个带有4 4位预分频器的位预分频器的1616位定时电路位定时电路(减法计数器),可获得较大范围的定时器频率。(减法计数器),可获得较大范围的定时器频率。定时器计数器每来一个时钟周期自动减定时器计数器每来一个时钟周期自动减1 1,当计数器减至,当计数器减至0 0时时 产生一个定时中断。产生一个定时中断。通过编程设置特定的状态,可使定时器停止、恢复运行、
10、复通过编程设置特定的状态,可使定时器停止、恢复运行、复 位或禁止。位或禁止。VC5402 VC5402有两个片内定时器。有两个片内定时器。一、定时器概述http:/u C54x C54x的定时器是一个可软件编程的计数器,主要包括的定时器是一个可软件编程的计数器,主要包括3 3个存储器映射个存储器映射 寄存器:寄存器:1.1.定时器设定寄存器定时器设定寄存器TIMTIM -1616位减法计数器位减法计数器,映射到数据存储空间的,映射到数据存储空间的0024H0024H单元。复位或定单元。复位或定时器中断(时器中断(TINTTINT)时,)时,TIMTIM内装入内装入PRDPRD寄存器的值(定时时
11、间),并进行寄存器的值(定时时间),并进行自动减自动减1 1操作。操作。2.2.定时器周期寄存器定时器周期寄存器PRD PRD -16 -16位的存储器映像寄存器,位于数据存储空间的位的存储器映像寄存器,位于数据存储空间的0025H0025H单元,用单元,用来来存放定时时间常数存放定时时间常数。复位或。复位或TINTTINT中断时,将定时时间装入中断时,将定时时间装入TIMTIM。3.3.定时器控制寄存器定时器控制寄存器TCR TCR -16 -16位的存储器映像寄存器,位于数据存储空间的位的存储器映像寄存器,位于数据存储空间的0026H0026H单元,用单元,用来来存储定时器的控制位和状态位
12、存储定时器的控制位和状态位,包括定时器分频系数,包括定时器分频系数TDDRTDDR、预标定计、预标定计数器数器PSCPSC、控制位、控制位TRBTRB、TSSTSS等。等。二、定时器寄存器http:/表表2 TCR各位的意义描述各位的意义描述三、定时器控制寄存器位位名称名称功功 能能15-12保留保留读读出出时总为时总为011SOFT和和FREE结结合使用控制定合使用控制定时时器操作器操作10FREEFREE SOFT 定定时时操作操作 0 0 定定时时器立即停止工作器立即停止工作 0 1 计计数器数器TIM减减为为0时时停止工作停止工作 1 x 定定时时器器继续继续运行,运行,PRD重新装入
13、重新装入TIM9-6PSC预标预标定定计计数器(数器(减减1计计数器数器),每个,每个CLKOUT作减作减1操作,减操作,减为为0时时,TDDR值值装入装入PSC,TIM减减1。5TRB定定时时器复位器复位,此位置此位置1,将,将PRD、TDDR分分别别装入装入TIM和和PSC4TSS置置0启启动动定定时时器;器;置置1停止定停止定时时器工作,切断器工作,切断时钟输时钟输入,减少入,减少DSP功耗。功耗。3-0TDDR定定时时器分器分频频系数,系数,最大最大值为值为16,最小,最小值为值为1。按此分。按此分频频系数系数对对CLKOUT进进行行分分频频,以改,以改变变定定时时周期。当周期。当PS
14、C减到减到0时时,将此,将此值值装入装入PSChttp:/图图7.2.1 C54xDSP7.2.1 C54xDSP定时器结构图定时器结构图n C54xDSP C54xDSP的定时器由的定时器由主定时器模块主定时器模块(PRD(PRD和和 TIM)TIM)、预置模块预置模块(TCR(TCR中的中的 TDDR TDDR和和PSCPSC等等)及相应及相应控制电路控制电路组成。组成。三、定时器工作过程http:/n 定时器由定时器由CPUCPU提供时钟,受定时设定寄存器提供时钟,受定时设定寄存器TIMTIM 、周期寄存器、周期寄存器 PRD PRD和控制寄存器和控制寄存器TCRTCR控制。控制。htt
15、p:/n 工作原理工作原理:当:当CLKOUTCLKOUT信号时钟沿到来时触发减信号时钟沿到来时触发减1 1计数器计数器PSCPSC,直到直到PSCPSC为为0 0,然后用,然后用TDDRTDDR重新装入重新装入PSCPSC;同时用分频时钟对;同时用分频时钟对TIM TIM 作减作减1 1计数,直到计数,直到TIMTIM为为0 0。http:/n TIMTIM减为减为0 0时,时,CPUCPU发出定时器中断信号发出定时器中断信号TINTTINT,同时在,同时在TOUTTOUT管脚管脚 输出一个脉冲,脉宽与主时钟一致,可为外围电路提供时钟;输出一个脉冲,脉宽与主时钟一致,可为外围电路提供时钟;n
16、 同时同时PSCPSC和和TIMTIM重新装入预设值,重复下去至系统或定时器复位。重新装入预设值,重复下去至系统或定时器复位。http:/n 当系统复位或定时器单独复位时,当系统复位或定时器单独复位时,TIMTIM和和PRDPRD被置成最大值被置成最大值FFFFHFFFFH,TDDR TDDR清清0 0,TSSTSS清清0 0启动定时器。并将启动定时器。并将TDDRTDDR的内容重新加载到的内容重新加载到PSCPSC,PRD PRD的值重新加载到的值重新加载到TIMTIM。http:/ 定时器的基准工作脉冲由定时器的基准工作脉冲由CLKOUTCLKOUT提供,每来一个脉冲预提供,每来一个脉冲预
17、定标计数器定标计数器PSCPSC减减1 1,当,当PSCPSC减至减至0 0时,下一个脉冲到来,时,下一个脉冲到来,PSCPSC产产生借位。生借位。借位信号分别控制定时计数器借位信号分别控制定时计数器TIMTIM减减1 1和或门和或门2 2的输出,重的输出,重新将新将TDDRTDDR的内容加载预定标计数器的内容加载预定标计数器PSCPSC,从而完成定时工作的从而完成定时工作的一个基本周期。一个基本周期。定时器的定时时间为:定时器的定时时间为:定时周期定时周期=CLKOUTCLKOUT(TDDR+1)(TDDR+1)(PRD+1)(PRD+1)四、定时器初始化http:/n 使用定时器前,首先应
18、设好定时器的工作方式和计数值,使用定时器前,首先应设好定时器的工作方式和计数值,并设置好中断,即对其初始化。具体步骤如下:并设置好中断,即对其初始化。具体步骤如下:(1)TSS=1(1)TSS=1,停止定时器;,停止定时器;(2)(2)加载加载PRDPRD值;值;(3)(3)重新设置重新设置TCRTCR的值,包括初始化的值,包括初始化TDDRTDDR、TRBTRB位置位置1 1 (TIMTIM为为0 0后,加载定时器时间常数)和后,加载定时器时间常数)和TSSTSS位清位清0 0(启动定(启动定时器)。时器)。http:/n 如果要使用定时器中断如果要使用定时器中断TINT(ST1TINT(S
19、T1的中断模式的中断模式INTM=1INTM=1的情况下的情况下),要做如下设置要做如下设置 :(1)(1)设置中断标志寄存器设置中断标志寄存器(IFR)(IFR)中的中的TINT=1TINT=1,清除定时器中断;,清除定时器中断;(2)(2)设置中断屏蔽寄存器设置中断屏蔽寄存器(IMR)(IMR)中的中的TINT=1TINT=1,激活定时器中断;,激活定时器中断;(3)(3)设置设置STISTI中的中的INTM=0INTM=0,激活全部中断。,激活全部中断。五、定时器中断n 当定时器计数器减少到当定时器计数器减少到0 0时,会产生一个定时器中断时,会产生一个定时器中断TINTTINT,其频率
20、为:,其频率为:式中,式中,tctc为为CPUCPU时钟周期(即时钟周期(即CLKOUTCLKOUT的周期)的周期)http:/ 复位时,复位时,TIMTIM和和PRDPRD被设置为最大值被设置为最大值(0(0FFFFH)FFFFH),TCRTCR中的中的TDDRTDDR置置0 0,定时器可以通过启动定时控制寄存器,定时器可以通过启动定时控制寄存器(TCR)TCR)完成以完成以下操作:下操作:设定定时器的工作方式;设定定时器的工作方式;设定预定标计数器中的当前数值;设定预定标计数器中的当前数值;启动或停止定时器;启动或停止定时器;重新装载定时器;重新装载定时器;设置定时器的分频值。设置定时器的
21、分频值。四、定时器初始化http:/【例【例1 1】定时器自动装载定时。定时器自动装载定时。TSS=0:TSS=0:启动定时器;启动定时器;TRB=1:TRB=1:自动装载;自动装载;TDDR=Ah:TDDR=Ah:分频系数分频系数1010 soft=1soft=1,free=0:free=0:计数器减至计数器减至0 0时,停止工作;时,停止工作;TCR=0AAAHTCR=0AAAH。定时周期:定时周期:01010101H H;关闭定时器中断:关闭定时器中断:IFR=0008HIFR=0008H;开放定时器中断:开放定时器中断:IMR=0008HIMR=0008H。STM#0000H STM#
22、0000H,SWWSRSWWSR STM#0010H STM#0010H,TCRTCR STM#0101H STM#0101H,PRDPRD STM#0AAAH STM#0AAAH,TCRTCR STM#0080H STM#0080H,IFRIFR STM#0080H STM#0080H,IMRIMR RSBX INTM RSBX INTM ;不插等待时间不插等待时间 ;TSS=0TSS=0关闭定时器关闭定时器 ;加载周期寄存器加载周期寄存器(PRD)PRD);装入定时器控制字,启动定时器装入定时器控制字,启动定时器 ;消除尚未处理完的定时器中断消除尚未处理完的定时器中断 ;开放定时器中断开放
23、定时器中断 ;开放中断开放中断http:/ 例如:用例如:用TMS320VC5402TMS320VC5402实现方波发生器。假设时钟频率实现方波发生器。假设时钟频率为为4 4MHz,MHz,在在XFXF端输出占空比为端输出占空比为50%50%的方波,方波的周期由片上的方波,方波的周期由片上定时器确定定时器确定,采用中断方法实现。采用中断方法实现。7.2.2 定时器/计数器的应用 1.1.方波发生器方波发生器 (1)(1)定时器初始化定时器初始化 关闭定时器,关闭定时器,TCRTCR中的中的TSS=1TSS=1;加载加载PRDPRD。设定定时中断周期,每中断一次设定定时中断周期,每中断一次,输出
24、端电输出端电平取反一次;平取反一次;启动定时器,初始化启动定时器,初始化TDDRTDDR,TSS=0TSS=0,TRB=1TRB=1。http:/(2)(2)中断初始化中断初始化 中断允许寄存器中断允许寄存器IFRIFR中的定时中断位中的定时中断位TINT=1,TINT=1,清除未处理完的定时中断;清除未处理完的定时中断;中断屏蔽寄存器中断屏蔽寄存器IMRIMR中的定时屏蔽位中的定时屏蔽位TINT=1,TINT=1,开放定时中断;开放定时中断;状态控制寄存器状态控制寄存器ST1ST1中的中断标志位中的中断标志位INTM=0,INTM=0,开放全部中断。开放全部中断。http:/(3)(3)方波
25、发生器程序清单方波发生器程序清单 周期为周期为8 8msms的方波发生器,定时中断周期为的方波发生器,定时中断周期为4 4ms,ms,每中断一每中断一次,输出端电平取一次反。次,输出端电平取一次反。程序清单:程序清单:;abc1.asmabc1.asm ;定时器定时器0 0寄存器地址寄存器地址 TIM0 TIM0 set 0024Hset 0024H PRD0 PRD0 set 0025Hset 0025H TCR0 TCR0 set 0026Hset 0026H ;K_TCR0K_TCR0:设置定时器控制寄存器的内容设置定时器控制寄存器的内容 K_TCR0_SOFT .set 0bK_TCR
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第七 C54x 内外 接口 应用 主机 课件
限制150内