DSPMAX548A与TMS320LF2407的SPI通信系统设计精.docx

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

DSPMAX548A与TMS320LF2407的SPI通信系统设计精.docx

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

DSPMAX548A与TMS320LF2407的SPI通信系统设计精.docx

DSPMAX548A与TMS320LF2407的SPI通信系统设计精

湖南科技大学

信息与电气工程学院

《DSP原理及应用》

题目:

MAX548A与TMS320LF2407的SPI通信系统设计

专业:

自动化

班级:

一班

姓名:

学号:

指导教师:

谢道文

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的介绍4

1.0MAX548A的简介4

1.1MAX548A的特点4

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

1.3 工作原理及操作方式6

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

2.0SPI接口的主要特点8

2.1 硬件电路8

2.2 软件设计9

第三章结论10

第四章参考资料10

第一章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上电复位,清所有寄存器为零;

(610MHz时钟频率,三线串输入,满足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系列产品之一,它具有处理速度快,外设集成度高等优点,为多种用途的产品提供了经济的可编程方案,其同步串行外设接口主要特点有:

(14个输入输出口,即SPISIMO,SPISOMI,SPISTE,SPICLK;

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

(3125种可编程的波特率;

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

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

(61~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

SPITXBUF=0X0B80;

while((SPISTS&0X40==0X00

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