




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第4 4章章 串行总线技术串行总线技术浙江大学光电系浙江大学光电系 微机课程组微机课程组u 选择项目设计的同学,请在选择项目设计的同学,请在3月月19日(周三)下午日(周三)下午14:00-15:30在教三在教三5楼拿开发板。楼拿开发板。u 拿实验板时,把校园卡也带上,要开通六楼的门禁拿实验板时,把校园卡也带上,要开通六楼的门禁u 元器件采购:每组报销额度不大于元器件采购:每组报销额度不大于200元。元。F020核心板提供。核心板提供。u 每个项目每个项目7个组,希望有一个采购元器件的负责人,这样每个项目共同的个组,希望有一个采购元器件的负责人,这样每个项目共同的元件可以共同采购,节省快递费
2、,数量多,也有利于开发票。元件可以共同采购,节省快递费,数量多,也有利于开发票。指定负责人:每个题目序号指定负责人:每个题目序号1的同学的同学1,无弦琴:张逸凡,无弦琴:张逸凡 负责老师:王晓萍负责老师:王晓萍2,电子钢琴:倪丽霞,电子钢琴:倪丽霞 梁宜勇梁宜勇3,计价器:张步云,计价器:张步云 王立强王立强4,旋转,旋转LED:吴函烁:吴函烁 张秀达张秀达 5,加速度:刘少聪,加速度:刘少聪 张秀达张秀达6,语音识别,语音识别: 方大千方大千 王立强王立强 相关通知相关通知3 3月月2929日(下周六)下午日(下周六)下午14:0014:00开题答辩,开题答辩,1,4,51,4,5题目题目1
3、 1个地方,个地方,2,3,62,3,6题题目目1 1个地方,每个地方个地方,每个地方2121组队伍(地点另行通知)。组队伍(地点另行通知)。每个组每个组2 2个人必须都参加答辩。同个人必须都参加答辩。同1 1地方的地方的2121组必须同时都在答辩现场,组必须同时都在答辩现场,不能迟到早退。不能迟到早退。每组讲每组讲4 4分钟分钟PPTPPT,教师提问,指导,教师提问,指导3 3分钟,共分钟,共7 7分钟。分钟。2121* *7=1477=147分钟。分钟。答辩顺序按照题目序号及齐老师提供的名单顺序进行。答辩顺序按照题目序号及齐老师提供的名单顺序进行。每组只讲设计方案,硬件每组只讲设计方案,硬
4、件/ /软件功能及设计考虑,进度安排及软件功能及设计考虑,进度安排及2 2人分工,人分工,需采购的器件及大概成本预算,不需要讲背景知识。需采购的器件及大概成本预算,不需要讲背景知识。相关通知相关通知内容提要内容提要2.1 总线概论总线概论 2.1.1 总线的概念和分类总线的概念和分类 2.1.2 总线的功能和优势总线的功能和优势2.2 串行系统总线串行系统总线 2.2.1 I2C总线总线 2.2.2 SPI总线总线 2.2.3 1-wire总线总线 2.3 串行通信总线串行通信总线 2.3.1 RS-232C总线总线 2.3.2 RS-485总线总线2.1.1 总线概念和分类总线概念和分类1.
5、 什么是总线:什么是总线:总线是计算机之间、计算机与微机系统或智能仪器之间传输信息的通总线是计算机之间、计算机与微机系统或智能仪器之间传输信息的通道,是芯片之间、部件之间、系统之间的实际互联线。道,是芯片之间、部件之间、系统之间的实际互联线。2. 总线协议:总线协议:为了使总线能够有效、可靠地进行信息交换,必须对总线信号、传送为了使总线能够有效、可靠地进行信息交换,必须对总线信号、传送规则以及传输的物理介质等做出一系列规定,这些规定称为总线协议规则以及传输的物理介质等做出一系列规定,这些规定称为总线协议或总线规则。或总线规则。3. 标准总线:标准总线:被某一个标准化组织批准或推荐的总线协议称为
6、总线标准,符合某种被某一个标准化组织批准或推荐的总线协议称为总线标准,符合某种总线标准的总线,称为标准总线。总线标准的总线,称为标准总线。4. 协议内容:协议内容: 总线协议要对总线的技术问题做出明确而严格的规定。总线协议要对总线的技术问题做出明确而严格的规定。比如:总线各信号线的定义和用途;信号的电气特性(电压、频率和时比如:总线各信号线的定义和用途;信号的电气特性(电压、频率和时序等);总线插座的几何尺寸和机械特性;使用标准总线的产品和模板序等);总线插座的几何尺寸和机械特性;使用标准总线的产品和模板的几何尺寸、机械和电气特性;机箱(机笼)的机械特性和电气特性;的几何尺寸、机械和电气特性;
7、机箱(机笼)的机械特性和电气特性;甚至对模板上应用的元器件的特性均有规定。甚至对模板上应用的元器件的特性均有规定。5. 标准化组织:标准化组织:国际上标准化组织很多,在总线标准的标准化组织中,影响比较大的国际上标准化组织很多,在总线标准的标准化组织中,影响比较大的主要有三个标准化组织:主要有三个标准化组织:nIEEE(电子电器工程师协会)(电子电器工程师协会)nANSI(美国国家标准协会)(美国国家标准协会)nIEC(国际电工委员会)(国际电工委员会)2.1.1总线概念和分类总线概念和分类2.1.1 总线概念和分类总线概念和分类n总线的种类:总线的种类:按总线的使用范围分类:按总线的使用范围分
8、类:n片内总线片内总线n系统总线系统总线n通信总线通信总线按信号传送方式分类:按信号传送方式分类:n并行总线并行总线n串行总线串行总线 1.片内总线:片内总线:连接片内各部件的信息通道,用于各部件之间的信息传输。连接片内各部件的信息通道,用于各部件之间的信息传输。例如例如MCS-51系列系列MCU片内连接各部件之间的数据总线片内连接各部件之间的数据总线DB、地址总、地址总线线AB、控制总线、控制总线CB。片内总线上所传送的信息,不同引线或者同一组引线在不同时刻可以片内总线上所传送的信息,不同引线或者同一组引线在不同时刻可以是不同类型的信息(如地址信息或数据信息),即数据总线是不同类型的信息(如
9、地址信息或数据信息),即数据总线DB、地、地址总线址总线AB、控制总线、控制总线CB共用同一组总线,这种结构称为单总线结构共用同一组总线,这种结构称为单总线结构。通常。通常MCU的片内总线大都采用并行的单总线的片内总线大都采用并行的单总线结构。结构。 2.1.1总线的概念和分类总线的概念和分类2. 系统总线系统总线是实际微机应用系统或智能仪器内部各模块、各部件之间传送信息的是实际微机应用系统或智能仪器内部各模块、各部件之间传送信息的总线。通常由系统总线连接相关模块或元器件,来构建具有一定功能总线。通常由系统总线连接相关模块或元器件,来构建具有一定功能的应用系统。的应用系统。分为并行总线(例如分
10、为并行总线(例如STD总线、总线、PCI总线)和串行总线(例如总线)和串行总线(例如I2C、SPI、1-wire)两大类。)两大类。3. 通信总线通信总线用于微机应用系统之间或智能仪器之间或系统与计算机之间传送信息用于微机应用系统之间或智能仪器之间或系统与计算机之间传送信息的总线。的总线。分为并行总线(例如分为并行总线(例如GPIB总线)和串行总线(例如总线)和串行总线(例如RS232、RS485、USB等)两大类。等)两大类。2.1.1总线的概念和分类总线的概念和分类4. 总线和网络总线和网络n总线技术和网络技术是微机应用系统实现互连的两大技术。各有特总线技术和网络技术是微机应用系统实现互连
11、的两大技术。各有特点,又互相联系,没有严格的定义可以把它们区分开。点,又互相联系,没有严格的定义可以把它们区分开。n总线是把各种设备连成系统,而网络是把系统互连成网。在总线上总线是把各种设备连成系统,而网络是把系统互连成网。在总线上传送的是信号或某种信息,而在网络上传送的则是报文。传送的是信号或某种信息,而在网络上传送的则是报文。n有很多总线结构可以传送数据块,很像网络上传送的报文,这种总有很多总线结构可以传送数据块,很像网络上传送的报文,这种总线具有网络的特性。线具有网络的特性。n在某些局部网中,为了提高实时响应能力,使它具有即时、固有的在某些局部网中,为了提高实时响应能力,使它具有即时、固
12、有的响应方式,这种局域网网络又具有总线的特征。响应方式,这种局域网网络又具有总线的特征。 2.1.1总线的概念和分类总线的概念和分类1.1.总线的功能总线的功能u 简化系统结构的复杂程度简化系统结构的复杂程度 功能模块,化整为零、化复杂为简单;功能模块,化整为零、化复杂为简单; 分头、并行设计;群体设计;加快设计过程;分头、并行设计;群体设计;加快设计过程;u 提高系统的灵活性提高系统的灵活性u 构架灵活,功能增减方便;构架灵活,功能增减方便;u 降低成本和方便维护降低成本和方便维护2.1.2 总线的功能和优势总线的功能和优势2.1.2 总线的功能和优势总线的功能和优势2.2.总线的优势总线的
13、优势u模块化设计模块化设计 功能分析,通用模块、专用模块,依据总线标准进行模块设计;功能分析,通用模块、专用模块,依据总线标准进行模块设计;u功能扩展方便功能扩展方便 增加模块,扩展功能,不要改变系统结构。增加模块,扩展功能,不要改变系统结构。u可维护性好可维护性好 按模块分析,排除故障容易。按模块分析,排除故障容易。u易实现监控软件的模块化、结构化设计易实现监控软件的模块化、结构化设计 实际应用系统的监控软件,可模块化、结构化设计。实际应用系统的监控软件,可模块化、结构化设计。u便于产品更新换代便于产品更新换代u经济性好经济性好内容提要内容提要2.1 总线概论总线概论 2.1.1 总线的概念
14、和分类总线的概念和分类 2.1.2 总线的功能和优势总线的功能和优势2.2 串行系统总线串行系统总线 2.2.1 I2C总线总线 2.2.2 SPI总线总线 2.2.3 1-wire总线总线 2.3 串行通信总线串行通信总线 2.3.1 RS-232C总线总线 2.3.2 RS-485总线总线1. 系统并行总线系统并行总线 例如例如ISA总线、总线、STD总线、总线、PCI总线等都是系统并行总线。总线等都是系统并行总线。(内容略)(内容略)2.2 系统总线系统总线数据线、地址线、和控制线PCI主设备最少需要49根线,从设备最少需要47根线AD31:0:地址数据复用引脚。2. 系统串行总线系统串
15、行总线 (1)常见系统串行总线:)常见系统串行总线:nI2C总线、总线、SPI接口总线和接口总线和1-wire总线总线 ;n采用系统串行总线可以使系统结构紧凑,器件间连线简单。可采用系统串行总线可以使系统结构紧凑,器件间连线简单。可以获得功能强大而价格低廉的微机系统。以获得功能强大而价格低廉的微机系统。(2)主要应用)主要应用 n系统内部的芯片级扩展,即微机系统内部模块或器件的扩展。系统内部的芯片级扩展,即微机系统内部模块或器件的扩展。(3)绝大部分为同步串行数据传输总线,即具有实现同步传输)绝大部分为同步串行数据传输总线,即具有实现同步传输的的CLK 信号。信号。2.2 系统总线系统总线2.
16、2.1 I2C总线总线1外围扩展示意外围扩展示意nI2C (Inter Intergrated Circuit)总线为双向二线制同步串行总线,时钟线总线为双向二线制同步串行总线,时钟线SCL、 数据线数据线SDA,主要用于单片机系统的外围扩展。总线传输速度为,主要用于单片机系统的外围扩展。总线传输速度为400kb/s,总,总线驱动能力线驱动能力400pF。n具有具有I2C总线的通用外围器件包括总线的通用外围器件包括SRAM、E2PROM、ADC/DAC、I/O口、口、LED及及LCD驱动控制器等等驱动控制器等等。 I2C总线扩展图总线扩展图2总线容量与驱动能力总线容量与驱动能力nI2C总线的外
17、围扩展器件都是总线的外围扩展器件都是CMOS器件,总线有足够的电流驱动能器件,总线有足够的电流驱动能力,因此总线上扩展的节点数不是由电流负载能力决定,而是由电容力,因此总线上扩展的节点数不是由电流负载能力决定,而是由电容负载确定。负载确定。nI2C总线上每个实际的节点器件的总线上每个实际的节点器件的I2C总线接口都有一定的等效电容,总线接口都有一定的等效电容,等效电容的存在会造成总线传输的延误而导致数据传输出错。等效电容的存在会造成总线传输的延误而导致数据传输出错。I2C总总线负载能力为线负载能力为400pF,能够满足应用系统的要求。,能够满足应用系统的要求。n总线上的每个外围器件都有一个器件
18、地址。总线上扩展外围器件时也总线上的每个外围器件都有一个器件地址。总线上扩展外围器件时也要受器件地址限制。要受器件地址限制。2.2.1 I2C总线总线3总线的电气结构总线的电气结构nI2C总线为双向同步串行总线,其接口为双向传输电路。总线端口总线为双向同步串行总线,其接口为双向传输电路。总线端口输出为开漏结构,故总线上必须有上拉电阻输出为开漏结构,故总线上必须有上拉电阻Rp,上拉电阻通常可,上拉电阻通常可选选510k。2.2.1 I2C总线总线I2C 总线只需要两根线,一根是串行数据总线只需要两根线,一根是串行数据线线SDA,另一根是串行时钟线,另一根是串行时钟线SCL。各器件的连接,需要共地
19、。各器件的连接,需要共地。4总线节点的寻址方法与从机地址(总线节点的寻址方法与从机地址(Slave Address)n挂接到总线上的所有器件都是总线上的节点。任何时刻,总线上只能有一挂接到总线上的所有器件都是总线上的节点。任何时刻,总线上只能有一个器件是主节点(主机)具有总线控制权,寻址总线上的其它节点(从机个器件是主节点(主机)具有总线控制权,寻址总线上的其它节点(从机),实现数据传送。),实现数据传送。nI2C 总线不需要地址译码器和片选信号。多个具有总线不需要地址译码器和片选信号。多个具有I2C 总线接口的器件都可总线接口的器件都可以连接到同一条以连接到同一条I2C 总线上,它们之间通过
20、器件地址来区分。总线上,它们之间通过器件地址来区分。n主机是主控器件,不需要器件地址,其它器件都属于从机,要有一个固定主机是主控器件,不需要器件地址,其它器件都属于从机,要有一个固定的器件地址。并且必须保证同一条的器件地址。并且必须保证同一条I2C 总线上所有从机的地址都是唯一。总线上所有从机的地址都是唯一。2.2.1 I2C总线总线D7D6D5D4D3D2D1D0SLAA6A5A4A3A2A1A0R/ W2.2.1 I2C总线总线A6、A5、A4、A3:器件地址,:器件地址,是是I2C总线接口器件固有的地址编码,出厂总线接口器件固有的地址编码,出厂时给定。例如,时给定。例如,I2C总线总线E
21、2PROM AT24C的器件地址为的器件地址为1010,4位位LED驱动器驱动器SAA1064的器件地址为的器件地址为0111。A2 A1 A0:引脚地址,:引脚地址,由器件引脚由器件引脚A2、A1、A0连接的电平确定。连接的电平确定。R/W:数据方向:数据方向,0,为写地址;,为写地址;1,为读地址。,为读地址。 因此每一个器件有因此每一个器件有2个地址,分别为读地址和写地址。个地址,分别为读地址和写地址。从机地址(从机地址(Slave Address)由)由7 位地址位和位地址位和1位读写位位读写位R/W 组成,组成,SLA格式格式如下:如下:读写位是读写位是0,表示主机将要向从机写入数据
22、;读写位是,表示主机将要向从机写入数据;读写位是1,则表示主机将要从从,则表示主机将要从从机读取数据。机读取数据。 常用常用I2C总线接口器件的功能、型号和寻址字节表总线接口器件的功能、型号和寻址字节表功能功能型号型号器件地址及寻址字节器件地址及寻址字节备注备注2568/1288静态静态RAM PCF8570/711010A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A02568静态静态RAMPCF8570C1011A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A0256B E2PROMPCF85821010A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A0
23、256B E2PROMAT24C021010A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A0512B E2PROMAT24C041010A2A1P0R/W二位数字引脚地址二位数字引脚地址A2A11024B E2PROMAT24C081010A2P1P0R/W一位数字引脚地址一位数字引脚地址A22048B E2PROM2048B E2PROM1010P2P1P0R/W无数字引无数字引8位位I/O口口PCF8574 0100A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A0PCF8574F0111A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A04位位LED驱
24、动控制器驱动控制器SAA106401110A1A0R/W二位数字引脚地址二位数字引脚地址A1A0160段段LCD驱动控制器驱动控制器PCF8576011100A0R/W一位数字引脚地址一位数字引脚地址A0点阵式点阵式LCD驱动控制器驱动控制器PCF8578/79011110A0R/W一位数字引脚地址一位数字引脚地址A04通道通道8位位A/D、1路路D/A转换器转换器PCF89511001A2A1A0R/W三位数字引脚地址三位数字引脚地址A2A1A0日历时钟(内含日历时钟(内含2568RAM)PCF8583 1010 00A0 R/W一位数字引脚地址一位数字引脚地址A05. 几个概念:几个概念:
25、发送器:发送数据到总线上的器件发送器:发送数据到总线上的器件 接收器:从总线上接收数据的器件接收器:从总线上接收数据的器件 主器件:启动数据传送并产生时钟信号的器件主器件:启动数据传送并产生时钟信号的器件 从器件:被主器件寻址的器件从器件:被主器件寻址的器件 多主机:多主机: 同时有多于一个主机尝试控制总线但不破坏报文同时有多于一个主机尝试控制总线但不破坏报文仲裁仲裁 :是一个在有多个主机同时尝试控制总线,但只允许其中一个控:是一个在有多个主机同时尝试控制总线,但只允许其中一个控制总线并使报文不被破坏的过程制总线并使报文不被破坏的过程I2C 总线是双向传输的总线,因此主机和从机都可能成为发送器
26、和接总线是双向传输的总线,因此主机和从机都可能成为发送器和接收器。但是时钟信号收器。但是时钟信号SCL 总是主机产生的。总是主机产生的。注意注意2.2.1 I2C总线总线 (1) I2C总线时序定义:总线时序定义: n起始条件起始条件S :当:当SCL 处于高电平期间,处于高电平期间,SDA 从高电平向低电平跳变时从高电平向低电平跳变时产生起始条件。总线在起始条件产生后便处于忙的状态。产生起始条件。总线在起始条件产生后便处于忙的状态。n停止条件停止条件P :当:当SCL 处于高电平期间,处于高电平期间,SDA 从低电平向高电平跳变时从低电平向高电平跳变时产生停止条件。总线在停止条件产生后处于空
27、闲状态。产生停止条件。总线在停止条件产生后处于空闲状态。 6. I2C总线的操作总线的操作 2.2.1 I2C总线总线(2)I2C 总线上数据的有效性(总线上数据的有效性(Data validity)数据线数据线SDA 的电平状态必须在时钟线的电平状态必须在时钟线SCL 处于高电平期间保持稳定不处于高电平期间保持稳定不变。变。SDA 的电平状态只有在的电平状态只有在SCL 处于低电平期间才允许改变。但是在处于低电平期间才允许改变。但是在I2C 总线的起始和结束时例外。总线的起始和结束时例外。2.2.1 I2C总线总线(3)I2C数据传输的方式数据传输的方式n以字节(以字节(Byte)为单位收发
28、数据,一个字节数据为一帧。首先传输的是数)为单位收发数据,一个字节数据为一帧。首先传输的是数据的最高位(据的最高位(MSB,第,第7 位),最后传输的是最低位(位),最后传输的是最低位(LSB,第,第0 位);位);每传送一个字节后,对方回应一个应答位。每传送一个字节后,对方回应一个应答位。2.2.1 I2C总线总线(4)应答()应答(Acknowledge)n每传输一个字节,要跟一个应答位。接收器接收数据的情况可通过应答位来每传输一个字节,要跟一个应答位。接收器接收数据的情况可通过应答位来告知发送器。应答位的时钟脉冲由主机产生,而应答位的数据状态则遵循告知发送器。应答位的时钟脉冲由主机产生,
29、而应答位的数据状态则遵循“谁接收谁产生谁接收谁产生”的原则,即总是由接收器产生应答位。主机向从机发送数的原则,即总是由接收器产生应答位。主机向从机发送数据时,应答位由从机产生;主机从从机接收数据时,应答位由主机产生。据时,应答位由从机产生;主机从从机接收数据时,应答位由主机产生。n应答位为应答位为0 表示接收器应答(表示接收器应答(ACK),记为),记为A; 应答位为应答位为1 则表示非应答(则表示非应答(NACK),记为),记为/A。(5)I2C总线时序总线时序nI2C总线启动后,传送的字节数没有限制。由主机发停止信号结束传送。总线启动后,传送的字节数没有限制。由主机发停止信号结束传送。n传
30、送过程中,主机可以控制传送过程中,主机可以控制SCL变低,控制总线暂停传送。变低,控制总线暂停传送。I2C总线上数据传送时序总线上数据传送时序2.2.1 I2C总线总线(6 6)数据操作格式)数据操作格式 一次完整的数据操作包括起始(一次完整的数据操作包括起始(S)、发送从机地址()、发送从机地址(SLA R/W)+应答、发送应答、发送数据数据+应答、应答、.、停止(、停止(P)。)。 :主机发送、从机接收。:主机发送、从机接收。 :主机接收、从机发送。:主机接收、从机发送。SA :从机地址高:从机地址高7位。位。A:应答信号;:应答信号;D:写入或读出数据。:写入或读出数据。2.2.1 I2
31、C总线总线主机向从机发送数据的基本格式主机向从机发送数据的基本格式主机从从机接收数据的基本格式主机从从机接收数据的基本格式注意:主机向从机发送最后一个字节的数据注意:主机向从机发送最后一个字节的数据时,从机可能应答也可能非应答,但不管怎时,从机可能应答也可能非应答,但不管怎样主机都可以产生停止条件。样主机都可以产生停止条件。但如果主机在向从机发送数据(甚至包括从但如果主机在向从机发送数据(甚至包括从机地址在内)时检测到从机非应答,则应当机地址在内)时检测到从机非应答,则应当及时停止传输。及时停止传输。(7)I2C总线的软件模拟总线的软件模拟2.2.1 I2C总线总线当选用的单片机带当选用的单片
32、机带 有有I2C总线时(例如总线时(例如ADUC812、C8051FXX等),可直等),可直接利用硬件接利用硬件I2C接口;当所用单片机不带有接口;当所用单片机不带有I2C总线接口时(普通总线接口时(普通51单片单片机),则可以利用机),则可以利用2根根I/O口线来模拟实现口线来模拟实现I2C总线接口功能,一根模拟总线接口功能,一根模拟SDA信号,另一根模拟信号,另一根模拟SCL时序。时序。I2C总线起始信号总线起始信号void Start(void) Sda=1; /首先首先SDA,SCL都为高电平都为高电平Scl=1;delay1us(); /稍作延时稍作延时Sda=0; /在在SCL为高
33、电平时将为高电平时将SDA由高拉低,产生起始信号由高拉低,产生起始信号delay1us();I2C总线停止信号总线停止信号void Stop(void) Sda=0;/首先首先SDA为低,为低,SCL为高为高Scl=1;delay1us();Sda=1; /SCL为高时将为高时将SDA由低由低拉高,产生停止信号拉高,产生停止信号delay1us(); 2.2.1 I2C总线总线I2C总线应答总线应答void Ack(void) Sda=0; /在一个完整的时钟周期内在一个完整的时钟周期内SDA低电平为应答信号低电平为应答信号delay1us();Scl=1;delay1us();Scl=0;I
34、2C总线不应答总线不应答void NoAck(void) Sda=1; /在一个完整的时钟周期内在一个完整的时钟周期内SDA高电平为不应答高电平为不应答delay1us();Scl=1;delay1us();Scl=0;I2C总线写字节,总线写字节,Data为要写的字节为要写的字节void Send(unsigned char Data) unsigned char xdata BitCounter=8; /一个字节为一个字节为8bitunsigned char xdata temp; dotemp=Data;Scl=0;/SCL低电平低电平SDA数据线才能变化数据线才能变化delay1us(
35、);if(temp&0 x80)=0 x80)/从最高位开始从最高位开始Sda=1;elseSda=0;delay1us();Scl=1;delay1us();/接受器件接受数据接受器件接受数据temp=Data1; /左移左移1位,低位移至高位位,低位移至高位Data=temp;BitCounter- -;/共需共需8次循环移位次循环移位while(BitCounter);/不为不为0时继续循环时继续循环Scl=0;2.2.1 I2C总线总线2.2.1 I2C总线总线I2C总线读取字节,读取的字节作为返回值总线读取字节,读取的字节作为返回值unsigned char Read(voi
36、d) unsigned char xdata temp=0;unsigned char xdata temp1=0;unsigned char xdata BitCounter=8;Sda=1;doScl=0; /SCL低电平低电平SDA数据线才能变化数据线才能变化delay1us();Scl=1;/SCL高电平读高电平读SDA数据线数据线delay1us();if(Sda) temp=temp|0 x01; /若若Sda为为1,则,则temp最低位置最低位置1elsetemp=temp&0 xfe; /否则否则temp最低位清最低位清0if(BitCounter-1) temp1=t
37、emp1; /数据左移数据左移 temp=temp1;/先接受的数据为高位先接受的数据为高位BitCounter- -;while(BitCounter);return(temp);(8)应用举例)应用举例24AAXX系列系列EEPROM (24C02)型号型号容量容量/B字节数字节数/页页总线可总线可接片数接片数写保护方写保护方案案24AA0016无无1无无24AA0112881整个阵列整个阵列24AA0225688整个阵列整个阵列24AA04512168整个阵列整个阵列24AA081024168整个阵列整个阵列24AAXX引脚图引脚图引脚功能和引脚功能和定义:定义:VCC:+2.5V-+5
38、V.Vss:地线。地线。SCL:串行时钟。串行时钟。SDA:串行数据串行数据线线,双向;双向;A0、A1、A2: 芯片地址引脚。芯片地址引脚。WP:写保护端。通过此引脚可提供硬件数写保护端。通过此引脚可提供硬件数据保护。据保护。CCV当把当把WP接地时,允许芯片执行一般读接地时,允许芯片执行一般读/写操作;写操作;当把当把WP接到接到 时,时,则对芯片实施写保护则对芯片实施写保护。2.2.1 I2C总线总线24C02性能指标性能指标低至低至1.8V的单电源供电;的单电源供电;低功耗的低功耗的CMOS技术;技术;256 bytes(2568)的存储块;)的存储块; 片内存储单元地址为片内存储单元
39、地址为00-FFH标准标准2线串行接口总线线串行接口总线 ,I2C总线;总线;兼容兼容400kHz (1.8-5.0V);8 bytes的页写入缓存;的页写入缓存;5 ms页写入时间周期;页写入时间周期;硬件写保护。硬件写保护。2.2.1 I2C总线总线24C02芯片的器件地址芯片的器件地址A6A5A4A3设置设置为为1010,A2A1A0与芯片硬件连接有关;与芯片硬件连接有关;对于如图连接,该器件的写地址为对于如图连接,该器件的写地址为A0H,读地址为读地址为A1H。24C02与与80C51的硬件连接的硬件连接 写操作写操作过程:过程:单片机单片机向向2424C C0 02 2某个地址开始的
40、某个地址开始的n n个单元写入个单元写入n n字节数据的过程如下:字节数据的过程如下:器件地址器件地址+0+0:表示写地址;:表示写地址;器件地址器件地址+1+1:表示读地址;:表示读地址;一次写入的字节数一次写入的字节数n n,不能大于芯片一页的字节数(,不能大于芯片一页的字节数(24C0224C02为为8 8字节)字节)读读操作操作过程:过程:单片机单片机从从2424C02C02某个地址开始的某个地址开始的n n个单元,读出个单元,读出n n字节数据的过程如下:字节数据的过程如下:2.2.1 I2C总线总线2.2.1 I2C总线总线24C02自检程序void WrToROM(unsigne
41、d char Data_Write,unsigned char Address)/Data_Write:要写的字节,要写的字节,Address:写入的起始地址写入的起始地址 Start(); Send(0 xa0); /发送从机地址发送从机地址Ack();Send(Address); /发送存储地址发送存储地址Ack();/写写8位位Send(Data_Write);Ack();Stop();2.2.1 I2C总线总线unsigned char RdFromROM(unsigned char Address)/读取数据读取数据unsigned int xdata Temp_Data;Start
42、();Send(0 xa0); /发送从机写地址发送从机写地址Ack();Send(Address); /发送数据存储地址发送数据存储地址Ack();Start();Send(0 xa1); /发送从机读地址发送从机读地址Ack();Temp_Data=Read();/读取读取8位位NoAck();Stop();return Temp_Data;2.2.1 I2C总线总线2.2.1 I2C总线总线#include sbit LED=P10;sbit Sda=P12; /模拟模拟I2C数据传送位数据传送位sbit Scl=P13; /模拟模拟I2C时钟控制位时钟控制位void main (voi
43、d) unsigned char test; WrToROM(0 x55,0 x01); test=RdFromROM(0 x01); if(test=0 x55) LED=0; /接收到接收到0 x55,点亮,点亮LED while(1);2.2.2 SPI 接口接口n同步串行外设接口(同步串行外设接口(SPISPI)构成一种三线串行总线,总线上可以连接多个具)构成一种三线串行总线,总线上可以连接多个具有有SPISPI接口的接口的MCUMCU和接口芯片(如液晶驱动器、和接口芯片(如液晶驱动器、A/D转换器等)。对于具有多转换器等)。对于具有多个主机的连接,在任一瞬间只允许有一个为主控芯片。个
44、主机的连接,在任一瞬间只允许有一个为主控芯片。nSPI是全双工的,即主机在发送的同时也可以在接收数据,传送的速率由主是全双工的,即主机在发送的同时也可以在接收数据,传送的速率由主机编程决定。机编程决定。n三总线为:三总线为:时钟线时钟线SCK(由主机控制);由主机控制);主机输入主机输入/从机输出线从机输出线MISO;主机输出主机输出/从机输入线从机输入线MOSI。每个每个SPISPI芯片还需要片选信号,各芯片的片选信号由主机产生;任何时刻芯片还需要片选信号,各芯片的片选信号由主机产生;任何时刻只能一个只能一个SPISPI芯片的片选信号有效,此时主机可以对该芯片进行操作。芯片的片选信号有效,此
45、时主机可以对该芯片进行操作。2.2.2 SPI 总线总线单主机单主机SPI连接图连接图 2.2.2 SPI 总线总线内部总线内部总线内部总线内部总线数据发送寄存器数据发送寄存器数据发送寄存器数据发送寄存器高高低低数据接收缓冲区数据接收缓冲区数据接收缓冲区数据接收缓冲区SPI移位寄存器移位寄存器SPI移位寄存器移位寄存器MOSIMOSIMISOMISOSPCLKSS主机主机从机从机SSVcc1. SPI接口结构接口结构P1.02. SPI接口引脚接口引脚串行数据线(串行数据线(MISOMISO、MOSIMOSI)nMISOMISO和和MOSIMOSI用于串行接收和发送数据,先高位,后低位。用于串
46、行接收和发送数据,先高位,后低位。串行时钟(串行时钟(SPSCKSPSCK)nSPSCKSPSCK用于同步数据在用于同步数据在MOSIMOSI和和MISOMISO中的输入和输出传送。中的输入和输出传送。nSPSCKSPSCK信号由主机产生;信号由主机产生;8 8个个SPSCKSPSCK传送一个字节数据。传送一个字节数据。nSPSCKSPSCK信号的一个跳变进行数据移位,另一个跳变进行采样。信号的一个跳变进行数据移位,另一个跳变进行采样。从机片选信号(从机片选信号(SSSS)n对于从机,该引脚是片选信号,低电平有效。对于从机,该引脚是片选信号,低电平有效。n对于主机,该引脚要拉到高电平。对于主机
47、,该引脚要拉到高电平。2.2.2 SPI 总线总线MOSISPSCKABCLK1Q0Q7Q6Q5Q4Q3Q2Q74LS164(595)CLR0Q1Q2Q3Q4Q5Q6Q7QABCLKccV主机CLRccV用用74LS164或或74LS595外扩输出接口外扩输出接口DQQ0CLKCLKMOSISPSCK2.2.2 SPI 总线总线3. SPI应用应用74LS164(595)主机可以具有主机可以具有SPI接接口,也可以用口,也可以用I/O口口线软件模拟。线软件模拟。SPI总线外扩接口连接总线外扩接口连接LED数码管数码管2.2.2 SPI 总线总线 O0O1O2SPI总线外扩一个串转并接口芯片,实
48、现与总线外扩一个串转并接口芯片,实现与8位数据的位数据的LCD接口接口2.2.2 SPI 总线总线SPI总线总线A/D转换器转换器MAX7612、D/A转换器转换器MAX531的连接的连接2.2.2 SPI 总线总线SPI具有四种工作模式,取决于时钟极性(具有四种工作模式,取决于时钟极性(CPOL)和时钟相位()和时钟相位(CPHA),使用的最为广泛的是),使用的最为广泛的是SPI0和和SPI3方式。方式。SPI 模式模式CPOLCPHA000101210311CPOL =0, SCK高电平有效;CPOL =1, SCK低电平有效CPHA =0, 数据在有效电平的第一个时钟沿被采样CPHA =
49、1, 数据在有效电平的第二个时钟沿被采样2.2.2 SPI 总线总线2.2.2 SPI 总线总线2.2.2 SPI 总线总线/-/ SPI_defs.h/-/ This file defines the pins used for the SPI device./ The SPI device is mapped to pins P0.0 - P0.3, but can be modified to map to / any of the available GPIO pins on the device.#ifndef SPI_DEFS#define SPI_DEFSsbit MOSI = P00; / Master Out / Slave In (output)sbit MISO = P01; / M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理程序考试题及答案
- 乡村特色产业发展新路径
- 揭示自然界的基本力:摩擦起电与电荷性质课件
- 国际商业美术设计师考试权威指导试题及答案
- 广告设计师证书考试的全新试题解析
- 教资面试故事试题及答案
- 纺织品设计中的市场反应考题及答案
- 社区团购项目全景分析与商业规划
- 汽车以旧换新政策实施路径分析
- 游艺活动测试题及答案
- 主动脉夹层病人的健康宣教
- 2025贵州省专业技术人员继续教育公需科目考试题库(2025公需课课程)
- 《危险化学品企业安全生产标准化规范》专业深度解读与应用培训指导材料之4:5管理要求-5.3 安全生产信息与合规审核(雷泽佳编制-2025A0)
- 《危险化学品企业安全生产标准化规范》专业深度解读与应用培训指导材料之3:5管理要求-5.2 安全生产责任制(雷泽佳编制-2025A0)
- 2025年乡村医生基础医学知识历年真题解析及试题
- 2025年体育产业信息化管理计划
- 2024年内蒙古建投国电准格尔旗能源有限公司招聘考试真题
- 形式发票格式2 INVOICE
- CDR-临床痴呆评定量表
- 设备计算与选型——孙景海
- JGJ_T487-2020建筑结构风振控制技术标准(高清-最新版)
评论
0/150
提交评论