SPI时序详解
来源:互联网 发布:淘宝淘口令怎么取消 编辑:程序博客网 时间:2024/05/16 15:00
转载出处:http://blog.csdn.net/ce123/article/details/6895408
SPI总线是Motorola公司推出的三线同步接口,同步串行3线方式进行通信:一条时钟线SCK,一条数据输入线MOSI,一条数据输出线MISO;用于 CPU与各种外围器件进行全双工、同步串行通讯。SPI主要特点有:可以同时发出和接收串行数据;可以当作主机或从机工作;提供频率可编程时钟;发送结束中断标志;写冲突保护;总线竞争保护等。
SPI总线有四种工作方式(SP0, SP1, SP2, SP3),其中使用的最为广泛的是SPI0和SPI3方式。SPI模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响。如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。如果 CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。
CPOL是用来决定SCK时钟信号空闲时的电平,CPOL=0,空闲电平为低电平,CPOL=1时,空闲电平为高电平。CPHA是用来决定采样时刻的,CPHA=0,在每个周期的第一个时钟沿采样,CPHA=1,在每个周期的第二个时钟沿采样。由于我使用的器件工作在模式0这种时序(CPOL=0,CPHA=0),所以将图1简化为图2,只关注模式0的时序。
我们来关注SCK的第一个时钟周期,在时钟的前沿采样数据(上升沿,第一个时钟沿),在时钟的后沿输出数据(下降沿,第二个时钟沿)。首先来看主器件,主器件的输出口(MOSI)输出的数据bit1,在时钟的前沿被从器件采样,那主器件是在何时刻输出bit1的呢?bit1的输出时刻实际上在SCK信号有效以前,比SCK的上升沿还要早半个时钟周期。bit1的输出时刻与SSEL信号没有关系。再来看从器件,主器件的输入口MISO同样是在时钟的前沿采样从器件输出的bit1的,那从器件又是在何时刻输出bit1的呢。从器件是在SSEL信号有效后,立即输出bit1,尽管此时SCK信号还没有起效。
从这张图就可以很清楚的看出主从器件的bit1是怎样输出的
- SPI时序图详解
- SPI时序图详解
- SPI时序图详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- SPI时序详解
- 三、SPI时序详解
- SPI时序详解
- 上个周末走访福州市2家软件公司,感受颇多,把经验分享给大家
- div 和table呈现的时候有什么区别
- UX设计初学者入门教程:从五个问题,三个为什么着手
- JSP默认模板用不得!
- Linux下的软件安装
- SPI时序详解
- MFC隐藏显示任务栏,菜单栏及输入法面板 mobile
- 《作业控制系列》-“linux命令五分钟系列”之十
- [转载]一些创业的心得,希望对其他创业者有帮助
- 软件测试方法
- TortoiseSVN安装使用
- 《vi中的替换艺术》-linux命令五分钟系列之十一
- qt中常用的一种设置背景图片方法
- [MSSQL]Select count(*)与Select count(字段)的效率分析