DSP控制器原理与应用张小鸣第七章

上传人:沈*** 文档编号:193243747 上传时间:2023-03-09 格式:PPT 页数:41 大小:459KB
收藏 版权申诉 举报 下载
DSP控制器原理与应用张小鸣第七章_第1页
第1页 / 共41页
DSP控制器原理与应用张小鸣第七章_第2页
第2页 / 共41页
DSP控制器原理与应用张小鸣第七章_第3页
第3页 / 共41页
资源描述:

《DSP控制器原理与应用张小鸣第七章》由会员分享,可在线阅读,更多相关《DSP控制器原理与应用张小鸣第七章(41页珍藏版)》请在装配图网上搜索。

1、第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 DSPDSP应用系统一般是一个多电源系统,通常包含应用系统一般是一个多电源系统,通常包含5V5V和两和两种电源。这是因为多数种电源。这是因为多数DSPDSP芯片是采用来供电的,而许多外围芯片是采用来供电的,而许多外围接口芯片是采用接口芯片是采用5V5V供电。供电。对于多电源供电系统,一般采用对于多电源供电系统,一般采用5V5V电源供电,对于其他电源供电,对于其他数量级的电源可经电压变换得到。数量级的电源可经电压变换得到。5V5V电源可经外部的开关电电源可经外

2、部的开关电源直接得到,或者将源直接得到,或者将220V220V交流电经整流、滤波、稳压后得到。交流电经整流、滤波、稳压后得到。一般来讲,这样得到的一般来讲,这样得到的5V5V电源的带负载能力较强,但纹波较电源的带负载能力较强,但纹波较大,很难直接应用到大,很难直接应用到DSPDSP系统中。为此,一般要经过系统中。为此,一般要经过DC/DCDC/DC变换变换或隔离处理。下图给出了几种完成此类功能的芯片及其典型电或隔离处理。下图给出了几种完成此类功能的芯片及其典型电路的连接方法。有关芯片的主要参数见表。路的连接方法。有关芯片的主要参数见表。第五章第五章 TMS320 x240 x的接口电路设计的接

3、口电路设计第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计DC/DCDC/DC芯片的主要参数芯片的主要参数 型型 号号功功 能能输入电输入电压压(V)(V)输出电压输出电压(V)(V)输入电流输入电流(mA)(mA)输出电流输出电流(mA)(mA)最大最大值值典型典型值值MAX877开关型升开关型升/降压降压1.8650.310.22240MAX777/778/779开关型升压开关型升压165/35/3或或3.3/3.3/可调可调0.310.22300MAX639/640/653开关型降压开关型降压411.

4、55/3.3/35/3.3/3可可调调0.020.01225MAX738A/744A开关型降压开关型降压616531.7750MAX878开关型升开关型升/降压降压1.863.3/30.310.22240MAX748开关型降压开关型降压3.3163.331.7750MAX651/649/652开关型降压开关型降压416.53.3/30.10.082000TPS7333Q开关型降压开关型降压53.3500第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 对于需同时产生和的电源,可采用图对于需同时产生和的电源,可采用图5-35-3所示的所示的TITI公司的公司的TPS767D3

5、18TPS767D318电路。该芯片属于线性降压型电路。该芯片属于线性降压型DC/DCDC/DC变换电路,由变换电路,由5V5V可同时产生两种不同的电压、或可同时产生两种不同的电压、或2.5V)2.5V),其最大输出电流,其最大输出电流1000mA1000mA,可同时驱动一片可同时驱动一片DSPDSP和少量外围电路。和少量外围电路。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 另外,在设计另外,在设计PCBPCB板时,对于模拟电源板时,对于模拟电源(VDD)(VDD)和数字电源和数字电源(VCC)(VCC)、模拟地、模拟地(AGND)(AGND)和数字地和数字地(DGN

6、D)(DGND)应分开走线,建议使用应分开走线,建议使用专门的电源和地线布线,且电源和地线要尽可能地宽,并且专门的电源和地线布线,且电源和地线要尽可能地宽,并且在主干线上要放置大小不等的滤波电容在主干线上要放置大小不等的滤波电容(50-100F)(50-100F),以滤除,以滤除多种不同频率的噪声。在电源和地线的支线上和器件附近,多种不同频率的噪声。在电源和地线的支线上和器件附近,也要安排一些小电容也要安排一些小电容(0.01-0.1F)(0.01-0.1F)。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 晶振电路晶振电路 DSPDSP所需的晶振一般有两种:有源晶振和无

7、源晶振。其中有所需的晶振一般有两种:有源晶振和无源晶振。其中有源晶振有四个引脚,无源晶振有两个引脚。源晶振有四个引脚,无源晶振有两个引脚。有源晶振按供电方式的不同又可分为有源晶振按供电方式的不同又可分为5V5V和两种。图示和两种。图示的接法为供电方式,使用供电晶振的主要优点是电路连接的接法为供电方式,使用供电晶振的主要优点是电路连接比较简单,可以直接连接到比较简单,可以直接连接到DSPDSP的的XTAL1XTAL1的引脚上的引脚上(DSP(DSP外围电压外围电压是是3.3V)3.3V)。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 采用采用5V5V供电方式的有源晶振时,

8、需在它的输出端进行供电方式的有源晶振时,需在它的输出端进行电平转换。有源晶振驱动能力较强,输出频率范围也较宽电平转换。有源晶振驱动能力较强,输出频率范围也较宽(1Hz-400MHz)(1Hz-400MHz),因此在设计,因此在设计DSPDSP系统时经常采用。系统时经常采用。使用无源晶振的优点是价格便宜,但它的驱动能力比较差,使用无源晶振的优点是价格便宜,但它的驱动能力比较差,一般不能提供多个器件共享,而且它可提供的频率范围也比较一般不能提供多个器件共享,而且它可提供的频率范围也比较小小(一般在一般在20kHz-60MHz)20kHz-60MHz)。图。图5-45-4所示的无源晶振所接的电容典所

9、示的无源晶振所接的电容典型值为型值为20-30pF20-30pF。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 锁相环电路锁相环电路 TMS320LF2407ATMS320LF2407A内部具有锁相环内部具有锁相环(PLL)(PLL)电路,可将一个较电路,可将一个较低的外部时钟在芯片内部实现倍频,这对于整个电路板的电低的外部时钟在芯片内部实现倍频,这对于整个电路板的电磁兼容性是很有好处的,因为外部只需使用较低频率的晶振,磁兼容性是很有好处的,因为外部只需使用较低频率的晶振,避免了外部电路的时钟干扰,同时也避免了高频时钟干扰电避免了外部电路的时钟干扰,同时也避免了高频时钟

10、干扰电路板上的其他电路。路板上的其他电路。TMS320LF2407A TMS320LF2407A的的PLLPLL模块使用外部滤波电路回路来抑制信模块使用外部滤波电路回路来抑制信号抖动和电磁干扰,使信号抖动和干扰影响最小。号抖动和电磁干扰,使信号抖动和干扰影响最小。11 1500pF0.68 FPLLFPLFF2 在设计在设计PCBPCB板时,所板时,所有连接有连接PLLPLL的导线必须尽的导线必须尽可能的短。可能的短。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计复位电路复位电路 TMS320LF2407ATMS320LF2407A内部带有上电复位电路,可以直接在内部带有

11、上电复位电路,可以直接在RSRS复位复位引脚外接一个上拉电阻即可,这对于简化外围电路、减少引脚外接一个上拉电阻即可,这对于简化外围电路、减少PCBPCB板板的尺寸是很有用处的。但是为了调试方便经常采用图示的手动的尺寸是很有用处的。但是为了调试方便经常采用图示的手动复位电路,在调试时可方便地进行手动复位。复位电路,在调试时可方便地进行手动复位。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 随着便携式数字电子产品的迅速发展,要求使用体积小、随着便携式数字电子产品的迅速发展,要求使用体积小、功耗低的器件来构成电路,因此,现在许多集成电路的工作电功耗低的器件来构成电路,因此,现

12、在许多集成电路的工作电压已经从压已经从5V5V降低到,但在许多场合仍在用降低到,但在许多场合仍在用5V5V供电的逻辑供电的逻辑器件,因此许多设计是器件,因此许多设计是5V5V和逻辑器件共存,而且不同的电源和逻辑器件共存,而且不同的电源电压在同一电压在同一PCBPCB中混用。随着更低电压标准的引入,混合电压中混用。随着更低电压标准的引入,混合电压的系统将会在很长时间内存在。的系统将会在很长时间内存在。TMS320LF2407ATMS320LF2407A等新一代等新一代DSPDSP芯片的芯片的I/OI/O工作电压是,因此,工作电压是,因此,其其I/OI/O电平也是。在设计电平也是。在设计DSPDS

13、P系统时,除了系统时,除了DSPDSP芯片外,必须设计芯片外,必须设计DSPDSP芯片与其他外围芯片的接口,如果外围芯片的工作电压也是,芯片与其他外围芯片的接口,如果外围芯片的工作电压也是,那么就可以直接连接。但是,由于现有的很多外围芯片的工作那么就可以直接连接。但是,由于现有的很多外围芯片的工作电压是电压是5V5V,因此就存在一个如何将芯片与这些,因此就存在一个如何将芯片与这些+5V+5V供电芯片的可供电芯片的可靠连接问题。靠连接问题。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 对于低电压对于低电压DSPDSP器件来讲,其引脚信号高低电平的门限值器件来讲,其引脚信号

14、高低电平的门限值与普通与普通TTLTTL门限相同,故门限相同,故DSPDSP的输出信号可以直接驱动的输出信号可以直接驱动5V5V外围外围器件的输入,不需附加电平转换电路;另外,由于器件的输入,不需附加电平转换电路;另外,由于DSPDSP引脚允引脚允许输入信号电压的范围是,不可以承受许输入信号电压的范围是,不可以承受5V5V的输入信号电压,的输入信号电压,因此,在因此,在DSPDSP与外围器件之间应进行电平转换。与外围器件之间应进行电平转换。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 74LVC24574LVC245的输入端可承受信号,其输出信号的电平为,与的输入端可承

15、受信号,其输出信号的电平为,与其功能类似的芯片还有其功能类似的芯片还有74LVC424574LVC4245、74LVC1624574LVC16245等。等。OE输输 入入功功 能能DIRDIRL LL L数据从数据从B B口到口到A A口传送口传送L LH H数据从数据从A A口到口到B B口传送口传送H HX X隔离状态隔离状态 除了上述电平转换方法外,还可采用双电压工作的除了上述电平转换方法外,还可采用双电压工作的CPLDCPLD可编程器件实现电平之间的转换。可编程器件实现电平之间的转换。对于对于CMOSCMOS电平的外围器件,必须采用专门的转换芯片。电平的外围器件,必须采用专门的转换芯片

16、。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 以上介绍的转换器件不但起到了电平转换作用,同时也起以上介绍的转换器件不但起到了电平转换作用,同时也起到了驱动的作用。对于传输速率较低的数字信号,也可以考虑到了驱动的作用。对于传输速率较低的数字信号,也可以考虑通过光电隔离的方法来实现。通过光电隔离的方法来实现。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 同其他的单片机应用系统一样,一个完整的同其他的单片机应用系统一样,一个完整的DSPDSP应用系统必应用系统必须具有仿真器的标准接口,须具有仿真器的标准接口,PCPC通过这个接口可以进行程序的调通过这

17、个接口可以进行程序的调试和下载。仿真器和试和下载。仿真器和JTAGJTAG的连线可以购买,用户只需清楚的连线可以购买,用户只需清楚JTAGJTAG接口的各个引脚的定义便可在应用板上设计自己的接口的各个引脚的定义便可在应用板上设计自己的JTAGJTAG接口。接口。需注意的是,需注意的是,JTAGJTAG接口接口引脚的定义顺序不同于一般引脚的定义顺序不同于一般的集成芯片引脚的逆时针顺的集成芯片引脚的逆时针顺序,而是从上到下、左右交序,而是从上到下、左右交替排列。替排列。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 JTAG JTAG接口与应用板中接口与应用板中DSPDSP芯

18、片连接的原理图芯片连接的原理图 如下:如下:1)1)要求安装要求安装仿真器的计算机仿真器的计算机与与DSPDSP应用系统可应用系统可靠接地;靠接地;2)2)禁止带电禁止带电插拔插拔JTAGJTAG接头;接头;3)3)正确的操作顺序是:先退出计算机系统的仿真窗口,正确的操作顺序是:先退出计算机系统的仿真窗口,然后再将然后再将DSPDSP应用板断电,否则可能出现仿真器不能正常运行应用板断电,否则可能出现仿真器不能正常运行的情况。的情况。注意以下几注意以下几点点 问题:问题:第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计串行串行D/AD/A接口接口 由于由于DSPDSP内部包含

19、有串行外设接口内部包含有串行外设接口SPISPI模块,且模块,且SPISPI的外的外部连线较少、速度较快,因此在应用系统中的部连线较少、速度较快,因此在应用系统中的SPISPI没有用作没有用作其他目的的情况下,可以配合具有其他目的的情况下,可以配合具有SPISPI接口的外部器件进行接口的外部器件进行D/AD/A转换。转换。目前,具有目前,具有SPISPI接口的外部器件较多,如接口的外部器件较多,如LEDLED驱动、驱动、A/DA/D转换、转换、D/AD/A转换等芯片,其中,转换等芯片,其中,MAX5121MAX5121就是适合于就是适合于SPISPI通通信的信的D/AD/A转换芯片转换芯片第五

20、章第五章 TMS320 x240 x的接口电路设计的接口电路设计并行并行D/AD/A接口接口 DSP DSP对并行对并行DACDAC芯片的访问形式是只写不读。以下介绍芯片的访问形式是只写不读。以下介绍DSPDSP与与AD7837AD7837的接口方法。的接口方法。AD7837AD7837为为1212位双通道位双通道(A(A和和B)B)的的DACDAC,其数据线只有,其数据线只有8 8位,低位,低8 8位和高位和高4 4位数据线复用,对于每个位数据线复用,对于每个DACDAC,完成一次转换操作的过,完成一次转换操作的过程是:先将待转换的低程是:先将待转换的低8 8位数据送到位数据送到AD7837

21、AD7837,然后,再写高,然后,再写高4 4位,位,最后,通过最后,通过I/OI/O引脚输出一个转换锁存信号到引脚输出一个转换锁存信号到AD7837AD7837的引脚,从的引脚,从而启动而启动D/AD/A转换。地址信号转换。地址信号A0A0和和A1A1用来选择用来选择AD7837AD7837中的中的A A或或B B转换转换器。器。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 SRAMSRAM是是DSPDSP最常用的外围存储设备,它具有接口简单、读写最常用的外围存储设备,它具有接口简单、读写速度快等优点。常用的速度快等优点。常用的SRAMSRAM有有IDT7128IDT

22、7128、CY7C1024CY7C1024、CY7C1021CY7C1021等。等。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 CY7C1021 CY7C1021是是1616位高性能位高性能CMOSCMOS静态静态RAMRAM,对其基本操作有两,对其基本操作有两种情况:种情况:1)1)当输入信号当输入信号 和和 同时为低电平时,选通该芯片的同时为低电平时,选通该芯片的写功能。当低字节使能位写功能。当低字节使能位 变低时,选通低变低时,选通低8 8位数据端口,位数据端口,即来自即来自I/OI/O引脚引脚I/O8-I/O1I/O8-I/O1的数据被写入到地址引脚的数据被写

23、入到地址引脚A15-A0A15-A0所所指定的位置;当指定的位置;当 变低时,选通高变低时,选通高8 8位数据端口,即来自位数据端口,即来自I/OI/O引脚引脚I/O16-I/O9I/O16-I/O9的数据被写入到地址引脚的数据被写入到地址引脚A15-0A15-0所指定的所指定的位置。位置。CEWEBLEBHE 2)2)当输入信号当输入信号 和和 为低电平、同时迫使为低电平、同时迫使 变高电变高电平时,选通该芯片的读功能。当低字节使能位平时,选通该芯片的读功能。当低字节使能位 变低时,变低时,存储器中指定位置中的数据将出现在存储器中指定位置中的数据将出现在I/OI/O引脚引脚I/O8-I/O1

24、I/O8-I/O1上;上;如果高字节使能位如果高字节使能位 变低时,指定的高变低时,指定的高8 8位数据出现在位数据出现在I/OI/O引脚引脚I/O16-I/O9I/O16-I/O9上。上。CEOEWEBLEBHE第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计CY7C1021CY7C1021功能表功能表 CEOEWEBLEBHE选择,输出禁止选择,输出禁止高阻高阻高阻高阻H HH HL L选择,输出禁止选择,输出禁止高阻高阻高阻高阻H HH HL L写高写高8 8位位数据输入数据输入高阻高阻L LH H写低写低8 8位位高阻高阻数据输入数据输入H HL L写所有位写所有位

25、数据输入数据输入数据输入数据输入L LL LL LL L读高读高8 8位位数据输出数据输出高阻高阻L LH H读低读低8 8位位高阻高阻数据输出数据输出H HL L读所有位读所有位数据输出数据输出数据输出数据输出L LL LH HL LL L掉电掉电高阻高阻高阻高阻H H模式模式I/O16-I/O9I/O16-I/O9I/O8-I/O1I/O8-I/O1第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 图示给出了图示给出了CY7C1021CY7C1021与与DSPDSP的一种接口电路。从图中可以看的一种接口电路。从图中可以看出,每次读、写操作的是整个出,每次读、写操作的是整

26、个1616位数据,不分高低字节。通过译位数据,不分高低字节。通过译码电路将码电路将64KB64KB的的SRAMSRAM空间分为两个地址空间空间分为两个地址空间(由地址的最高位由地址的最高位A15A15的值决定的值决定),即数据区和程序区,具体区间的划分由用户的译码,即数据区和程序区,具体区间的划分由用户的译码方法决定,利用方法决定,利用DSPDSP可方便地对可方便地对CY7C1021CY7C1021进行读写操作。进行读写操作。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 本节以本节以3 3线线8 8线译

27、码器为例,介绍基于线译码器为例,介绍基于DSPDSP的点对点控制实的点对点控制实现方法。现方法。输入信号输入信号输输 出出 信信 号号IOPE3IOPE3IOPE2IOPE2IOPE1IOPE1IOPB7IOPB7IOPB6IOPB6IOPB5IOPB5IOPB4IOPB4IOPB3IOPB3IOPB2IOPB2IOPB1IOPB1IOPB0IOPB00 00 00 00 00 00 00 00 00 00 01 10 00 01 10 00 00 00 00 00 01 10 00 01 10 00 00 00 00 00 01 10 00 00 01 11 10 00 00 00 01 1

28、0 00 00 01 10 00 00 00 00 01 10 00 00 00 01 10 01 10 00 01 10 00 00 00 00 01 11 10 00 01 10 00 00 00 00 00 01 11 11 11 10 00 00 00 00 00 00 0第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计设计思路设计思路 1 1TMS320LF2407ATMS320LF2407A的的I/OI/O引脚处理引脚处理 本设计采用本设计采用TMS320LF2407ATMS320LF2407A来实现。由于本设计要用到的来实现。由于本设计要用到的输入、输出引脚较

29、多,而输入、输出引脚较多,而TMS320LF2407ATMS320LF2407A芯片中独立使用的芯片中独立使用的I/OI/O引脚较少,大多数的引脚较少,大多数的I/OI/O引脚都是和特殊功能的引脚复用。因此引脚都是和特殊功能的引脚复用。因此在初始化程序中要先把选定的引脚设置成通用的在初始化程序中要先把选定的引脚设置成通用的I/OI/O功能。功能。另外,为防止外界信号的干扰,译码器的输入引脚应接上另外,为防止外界信号的干扰,译码器的输入引脚应接上拉电阻。为保证有一个稳定的输出和防止外界的干扰,应采用拉电阻。为保证有一个稳定的输出和防止外界的干扰,应采用锁存器把输出的电平进行锁定。锁存器把输出的电

30、平进行锁定。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计2 2硬件电路硬件电路 3 3输入信号用输入信号用3 3个按键开关来实现,且均接的上拉电阻。当按个按键开关来实现,且均接的上拉电阻。当按键未按下时,键未按下时,IOPEIOPE输入高电平,当按键按下时,输入高电平,当按键按下时,IOPEIOPE输入变为低输入变为低电平,通过电平,通过3 3个按键的不同状态组合,即可实现译码器的个按键的不同状态组合,即可实现译码器的8 8种不同种不同状态输入。译码器的输出用状态输入。译码器的输出用8 8个发光二极管来指示,对于某种按个发光二极管来指示,对于某种按键的组合输入,只有一个

31、相应的发光二极键的组合输入,只有一个相应的发光二极管管点亮,表示输出一个点亮,表示输出一个控制信号,图中的控制信号,图中的1k1k电阻为发光二极管的限流电阻。电阻为发光二极管的限流电阻。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 SN74HC574N SN74HC574N为为8D8D锁存器锁存器,用于输出信号的锁存和驱动用于输出信号的锁存和驱动2407A2407A的复位信号的复位信号 经经74HC0474HC04反相后和反相后和SN74HC574NSN74HC574N使能端使能端 相接,当相接,当2407A2407A复位时,复位时,为低电平,为低电平,为高电平,为高电

32、平,SN74HC574NSN74HC574N无输出;无输出;当当TMS320LF2407ATMS320LF2407A正常工作时,正常工作时,为高电平,为高电平,为低电平,为低电平,SN74HC574NSN74HC574N正常输出。用正常输出。用TMS320LF2407ATMS320LF2407A的的IOPC6IOPC6引脚作为引脚作为SN74HC574NSN74HC574N的的CLKCLK信号,信号,IOPC6IOPC6通常应输出低电平,当通常应输出低电平,当IOPE6IOPE6变为变为高电平时,高电平时,SN74HC574NSN74HC574N输出正常译码信号。输出正常译码信号。OERSRS

33、OEOERS第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计3 3编程时应注意的问题编程时应注意的问题 一般而言,一般而言,DSPDSP程序包括主程序、系统初始化程序和存程序包括主程序、系统初始化程序和存储器配置文件。如果系统没有正确初始化或存储器配置不正储器配置文件。如果系统没有正确初始化或存储器配置不正确,那么,即使主程序正确,系统也不能正确运行。确,那么,即使主程序正确,系统也不能正确运行。DSPDSP包包含很多存储器映射的含很多存储器映射的CPUCPU寄存器和外设寄存器,在编程时经寄存器和外设寄存器,在编程时经常要对它们进行配置,因此需先编写一个头文件,把这些寄常要

34、对它们进行配置,因此需先编写一个头文件,把这些寄存器的名称和数据存储空间对应起来,然后再使用。存器的名称和数据存储空间对应起来,然后再使用。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计参考程序参考程序1 1头文件头文件参见附录参见附录C C。2 2汇编语言文件汇编语言文件(.ASM)(.ASM).include “F2407REGS.H”;.include “F2407REGS.H”;引用头文件引用头文件 .def _c_int0.def _c_int0 .data ;.data ;定义程序的数据段定义程序的数据段 input_temp .word 00h ;input

35、_temp .word 00h ;输入暂存寄存器输入暂存寄存器 output_flag .word 00h ;output_flag .word 00h ;按键值暂存寄存器按键值暂存寄存器1 1 flag_temp .word 00h ;flag_temp .word 00h ;按键值暂存寄存器按键值暂存寄存器2 2 io_decode_flag .word 00h ;io_decode_flag .word 00h ;输出译码暂存寄存器输出译码暂存寄存器第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计;(1);(1)主程序主程序 .text ;.text ;定义程序段定义

36、程序段_c_int0:_c_int0:NOP NOP CALL system_init ;CALL system_init ;调系统初始化程序调系统初始化程序 CALL ioport_init ;CALL ioport_init ;调调I/OI/O口初始化程序口初始化程序 NOPNOP Decode_3_8_loop:Decode_3_8_loop:CALL read_button ;CALL read_button ;调按键读入程序调按键读入程序 LDP#4 ;DPLDP#4 ;DP指针指向数据存储指针指向数据存储B0B0区区 SPLK#0001h,io_decode_flag ;SPLK#

37、0001h,io_decode_flag ;给输出译码赋初值给输出译码赋初值,;表示表示DS0DS0亮亮 LT output_flag ;output_flagLT output_flag ;output_flag中的值加载到中的值加载到TREGTREG中中 LACT io_decode_flag ;io_decode_flagLACT io_decode_flag ;io_decode_flag中的值左移中的值左移 SACL io_decode_flag ;SACL io_decode_flag ;左移的位数由左移的位数由TREGTREG中的低中的低4 4位决定位决定 LDP#DP_PF2

38、;DPLDP#DP_PF2 ;DP指针指向指针指向7080h-70FFh7080h-70FFh第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 LACL PCDATDIR ;PCDATDIRLACL PCDATDIR ;PCDATDIR中值加载到中值加载到ACCACC OR#04040h ;IOPC6 OR#04040h ;IOPC6设置为输出方式设置为输出方式,输出值为高电平输出值为高电平 SACL PCDATDIR ;IOPC6SACL PCDATDIR ;IOPC6输出高电平输出高电平,使使74HC54774HC547的的CLKCLK为高为高 LDP#4 ;DPLDP

39、#4 ;DP指针指向数据存储指针指向数据存储B0B0区区(200h-27Fh)(200h-27Fh)LACL io_decode_flag ;io_decode_flag LACL io_decode_flag ;io_decode_flag的值加到的值加到ACCACC LDP#DP_PF2 ;DP LDP#DP_PF2 ;DP指针指向指针指向7080h-70FFh7080h-70FFh SACL PBDATDIR ;SACL PBDATDIR ;通过通过IOPB0-7IOPB0-7送出译码控制信号送出译码控制信号 LACL PCDATDIR ;PCDATDIRLACL PCDATDIR ;P

40、CDATDIR中值加载到中值加载到ACCACC AND#0FFBFh ;AND#0FFBFh ;保持保持IOPC6IOPC6为输出方式为输出方式,输出低电平输出低电平,;关闭关闭74HC57474HC574 SACL PCDATDIR SACL PCDATDIR CALL cy_delay ;CALL cy_delay ;调延时程序调延时程序 LDP#4 ;DPLDP#4 ;DP指针指向数据存储指针指向数据存储B0B0区区(200h-27Fh)(200h-27Fh)SPLK#0h,io_decode_flag ;SPLK#0h,io_decode_flag ;对程序中的各种变量均清零对程序中的

41、各种变量均清零 SPLK#0h,output_flag ;SPLK#0h,output_flag ;用来保证本次结果不会影响用来保证本次结果不会影响 ;到下次操作到下次操作第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 SPLK#0h,flag_temp SPLK#0h,flag_temp SPLK#0h,input_flag SPLK#0h,input_flag NOP NOP B decode_3_8_loop ;B decode_3_8_loop ;返回到程序主体返回到程序主体;(2);(2)系统初始化程序系统初始化程序system_init:system_init

42、:SETC INTM ;SETC INTM ;禁止中断禁止中断 CLRC OVM ;ACCCLRC OVM ;ACC中的结果正常溢出中的结果正常溢出 CLRC SXM ;CLRC SXM ;抑制符号扩展抑制符号扩展 CLRC CNF ;B0CLRC CNF ;B0区被配置为数据空间区被配置为数据空间 LDP#DP_PF1 ;DPLDP#DP_PF1 ;DP指针指向指针指向7000h-707Fh7000h-707Fh SPLK#081FEh,SCSR1;CLKOUT SPLK#081FEh,SCSR1;CLKOUT输出输出CPUCPU时钟,时钟,PLL=4PLL=4 SPLK#0E8h,WDCR

43、 ;WDCR6 SPLK#0E8h,WDCR ;WDCR6置置1,1,表示禁止看门狗表示禁止看门狗,;WDCR3-5=101 ;WDCR3-5=101 LDP#0 ;DP LDP#0 ;DP指向数据存储器的页指向数据存储器的页0(0000h-007Fh)0(0000h-007Fh)SPLK#0000h,IMR ;SPLK#0000h,IMR ;屏蔽所有的屏蔽所有的CPUCPU中断中断第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 SPLK#0FFFFh,IFR ;SPLK#0FFFFh,IFR ;清除所有的清除所有的CPUCPU中断中断 RETRET;(3)I/O;(3)

44、I/O端口初始化程序端口初始化程序ioport_init:ioport_init:LDP#DP_PF2 ;DP LDP#DP_PF2 ;DP指向指向7080h-70FFh7080h-70FFh LACL MCRA ;IOPB0-7 LACL MCRA ;IOPB0-7配置为通用配置为通用I/OI/O口口 AND#00FFhAND#00FFh SACL MCRA SACL MCRA LACL MCRB ;IOPC6 LACL MCRB ;IOPC6配置为通用配置为通用I/OI/O口口 AND#0FFBFhAND#0FFBFh SACL MCRBSACL MCRB LACL MCRC ;IOPE1

45、-3 LACL MCRC ;IOPE1-3配置为通用配置为通用I/OI/O口口 AND#0FFF1hAND#0FFF1h SACL MCRC SACL MCRC LACL PBDATDIR ;IOPB0-7 LACL PBDATDIR ;IOPB0-7配置为输出方式配置为输出方式第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 OR#0FF00h OR#0FF00h SACL PBDATDIR SACL PBDATDIR LACL PCDATDIR ;IOPC6LACL PCDATDIR ;IOPC6配置为输出方式配置为输出方式 OR#04000hOR#04000h SAC

46、L PCDATDIR SACL PCDATDIR LACL PEDATDIR ;IOPE1-3 LACL PEDATDIR ;IOPE1-3配置为输入方式配置为输入方式 AND#0F1FFh AND#0F1FFh SACL PEDATDIR SACL PEDATDIR RET RET;(4);(4)读按键程序读按键程序read_button:read_button:CALL cy_read ;CALL cy_read ;第一次读输入按键值第一次读输入按键值 LDP#4 ;DPLDP#4 ;DP指向数据存储器指向数据存储器B0B0区区 LACL output_flag ;LACL output_

47、flag ;第一次读的按键值存入第一次读的按键值存入flag_tempflag_temp SACL flag_temp ;SACL flag_temp ;用来和第二次读的按键值相比较用来和第二次读的按键值相比较 CALL cy_delay ;CALL cy_delay ;延迟延迟50ms50ms,用于消除按键抖动,用于消除按键抖动第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 CALL cy_read ;CALL cy_read ;第二次读输入按键的状态第二次读输入按键的状态 LDP#4LDP#4 LACL output_flag LACL output_flag SUB

48、 flag_temp ;SUB flag_temp ;第二次读按键值和第一次相比较第二次读按键值和第一次相比较 BCND right_read,EQ ;BCND right_read,EQ ;两者相等转到两者相等转到right_readright_read SPLK#0,output_flag ;SPLK#0,output_flag ;若两次不等,需重新读取,若两次不等,需重新读取,;同时把同时把output_flagoutput_flag清清0 0right_read:right_read:NOP NOP RET RETcy_read:cy_read:LDP#DP_PF2 ;DP LDP#D

49、P_PF2 ;DP指向指向7080h-70FFh7080h-70FFh LACL PEDATDIR ;PEDATDIR LACL PEDATDIR ;PEDATDIR加载到加载到ACC,ACC,读读IOPE1-3IOPE1-3 SFR ;ACC SFR ;ACC右移右移1 1位位,即移到即移到 ;PEDATDIF3-1 ;PEDATDIF3-1到到PEDATDIR2-0PEDATDIR2-0第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 AND#0007h ;AND#0007h ;提取提取PEDATDIR20PEDATDIR20 LDP#4 LDP#4 SACL inpu

50、t_temp ;PEDATDIR20 SACL input_temp ;PEDATDIR20存到存到input_tempinput_temp LACL#7 ;LACL#7 ;无按键按下时无按键按下时,IOPE13,IOPE13为高电平为高电平 SUB input_temp ;SUB input_temp ;减减PEDATDIR20,PEDATDIR20,以得相应的译码值以得相应的译码值 SACL output_flag ;SACL output_flag ;译码值存到译码值存到output_flagoutput_flag RET RETCy_delay:Cy_delay:LACL#2400 ;

51、LACL#2400 ;本例采用本例采用6MHz6MHz时钟,时钟,PLL=4,PLL=4,故系统时故系统时 ;钟为钟为24MHz24MHz Cy_delay1:;Cy_delay1:;此处采用循环等待的方法实现延时此处采用循环等待的方法实现延时 SUB#1 ;2400SUB#1 ;2400500/(24500/(24103)=50ms103)=50ms RPT#499 ;RPT#499 ;循环循环500500次次 NOPNOP BCND cy_delay1,NEQ ;ACC BCND cy_delay1,NEQ ;ACC不为不为0 0时返回时返回cy_delay1cy_delay1 RET R

52、ET .END .END第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 MEMORY ;MEMORY ;声明可以被使用的存储器范围声明可以被使用的存储器范围 PAGE0:;PAGE0:;程序空间程序空间 VECS:origin=0000h,length=0040h ;VECS:origin=0000h,length=0040h ;中断向量存储空间中断向量存储空间 PVECS:origin=0044h,length=0100h ;PVECS:origin=0044h,length=0100h ;外设中断子向量外设中断子向量 PM:origin=0150h,length=7E

53、B0h ;PM:origin=0150h,length=7EB0h ;片内片内FlashFlash存储空间存储空间PAGE1:;PAGE1:;数据空间数据空间 BLOCK_B2:origin=0060h,length=0020h;BLOCK_B2:origin=0060h,length=0020h;块块B2B2 BLOCK_B0:origin=0200h,length=0100h;BLOCK_B0:origin=0200h,length=0100h;块块B0,B0,若若CNF=0,CNF=0,;则配为则配为DARAMDARAM BLOCK_B1:origin=0300h,length=0100

54、h;BLOCK_B1:origin=0300h,length=0100h;块块B1,B1,若正确配若正确配 ;置置SCSR2,SCSR2,则为数据空间中则为数据空间中2K2K的的SARAMSARAM SARAM:origin=0800h,length=0800h SARAM:origin=0800h,length=0800h EX_DM:origin=8000h,length=8000h ;EX_DM:origin=8000h,length=8000h ;片外数据片外数据RAMRAM 3 3系统配置命令文件系统配置命令文件(.CMD)(.CMD)第五章第五章 TMS320 x240 x的接口电

55、路设计的接口电路设计 SECTIONS ;SECTIONS ;描述在存储器上如何分配程序和数据段描述在存储器上如何分配程序和数据段 .text:PM PAGE 0 ;.text:PM PAGE 0 ;程序段程序段 .data:BLOCK_B0 PAGE 1 ;.data:BLOCK_B0 PAGE 1 ;数据段数据段 第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 注意问题注意问题 1 1TMS320LF2407ATMS320LF2407A芯片内涉及的寄存器较多,对片内各个寄存芯片内涉及的寄存器较多,对片内各个寄存器的定义很重要。编写程序时,一定要通过器的定义很重要。编写

56、程序时,一定要通过.include.include汇编伪指汇编伪指令把头文件包括进来。令把头文件包括进来。2 2用汇编语言编写程序时也要注意模块化的设计方法,以使用汇编语言编写程序时也要注意模块化的设计方法,以使程序结构清晰、便于理解。对于各个已编写好的子程序,可在程序结构清晰、便于理解。对于各个已编写好的子程序,可在主程序中通过主程序中通过CALLCALL等调用汇编指令来调用。等调用汇编指令来调用。3 3编写系统程序时,要注重系统初始化程序的编写,否则程编写系统程序时,要注重系统初始化程序的编写,否则程序运行时将会得到不可预测的结果。虽然各个系统程序的初始序运行时将会得到不可预测的结果。虽然

57、各个系统程序的初始化不尽相同,但也有一定的规律可遵循,在具体编写时应根据化不尽相同,但也有一定的规律可遵循,在具体编写时应根据系统的具体要求来进行。系统的具体要求来进行。4 4为保证输出信号在规定的时间内能保持稳定,一般需设为保证输出信号在规定的时间内能保持稳定,一般需设置锁存器。置锁存器。第五章第五章 TMS320 x240 x的接口电路设计的接口电路设计 5 5对于某些需按键输入的电路,要注意按键抖动的消除。对于某些需按键输入的电路,要注意按键抖动的消除。6 6一个一个DSPDSP程序离不开系统配置命令文件程序离不开系统配置命令文件.CMD.CMD,该文件实现,该文件实现对程序存储空间和数据存储空间的分配。由于对程序存储空间和数据存储空间的分配。由于DSPDSP的程序空间的程序空间和数据空间是分开的,因此在和数据空间是分开的,因此在PAGE0PAGE0和和PAGE1PAGE1中的地址可以重叠,中的地址可以重叠,但在物理存储器上一定要分离,在同一页存储空间上地址不能但在物理存储器上一定要分离,在同一页存储空间上地址不能重叠。重叠。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!