您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> BF533的基本语句不太明白
本帖共有475个阅读者
发表帖子 发表投票 回复主题
BF533的基本语句不太明白
米兰的小铁匠(论坛新手)
米兰的小铁匠
头衔:社区公民
帮派:无帮无派
帖数:8
金钱:184
积分:14
注册时间:2014/4/13
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
BF533的基本语句不太明白
*pSPI_CTL=0x1001|CPHA|CPOL;    是什么意思啊?加个0x1001是怎么参与运算的??

新手上路,勿喷勿笑,多多指教!
等级:论坛新手 参考IP地址:*.*.*.*
2014/4/13 10:34:44
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线

上传的图片
  20144159123198.jpg [ 59.24 KB 568×505 ] (缩略时请点击查看原图)

 


如上图,SPI寄存器中每一位都有一个名字。每一个名字都对应一个位操作。如CPHA的宏定义是0x0400,CPOL对应的是0x0800. 配置寄存器时,你可以直接送十六进制数据,但为了容易阅读,通常直接将配置位值通过“与或”方式送给寄存器。0x1001实际上代表的是将TIMOD模式配置为01,SPI选择主模式。

*pSPI_CTL=0x1001|CPHA|CPOL;    
实际上就是
*pSPI_CTL=0x1001|0x0400|0x0800;  


「该帖子被 andy 在 2014-04-15 09:17:09 编辑过」

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2014/4/15 9:15:55
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159238 Call, 1 Queries, Processed in 0.046997 second(s),