常用总线、通信接口(PPT-65)课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《常用总线、通信接口(PPT-65)课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 总线 通信 接口 PPT 65 课件
- 资源描述:
-
1、3.9 常用总线、通信接口常用总线、通信接口数据通信的基本方式可分为并行通信与串行通信两两种:v并行通信:并行通信:是指利用多条数据传输线将一个数据的各位 同时传送。特点: 是传输速度快,适用于短距离通信。v串行通信串行通信:是指利用一条传输线将数据一位位地顺序 传送。特点: 是通信线路简单,利用电话或电报线路就可 实现通信,降低成本,适用于远距离通信, 但传输速度慢。2022-4-22串行通信:分为同步通信(SYNC)与异步通信(ASYNC)两两种方式。(实际通信中,没有绝对的“异步” 或“同步”,只是按不同的程度上“同步”。)v异步通信:一个字节内同步,而字节之间“不同步”, 称之为“异步
2、”。v同步通信:大于一个字节的“帧数据”或“块数据”内 同步,称之为“帧同步”或“块同步”。称 之为“同步”。 (这时实际上“帧数据” 或“块数据”之间也是“异步”)2022-4-23异步通信 v字符格式:规定有起始位、数据位、奇偶校验位、停止位等v波特率:是衡量数据传送速率的指标(bps)。2022-4-24数据传送方向v单工方式单工方式只允许数据按照一个固定的方向传送v半双工方式半双工方式每次只能有一个站发送,另一个站接收v全双工方式全双工方式允许通信双方同时进行发送和接收2022-4-25v串行通信的基本特征是数据逐位顺序进行传送串行通信的基本特征是数据逐位顺序进行传送v串行通信的格式及
3、约定(如:同步方式、通讯速率、串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平数据块格式、信号电平等)不同,形成了多种等)不同,形成了多种串行通信的协议与接口标准。常见的有:串行通信的协议与接口标准。常见的有:v通用异步收发器通用异步收发器(UART)本课程介绍的串口本课程介绍的串口v通用串行总线(通用串行总线(USB)v单总线(单总线(1-Wire1-Wire)vI2C总线总线vCAN总线总线vSPI总线总线v1394vRS-485,RS-232C,RS422A标准标准等等等等2022-4-26vSPI、I2C、1-Wire、RS232是目前单片机应用系统是目前单片机应用系
4、统中最常用的几个串行总线接口。中最常用的几个串行总线接口。v与并行扩展总线相比,串行扩展总线能够最大程度与并行扩展总线相比,串行扩展总线能够最大程度发挥最小系统的资源功能、简化连接线路,缩小电发挥最小系统的资源功能、简化连接线路,缩小电路板面积、扩展性好,可简化系统设计。路板面积、扩展性好,可简化系统设计。v串行总线的缺点是数据吞吐容量小,信号传输较慢。串行总线的缺点是数据吞吐容量小,信号传输较慢。但随着但随着CPU芯片工作频率的提高,以及串行总线的芯片工作频率的提高,以及串行总线的功能增强,这些缺点将逐步淡化。功能增强,这些缺点将逐步淡化。2022-4-273.9.1 I2C总线总线 vI
5、I2 2C C(Inter Integrated CircuitInter Integrated Circuit)常译为内常译为内部集成电路总线,或集成电路间总线,它部集成电路总线,或集成电路间总线,它是是由由PhilipsPhilips公司推出的芯片间串行传输总线。公司推出的芯片间串行传输总线。使用使用2 2线实现数据通信。线实现数据通信。1 1根串行数据线(根串行数据线(SDASDA)1 1根串行时钟线(根串行时钟线(SCLSCL)。)。2022-4-281. I2C总线的基本特性总线的基本特性v硬件结构上具有相同的硬件接口界面。2022-4-29v总线接口器件地址具有很大的独立性。总线接
6、口器件地址具有很大的独立性。在单主系统中,每个在单主系统中,每个I I2 2C C接口芯片具有唯一的器件地址,各从器件之间互不干扰,接口芯片具有唯一的器件地址,各从器件之间互不干扰,相互之间不能进行通信。相互之间不能进行通信。MCUMCU与与I I2 2C C器件之间的通信是通过独器件之间的通信是通过独一无二的器件地址来实现的。一无二的器件地址来实现的。v数据传输首先从最高位开始。数据传输首先从最高位开始。传输速率在标准模式下可达传输速率在标准模式下可达100kbit/s100kbit/s,在快速模式下达,在快速模式下达400kbit/s400kbit/s,在高速模式下达,在高速模式下达3.4
7、Mbit/s3.4Mbit/s。v它是一个真正的多主机总线。它是一个真正的多主机总线。如果两个或更多主机同时初始如果两个或更多主机同时初始化数据传输,可以通过冲突检测和仲裁防止数据被破坏。化数据传输,可以通过冲突检测和仲裁防止数据被破坏。v软件操作的一致性。软件操作的一致性。任何器件通过任何器件通过I I2 2C C总线与总线与MCUMCU进行数据传进行数据传送的方式基本一样,决定了送的方式基本一样,决定了I I2 2C C总线软件编写的一致性。总线软件编写的一致性。v数据线SDA/时钟线SCL(接上拉电阻) 2022-4-2102.I2C总线工作原理总线工作原理 (1 1)I I2 2C C
8、总线信号类型总线信号类型v开始信号:开始信号:SCLSCL为高电平时,为高电平时,SDASDA由高电平向低电平跳变,开由高电平向低电平跳变,开始传送数据。始传送数据。v结束信号:结束信号:SCLSCL为低电平时,为低电平时,SDASDA由低电平向高电平跳变,结由低电平向高电平跳变,结束传送数据。束传送数据。v应答信号:应答信号:接收数据的器件在接收到接收数据的器件在接收到8bit8bit数据后,向发送数数据后,向发送数据的器件(发送器)发出特定的低电平脉冲,表示已收到数据的器件(发送器)发出特定的低电平脉冲,表示已收到数据。发送器接收到应答信号后,根据实际情况作出是否继续据。发送器接收到应答信
9、号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为接收器出现传递信号的判断。若未收到应答信号,由判断为接收器出现故障。故障。v数据数据只能在只能在SCLSCL为低电平时才能改变,为低电平时才能改变,SCLSCL为高电平时为高电平时SDASDA须须稳定。稳定。v起始信号与结束信号都是由主器件产生。起始信号与结束信号都是由主器件产生。2022-4-2112022-4-212(2)I2C总线数据传输总线数据传输 v主器件和从器件都可以工作于接收和发送状态。主器件和从器件都可以工作于接收和发送状态。v总线必须由主器件(通常为单片机)控制,主器件产生串行总线必须由主器件(通常为单片
10、机)控制,主器件产生串行时钟控制总线的传输方向,并产生起始和停止条件。时钟控制总线的传输方向,并产生起始和停止条件。v在起始信号结束后,主器件将发送一个用于选择从器件地址在起始信号结束后,主器件将发送一个用于选择从器件地址的的7 7位地址码和一个数据方向位(位地址码和一个数据方向位(R/WR/W),方向位为),方向位为“0”0”表示表示主器件把数据写到所选择的从器件中,此时主器件作为发送主器件把数据写到所选择的从器件中,此时主器件作为发送器,而从器件作为接收器;方向位为器,而从器件作为接收器;方向位为“1”1”表示主器件从所选表示主器件从所选择的从器件中读取数据,此时主器件作为接收器,而从器件
11、择的从器件中读取数据,此时主器件作为接收器,而从器件作为发送器。在寻址字节后是按指定读、写操作的数据字节作为发送器。在寻址字节后是按指定读、写操作的数据字节与应答位。在数据传送完成后主器件必须发送停止信号。与应答位。在数据传送完成后主器件必须发送停止信号。2022-4-213在51上用P1口模拟I2C (c语言) /* 电平模拟函数和基本读写函数 void IIC_Start(void); void IIC_Stop(void); void SEND_0(void); void SEND_1(void); bit Check_Acknowledge(void); void Write_Byte
12、(uchar b); bit Write_N_Bytes(uchar *buffer,uchar n);bit Read_N_Bytes(uchar SlaveAdr,uchar n,uchar *buffer); uchar Read_Byte(void); */ 2022-4-214#include #include #include #includeaiic_51.h sbit SCL=P16; sbit SDA=P17; void DELAY(uint t) while(t!=0) t-; 2022-4-215void IIC_Start(void) /启动I2C总线的函数,当SCL为
13、高电平时使SDA产生一个负跳变 SDA=1; SCL=1; DELAY(DELAY_TIME); SDA=0; DELAY(DELAY_TIME); SCL=0; DELAY(DELAY_TIME); 2022-4-216void IIC_Stop(void) /终止I2C总线,当SCL为高电平时使SDA产生一个正跳变 SDA=0; SCL=1; DELAY(DELAY_TIME); SDA=1; DELAY(DELAY_TIME); SCL=0; DELAY(DELAY_TIME); 2022-4-217void SEND_0(void) /发送发送0,在,在SCL为低电平时使为低电平时使S
14、DA信号变为低信号变为低 SCL=0; SDA=0; SCL=1; DELAY(DELAY_TIME); SCL=0;DELAY(DELAY_TIME); void SEND_1(void) /发送发送1,在,在SCL为低电平时使为低电平时使SDA信号变为高信号变为高 SCL=0; SDA=1; SCL=1; DELAY(DELAY_TIME); SCL=0; DELAY(DELAY_TIME); 2022-4-218bit Check_Acknowledge(void) /发送完一个字节后检验设备的应答信号 SDA=1; SCL=1; DELAY(DELAY_TIME/2); F0=SDA;
15、 DELAY(DELAY_TIME/2); SCL=0; DELAY(DELAY_TIME); if(F0=1) return FALSE; return TRUE; 2022-4-219void Write_Byte(uchar b) /向IIC总线写一个字节 uchar i; for(i=0;i8;i+) if(bi)&0 x80) SEND_1(); else SEND_0(); 2022-4-220bit Write_N_Bytes(uchar *buffer,uchar n) /向I2C总线写n个字节 uchar i; IIC_Start(); for(i=0;in;i+) Writ
16、e_Byte(bufferi); if(!Check_Acknowledge() IIC_Stop(); return(i=n); IIC_Stop(); return TRUE; 2022-4-221uchar Read_Byte(void)reentrant /从从I2C总线读一个字节总线读一个字节 uchar b=0,i; for(i=0;i8;i+) SDA=1; /释放总线释放总线 SCL=1; /接受数据接受数据 DELAY(10); F0=SDA; DELAY(10); SCL=0; if(F0=1) b=b1; b=b|0 x01; else b=b1; return b; 2
17、022-4-222bit Read_N_Bytes(uchar SlaveAdr,uchar n,uchar *buffer) /从从I2C总线读总线读n个字节个字节 uchar i; IIC_Start(); Write_Byte(SlaveAdr); /向总线发送接收器地址向总线发送接收器地址 if(!Check_Acknowledge() /等待接收器应答信号等待接收器应答信号 return FALSE; for(i=0;in;i+) bufferi=Read_Byte(); if(i!=n) SEND_0(); /发送应答发送应答 else SEND_1(); /发送非应答发送非应答
18、IIC_Stop(); return TRUE; 2022-4-223IIC例:2022-4-2242022-4-2252022-4-2262022-4-2272022-4-2282022-4-2292022-4-2302022-4-2312022-4-2322022-4-2332022-4-2342022-4-2352022-4-2362022-4-2372022-4-2382022-4-2391.SPI总线的特点总线的特点(串行外围设备接口(串行外围设备接口:serial peripheral interface)v一般使用一般使用4条线条线串行时钟线(串行时钟线(SCK)主机输入主机输入
19、/从机输出数据线从机输出数据线MISO主机输出主机输出/从机输入数据线从机输入数据线MOSI低电平有效的从机选择线低电平有效的从机选择线SSSPI总线技术是总线技术是Motorola公司推出的一种同步串行接口公司推出的一种同步串行接口 3.9.2 SPI串行总线2.SPI总线系统的构成总线系统的构成v单片机与多个单片机与多个SPISPI串行接口设备典型结构如图串行接口设备典型结构如图6.16.1所示。所示。3.SPI串行总线在串行总线在MCS-51系列单片机中的实现系列单片机中的实现 vMCS-51MCS-51单片机单片机I/OI/O口模拟口模拟SPISPI总线接口原理图如图总线接口原理图如图
展开阅读全文