DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx

上传人:b****2 文档编号:4205479 上传时间:2023-05-02 格式:DOCX 页数:11 大小:279.63KB
下载 相关 举报
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第1页
第1页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第2页
第2页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第3页
第3页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第4页
第4页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第5页
第5页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第6页
第6页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第7页
第7页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第8页
第8页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第9页
第9页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第10页
第10页 / 共11页
DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx

《DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx(11页珍藏版)》请在冰点文库上搜索。

DSPMAX548A 与TMS320LF2407 的SPI通信系统设计Word格式文档下载.docx

**************

2015年5月19日

摘要

TI公司的TMS320LF2407型DSP微控制器内嵌的同步串行口(SPI)支持CPU与其它使用标准格式的同步外设之间的数字通讯,通过MAX548A可以方便地进行DSP之间或与PC机之间的同步通信。

串行外设接口(SPI)是一个高速同步串行输入/输出(I/O)端口,常用于DSP控制器和外部器件或其它控制器间的通讯。

本设计正是通过TMS320LF2407所带有的SPI模块进行DSP的数据传输通信。

此实例电路结构简单易懂,非常适合刚接触DSP的初学者使用,具有很好的参考价值。

本设计还介绍了MAX548A的基本工作原理及其功能,设计了其与TMS320LF2407的同步串行外设接口(SPI)的通信方案,给出了系统的硬件接口和软件设计.

关键词:

MAX548A;

TMS320LF2407;

SPI

第一章MAX548A的介绍

1.0MAX548A的简介

MAX548A是美信公司生产的高速串行数模转换芯片,其最高转换速度

可达10MHz,可用于需要高速模拟量输出的场合,兼容SPI,QSPI,MI2CROWIRE接口标准,将其与TMS320LF2407所带的串行外设接口(SPI)进行连接,利用DSP的高速及可编程特性,实现高速的数模转换,与实现同样功能的并行数模转换相比,可以减少系统的硬件开销,减小系统体积.本文以TMS320LF2407和MAX548A的连接为例,介绍了SPI与D/A芯片的通信设计方法。

1.1MAX548A的特点

MAX548A是8位电压型2路低功耗模数转换芯片,3线输入,兼容SPI,QSPI,MICROWIRE接口标准.它具有如下特点:

(1)宽电压范围:

工作电压从+2.5V到+5.5V;

(2)低功耗:

每个D/A通道在VDD=+2.5V时典型工作电流为75μA;

(3)具有睡眠模式,内部R-2R梯形网络从电源断开,参考输入电流减小到1μA;

(4)灵活的工作方式:

允许每个D/A通道单独断开,输入寄存器和DAC寄存器可

以单独更新,也可以同时更新;

(5)上电复位,清所有寄存器为零;

(6)10MHz时钟频率,三线串输入,满足SPI/QSPI,MICROWIRE接口标准;

1.2MAX548A的外部特性和内部结构

图1

外部引脚如图1所示:

其引脚功能见表1:

其内部结构如图2所示:

  其内部由输入移位寄存器及控制逻辑、2个DAC输入寄存器、2个DAC寄存器、2个R-2R梯形解码电阻网络组成.输入移位寄存器及控制逻辑的功能是接受串行输入的2进制数,并实现DAC输入寄存器、DAC寄存器数据的加载及更新,可以同时控制2个D/A通道,也可以对每个通道单独进行控制.每个通道的8位数字量经过DAC输入寄存器、DAC寄存器两级缓冲,直接到R-2R梯形解码电阻网络解码输出模拟量,因此MAX548A可工作于双缓冲输入方式,但输出无缓冲,换句话说,数模转换在正常模式下,只要更新DAC寄存器的内容,输出模拟量就会随之改变.在睡眠模式下,内部R-2R梯形网络从电源断开,因此此时模拟量无法输出,但这并不影响对DAC输入寄存器、DAC寄存器的操作。

1.3 

工作原理及操作方式

对DAC输入寄存器、DAC寄存器的控制,包括如对A、B通道的寻址(即

确定相应操作通道的相应寄存器)、相应寄存器值的更新、工作于正常模式或是睡眠模式等,是通过输入移位寄存器的内容来完成的,它是16位的二进制数,包含8位控制位,8位数据位,其格式及各位的功能如表2所示:

图3是MAX548的工作时序图:

在CS为低时,输入移位寄存器在串行时钟SCLK的上升沿接受从DIN输入的串行数据.其中UB1首先移入,D0最后移入.传输的数据可以是16位的字,也可以是2个字节(之间有停顿),当16位数据输入移位寄存器后,CS的上升沿对DAC编程,可同时或单独的加载输入寄存器而不更新DAC寄存器,这样可以允许每个DAC寄存器用不同的数值同时更新,LDAC独立于CS,可用于不同时更新DAC寄存器的值的情况,当C1=1,可设置1个或2个DAC寄存器在LDAC的下降沿或是CS上升沿更新。

根据不同控制位的取值不同,可以分别形成不同的指令,表3列出了部分指令,其他指令可依控制位的不同类推。

第二章MAX548A与TMS320LF2407的SPI接口应用

2.0SPI接口的主要特点

TMS320LF2407是DSP控制器24X系列产品之一,它具有处理速度快,外设集成度高等优点,为多种用途的产品提供了经济的可编程方案,其同步串行外设接口主要特点有:

(1)4个输入输出口,即SPISIMO,SPISOMI,SPISTE,SPICLK;

(2)主动和从动2种工作方式;

(3)125种可编程的波特率;

(4)发送和接收可同时操作;

(5)发送和接收可采用中断或查询方式来完成;

(6)1~16个数据位.

与接收和发送有关的主要寄存器包括串行外设接口配置控制寄存器(SPICCR)、串行外设接口操作控制寄存器(SPICTL)、串行外设接口状态寄存器(SPISTS)、串行外设接口波特率寄存器(SPISTS)、串行外设接口串行接收缓冲寄存器(SPIRXBUF)、串行外设接口串行发送缓冲寄存器(SPITXBUF)、串行外设接口串行数据寄存器(SP2IDAT).发送和接收数据时的操作方式和过程与这些寄存器有关。

2.1 

硬件电路

利用TMS320LF2407的SPI接口与MAX548A构成DAC电路如图4所示.图中SPI工作在主动工作方式.MAX548A的DIN接到SPI的SPISIMO,由于DIN在SCLK的上升沿接收数据,因此程序中必须通过设定SPICCR,使SPI在上升沿输出数据;

MAX548A的SCLK接到SPI的SPICLK,SPICLK的频率可通过软件编程得到,由于SCLK的最高频率可达10MHz,这里利用设定SPIBRR来设定SPICLK频率为10MHz;

MAX548A的CS接到SPI的SPISTE,通过主动工作方式下,启动数据输出使之输出为低,完成对MAX548A的片选.因此,该DAC电路基本工作过程为:

在主动工作方式下,启动数据传输时,SPISTE(CS)变低,16位数据以SPICLK(SCLK)频率输入MAX548A的输入移位寄存器,当16位数据传输完成后,一次数据传输结束,SPISTE(CS)变高,在SPISTE(CS)的上升沿,执行MAX548A的指令,完成对MAX548A内部寄存器的操作及控制,如此循环,完成全部数字量的转换.由于MAX548有上电复位清零功能,因此常规的DAC电路的初始化(送模拟量0清所有寄存器)这里并不需要。

2.2 

软件设计

假设系统初始化时已设定系统时钟频率为40MHz,而SPICLK频率为10MHz,因此,这里取SPIBRR=0;

另外,在初始化时,需通过设定MCRB,设定通用引脚为SPI功能引脚;

通过SPICCR设定数据传输时刻和数据长度,等.下面是通过MAX548A的A口输出正弦波形的程序,包含对SPI各个控制寄存器的配置及正弦波的产生程序:

#include“register.h”#include“math.h”#include“stdio.h”intvout;

//*********************系统初始化子程序********************

intinitial()

{

 

asm(“setcINTM”);

//屏蔽中断 

WSGR=0X00;

//禁止所有的等待状态

asm(“CLRCSXM”);

asm(“CLRCOVM”);

asm(“CLRCCNF”);

//B0被配置为数据空间

3SCSR1=0X00FE;

3WDCR=0X0E8;

//不使用看门狗

}

//**************SPI模块初始化及波形产生********************

main

intAinitial();

MCRB=0X003C;

//设置通用引脚为SPI功能的引脚

SPICCR&

=0X000F;

//16位数据长度,上升沿发送数据

SPICTL=0X0006;

//使能主动模式,允许发送SPIBRR=0X0000;

SPICCR|=0X0080;

//使SPI退出复位状态

SPITXBUF=0X0B80;

while((SPISTS&

0X40)==0X00)

A=SPITXBUF;

}

voidSPIADCSIN()

unsignedintV0=0X0B80;

unsignedintTEMP

inti;

next:

i=0;

while(i<

=360)

{

∥******************角度最大为360°

************************

vout=V0+1283sin(3.141593i/180);

∥计算每10°

的正弦值

SPITXBUF=vout

TEMP=SPITXBUF;

i=i+2;

∥角度+2

gotonext;

∥重复输出正弦波

第三章结论

本文利用双通道8位串行D/A芯片MAX548A,设计其与TMS320LF2407的SPI接口电路,结构简单,编程方便,节省电路板空间,并能节约成本,具有较高的实用价值。

第四章参考资料

[1] 

TexasInstrumentsCorporation.TMS320C20XUser’sG,1999.

[2] 

刘和平.TMS320LF240XDSPC语言开发应用[M].北京:

北京航空航天大学出版

社,2003.

[3] 

MaximInc.Dual,Serial,Voltage-OutputDACsinaμMAXPackage.www.maxim-

ic.com.cn,1999

[4]云南大学学报(自然科学版),2005,27(5A):

278~282CN53-1045/N 

ISSN0258-7971JournalofYunnanUniversity

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 艺术

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2