您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> BF533中SPI的slave select pins controller... 
本帖共有440个阅读者
发表帖子 发表投票 回复主题
BF533中SPI的slave select pins controller by user software
白龙(论坛新手)
白龙
头衔:社区公民
帮派:无帮无派
帖数:5
金钱:155
积分:9
注册时间:2014/10/14
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
BF533中SPI的slave select pins controller by user software
在使用BF533的SPI,
SPI Control Register (SPI_CTL)中第10位CPHA (Clock Phase),有提到
slave select pins controlled by hardware或者
slave select pins controller by user software,这个是怎么理解?具体是怎么操作?如果想一次传输24个bit,选择哪一种

按照下面的DAC芯片AD5722R的时序图,需要再CPOL=0,CHPA=1的情况下传输,在533中也是硬件控制,这样在8bit之后就会拉高,不能传输24个bit,是不是不能用BF533的SPI驱动DAC芯片AD5722R








上传的图片
  20151262202736.png [ 35.40 KB 674×438 ] (缩略时请点击查看原图)

 



「该帖子被 白龙 在 2015-01-26 02:22:49 编辑过」

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2015/1/25 17:26:30
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

SPI有两种片选方式,一种是自动片选,就是硬件片选,就是当你通过SPI接口发送数据时,每发送一组数据(一个byte,或者一个short,看你的设置),片选会自动拉低拉高一次。还有一种片选是通过配置SPI_FLG寄存器来拉低片选,因为大多数SPI设备,在一组命令没有完成前,不允许片选拉高,所以需要软件配置拉低。

你可以到openadsp网站中下载533下SD卡和触摸屏的代码看看,一个是自动片选,一个是软件片选


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2015/1/25 19:07:26
白龙(论坛新手)
白龙
头衔:社区公民
帮派:无帮无派
帖数:5
金钱:155
积分:9
注册时间:2014/10/14
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

上传的图片
  20151262492123.png [ 19.95 KB 443×207 ] (缩略时请点击查看原图)

 

根据SPI寄存器和上面的DAC芯片AD5722芯片的时序图,SCLK toggles from middle of the first data bit, 这个理解不清楚,因为一个SCLK有两次翻转,SPI寄存器中所说的翻转是哪个?
根据我自己做实验的结果是SCLK toggles from middle of the first data bit,但是因为硬件控制,会8个Bit之后有个拉高和拉低,不能够连续传输24个bit,是不是AD5722不能与BF533搭配



这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2015/1/26 2:53:35
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
3信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

SPI默认时8bit的,可以配置为16bit,但没有24bit模式,如果你是24bit,只需要连续发三次8bit数据即可。

cpha的配置,看下面图吧。


上传的图片
  201512921454849.jpg [ 17.07 KB 478×258 ] (缩略时请点击查看原图)

 


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2015/1/29 21:45:50
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159342 Call, 1 Queries, Processed in 0.031250 second(s),