15440|10

14

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

【请教】msp430中的spi设置 [复制链接]

对于spi进行下列设置,能够正确发送uclk和simo的波形 #include <msp430x14x.h>

//unsigned char Data[6];

unsigned char flag = 0;

void Init_spi(void);

void main(void)

{ unsigned char j;

WDTCTL = WDTPW + WDTHOLD;

Init_spi();

_EINT();

while(1)

 {TXBUF1 = 0x51;

 for(j=100;j>0;j--);

}

}

void Init_spi(void)

{ UCTL1 |= SWRST;

UCTL1 = CHAR+SYNC+MM;//char=1,8bit,sync=1,spi mode,mm=1,master

UTCTL1 = STC+SSEL1+CKPH+CKPL;//stc,3pin;ssel1=1,master,ckph=1,uclk is delay,CKPL=1,上升沿跳变

UBR01 = 0x02;

UBR11 = 0x00;

UMCTL1 = 0;

ME2 = USPIE1;

UCTL1 &= ~SWRST;

P5SEL |=0x0F;

P5DIR = 0x0A;

IE2 |=URXIE1; }

但当把其中的

 UTCTL1 = STC+SSEL1+CKPH+CKPL;

改为 UTCTL1 = SSEL1+CKPH+CKPL;

则不能正确发送波形

查看了一下手册,

手册中说STC只是决定了3pin还是4pin 不知道为什么原因?

请教各位

[ 本帖最后由 wwj0102 于 2011-7-8 17:14 编辑 ]

最新回复

恩,多谢。  详情 回复 发表于 2011-8-18 15:53
 
点赞 关注(1)

回复
举报

14

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
自己顶一下
 
 

回复

2751

帖子

0

TA的资源

裸片初长成(初级)

板凳
 

原帖由 wwj0102 于 2011-7-8 16:53 发表 对于spi进行下列设置,能够正确发送uclk和simo的波形 #include //unsigned char Data[6]; unsigned char flag = 0; void Init_spi(void); void main(void) { unsigned char j; WDTCTL = W ...

 

莫非是3线spi vs 4线spi?

SPI以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(用于单向传输时,也就是半双工方式)。

 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

4
 
谢谢楼上

但是我就只是把STC去掉,就不能正确发送波形了
(在加上STC的情况下,是能够正确发送波形的)

能不能再讲解一下
 
 
 

回复

2751

帖子

0

TA的资源

裸片初长成(初级)

5
 

原帖由 wwj0102 于 2011-7-8 17:36 发表 谢谢楼上 但是我就只是把STC去掉,就不能正确发送波形了(在加上STC的情况下,是能够正确发送波形的) 能不能再讲解一下

 

三线是SDI和SDO合二为一,节省了一个引脚,但只是半双工通信。看看测波形时用的管脚对不对,4线模式下把SDI和SDO都接了观察一下。

 
 
 

回复

5015

帖子

12

TA的资源

裸片初长成(初级)

6
 
MSP430单片机的4线的SPI会多出一个STE引脚,这个引脚的作用是当有多个主设备,一个从设备的时候通过STE(该引脚是收入脚)是检测是否从设备正被另一个主设备使用。
如果你由3线换成了4线,而STE上的电平导致SPI接口认为从设备正在被使用就无法正常工作了
 
 
 

回复

14

帖子

0

TA的资源

一粒金砂(中级)

7
 
谢谢wstt,我终于明白了
msp430中的STE是多个master被一个slave选择,所以STE是input

那么这么说,msp430的spi中只能用其他管脚来模拟SS线(多个slave片选)的功能了
 
 
 

回复

5015

帖子

12

TA的资源

裸片初长成(初级)

8
 

回复 7楼 wwj0102 的帖子

是的 片选只能用IO模拟
 
 
 

回复

31

帖子

0

TA的资源

一粒金砂(中级)

9
 
原帖由 David_Lee 于 2011-7-8 17:47 发表

 
三线是SDI和SDO合二为一,节省了一个引脚,但只是半双工通信。看看测波形时用的管脚对不对,4线模式下把SDI和SDO都接了观察一下。

   
请问一下,SDI,SDO合二为一是什么意思?是说SIMO,SOMI怎么样呢?多谢。
 
 
 

回复

121

帖子

0

TA的资源

纯净的硅(中级)

10
 

STE是从机模式发送/接收允许控制引脚,控制多主机系统中的多个从机。

1、从机模式下:

         STE = 0,允许从机发送接收数据,SOMI正常工作;

         STE = 1,禁止从机发送接收数据,SOMI被强制进入输入状态。

2、主机模式下:

         STE = 0,SIMO和UCLK被强制进入输入状态;

         STE = 1,SIMO和UCLK正常操作。

总之,4线模式主要用于多个从机的通信,避免各部分发生冲突。

 
个人签名很高兴来到EEW。希望和大家相互学习,共同进步!
 
 

回复

31

帖子

0

TA的资源

一粒金砂(中级)

11
 

回复 10楼 5xue 的帖子

恩,多谢。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表