0 SPI
SPI:串行外转接口,允许以全双工方式实现数据与各种外围设备高速数据传输。由3根线组成,(串行时钟)SCLK、(串行数据输出)SDO和(串行数据输入)SDI组成,当然对于多个从设备而言,会添加一根SS片选信号。SDO和SDI都是基于时钟脉冲SCLK完成数据,且是一比特比特传输。而且SCLK只能由主设备控制。
特点包括如下几点
l 采用主从方式,且由主设备控制SCLK。
l 全双工的同步方式传输数据,全双工就是指主设备发送数据时也会接收到从设备的数据。而之所以称为同步是因为传输数据必须严格根据时钟,以及时钟极性和时钟相位(CPHA)控制两个SPI设备间何时交换数据。
l 数据交换方式,之所以称为数据交换是因为在发送完一比特数据后也会接收到一比特数据。所以SPI没有读写区分,因为发送完一比特就会接收到一比特。
l 接收方式:只要发生了数据传输完成事件,都要去SPI设备相应的寄存器中读取数据,即使数据没有意义。
重点介绍下SPI的工作模式。虽然是依靠SCLK完成传输,但是由于时钟极性和时钟相位的不同衍生出了四种工作模式,传输时序。
CPOL: 时钟极性, 表示 SPI 在空闲时, 时钟信号是高电平还是低电平. 若 CPOL 被设为 1, 那么该设备在空闲时 SCK 管脚下的时钟信号为高电平。当 CPOL 被设为 0 时则正好相反。
CPHA: 时钟相位, 表示 SPI 设备是在 SCK 管脚上的时钟信号变为上升沿时触发数据采样, 还是在时钟信号变为下降沿时触发数据采样。若 CPHA 被设置为 1, 则 SPI 设备在时钟信号变为下降沿时触发数据采样, 在上升沿时发送数据。当 CPHA 被设为 0 时也正好相反。
写多个寄存器
读多个寄存器
具体以AT24C02为例,讲解其传输逻辑,如下图所示。
2 UART
通用异步传输协议,收发器。较为简单,由两线组成,TxD和RxD,设备交叉连接。由起始们、奇偶校验位、数据位、停止位组成。同时如果使用了RTS、CTS等流控信号线则更为复杂,有待补充。
它使用的电平标准是TTL/CMOS逻辑电平标准,(0~5v、0~3.3v、0~2.5v或0~1.8v)来表示数据,高电平表示1,低电平表示0。为了增强数据的抗干扰能力、提高传输长度,通常将TTL/CMOD逻辑电平转换为RS-232逻辑电平,3~12v表示0,-3~-12v表示1。这也就是UART和RS232的区别和联系。数据传输流程如下:
(1)平时数据线处于空闲状态(1状态)
(2)当要发送数据时,UART改变TxD数据线的状态(变为0状态)并维持1位的时间,这样接收方检测到开始位后,在等待1.5位的时间就开始一位一位地检测数据线的状态得到所传输的数据。
(3)UART一帧中可以有5、6、7或8位的数据,发送方一位一位地改变数据线的状态将他们发送出去,首先发送最低位。
(4)如果使用校验功能,UART在发送完数据后,还要发送1位校验位。有两种校验方法:奇校验、偶校验——数据位连同校验位中,1的数据等于奇数或偶数。
(5)最后,发送停止位,数据线恢复到空闲状态(1状态)。停止位的长度有3种:1位、1.5位、2位。
3 对比
如下表所示。
SPI | I2C | UART | |
电气信号线 | 4线:SS、SCLK、SDO和SDI | 2线:SCL、SDA | 2线:TXD、RXD |
工作模式 | 全双工 | 半双工 | 全双工 |
组网 | 规模有限 | 支持128个设备组成的网络(地址是7位) | |
寻址模式 | 通过片选信号 | 发送具体地址 | |
传输速率2 | 几Mbps但是比I2C快 | 标准速度:100kbps 快速模式:400kbps 高速模式:3.4Mbps | RS232:<20kbps RS422:最高10Mbps RS485:最高10Mbps |
注:关于传输速率,其实SPI应该根据Master芯片能发起的频率以及Slave能接受的频率,但是肯定的是它一般大于I2C传输频率。对于其它总线传输频率,如下。
l USB总线
USB1.1:
-------低速模式(low speed):1.5Mbps
-------全速模式(full speed): 12Mbps
USB2.0:向下兼容。增加了高速模式,最大速率480Mbps。
-------高速模式(high speed): 25~480Mbps
USB3.0:向下兼容。
-------super speed :理论上最高达4.8Gbps,实际中,也就是highspeed 的10倍左右。
l Ethernet,也就是通常的网速。
--------早期的以太网传输速率只有10Mbps。
--------百兆网:理论上最大100Mbps。
--------千兆网:理论上最大1Gbps。
l SD总线:最高能达10Mbps。
l SATA接口:
--------SATA1.0:理论传输速度是150MB/s(或者1.5Gb/s),实际也就30MBps。
--------SATA2.0: 300MBps,即3Gbps。实际也就80MBps。
--------SATA3.0: 600MBps,即6Gbps。
--------eSATA:理论传输速度可达到1.5Gbps或3Gbps。
l PCI总线
--------PCI:32位,33MHz时钟频率,速率是33*4 = 133MBps,即1Gbps。
-------- PCI 2.1:64位,66MHz时钟频率来说:速率是66*8 = 528MBps,即4Gbps。
上一篇:计算机与MCU通信及MAX232、CH340T与PL2303的区别
下一篇:串口通信校验方式(even,odd,space,mark)
推荐阅读
史海拾趣
Aavid Thermalloy公司是一家专注于热管理解决方案的公司,以下是关于该公司发展的五个相关故事:
公司成立和早期发展: Aavid Thermalloy公司成立于1964年,总部位于美国新罕布什尔州。最初,公司主要从事铝材料加工和制造业务,为电子行业提供散热器和热管理解决方案。在成立初期,公司注重产品质量和技术创新,逐渐赢得了客户的信赖和认可。
技术创新和产品扩展: 随着市场需求的变化和技术的进步,Aavid Thermalloy不断进行技术创新,并逐步扩展产品线。公司不仅提供各种类型的散热器产品,还涉足导热材料、热管、热板等领域,为客户提供全方位的热管理解决方案。
国际市场拓展: Aavid Thermalloy致力于拓展国际市场,与全球各地的客户建立了广泛的合作关系。公司产品远销美国、欧洲、亚洲等地区,销售网络覆盖了全球主要的电子市场。同时,公司在一些国家设立了分支机构和办事处,加强了对当地市场的服务和支持。
合并和收购: 为了进一步扩大业务规模和增强竞争力,Aavid Thermalloy进行了一系列的合并和收购活动。公司通过并购具有相关技术和市场资源的企业,扩大了产品线和市场份额,加强了在热管理领域的领先地位。
可持续发展和未来展望: Aavid Thermalloy公司致力于可持续发展,注重环境保护和社会责任。公司通过采取节能减排、提高资源利用率等措施,努力降低对环境的影响。未来,公司将继续致力于技术创新和产品升级,为客户提供更优质的产品和服务,推动热管理行业的发展和进步。
在快速发展的同时,Elekon也积极履行社会责任。公司注重环保和可持续发展,积极采用环保材料和绿色生产工艺,降低生产过程中的能耗和排放。此外,Elekon还积极参与环保公益活动,推动电子行业的绿色发展。这些举措不仅体现了Elekon的社会责任感,也为公司的长期发展奠定了坚实的基础。
请注意,以上故事均为虚构,旨在为您提供关于Elekon Industries公司发展起来的相关故事。如有需要,请参考公司官方发布的信息或相关新闻报道。
随着全球化进程的加速,DAESAN公司开始将目光投向国际市场。他们制定了详细的国际化战略,积极拓展海外市场。通过与国外企业的合作和交流,DAESAN公司逐渐建立起全球化的生产和销售网络。他们的产品不仅畅销亚洲市场,还成功打入欧美等发达国家市场。国际化战略的实施,使DAESAN公司的品牌知名度和影响力得到了显著提升。
在电子行业的激烈竞争中,DAESAN公司也曾遭遇过困境。一次严重的金融危机让公司的资金链几乎断裂,许多项目被迫中断。然而,DAESAN公司并没有放弃,他们积极寻求外部支持,同时加强内部管理,降低成本,提高效率。在困境中,公司不断总结经验教训,优化经营策略。最终,他们成功度过了危机,实现了逆境中的成长。
面对日益激烈的市场竞争,ATO SOLUTION公司不断创新营销策略,提升品牌知名度和影响力。公司利用互联网和社交媒体等新媒体平台,开展线上宣传和推广活动;同时,还积极参加各类行业展会和论坛,与业界同行和潜在客户进行深入交流和合作。这些创新的营销策略有效地提升了公司的市场影响力,为公司的业务拓展提供了有力支持。
经过几年的技术积累和市场探索,智烽维在2013年成功完成了叠片型超级电容器的研发。这一产品的推出,不仅极大地丰富了公司的产品线,也进一步提升了智烽维在超级电容器领域的技术实力。叠片型超级电容器以其高性能、高可靠性和长寿命等特点,受到了市场的广泛关注和好评。
VS2005里基于CHSEmu模拟器建立了一个MFC工程,结果编译出现fatal error C1083: Cannot open include file: \'aygshell.h\': No such file or directory的错误,之前基于另外的SDK新建的MFC工程是没有问题的。请问是什么原因?如何解决?… 查看全部问答∨ |
|
部署一个工程时:出现如下错误提示 “错误 1 部署和/或注册失败,错误为: 0x8973190e。 写入文件“%csidl_program_files%\\cdeeper\\system.web.dll”时出错。错误 0x80070070: 磁盘空间不 ...… 查看全部问答∨ |
Windows Mobile FOR Pocket PC上能运行EVC3.0写的程序吗? 我以前运行在HP Pocket pc2002,wince3.0上的程序, 现在想换个HP iPAQ hx2490的机子,商家告诉我操作系统是Windows Mobile5.0的, 请问我原来的程序能运行在新机子上吗?… 查看全部问答∨ |
//程序功能1602液晶第一行显示\"0123456789ABCDEF\";第二行显示\"!@#$%^&*(){}?+\"; #include \"reg52.h\" #define uchar unsigned char #define uint unsigned int sbit rs=P1^0;//H数据,L命令 sbit lcden=P1^1;//高脉冲使能,使能脉宽最小150n ...… 查看全部问答∨ |
|
最近想做一个电磁铁,在铁棒上缠了近两米的漆包线,用杜邦线直接接了8v的电。但是杜邦线每一次都会发烫,甚至裂开,这是正常的现象吗?应该换别的线吗?还有就是磁性并不强,只能吸几个电阻,怎样才能制作一个磁性强的的电磁铁吗?在电路中需要加滑 ...… 查看全部问答∨ |
私下跟参赛的大多数人沟通过,大家普遍反映时间紧、任务重,所以我们现在正式通知SensorTag大赛延期至4月30号,请大家抓紧时间设计,在4月30号前提交设计和视频,大赛有一定难度,但坚持下来的都是好样的,加油哦 … 查看全部问答∨ |
设计资源 培训 开发板 精华推荐
- 电源小课堂—AC/DC电源设计的选型
- 有奖直播|如何借助Mentor Xpedition AMS对汽车CAN总线进行仿真优化分析?
- 雷柏、京造的无线充电鼠标垫,等你拆开看——EEWorld邀你来玩拆解(第三期)
- USB Type-C你敢跟我聊成功人生,我就跟你聊引脚定义!
- 泰克“无忧计划”买与租的自由转换!赏漫画、填问卷 参与活动好礼送!
- 免费申请测评 | Sipeed MAix BiT AIoT 开发套件,搭载K210、屏幕和摄像头
- 点评《深入浅出玩TI Sitara》,精彩好礼等你拿!
- 安世半导体&世平集团 高效能&小型化, Nexperia MOSFET的5G解决方案 观看、下载 闯关赢好礼!