(5)I2C总线的10bit地址以及通用广播地址

发布时间:2023-06-19  

其实,10bit地址我没用过,通用广播地址更没用过.通用广播地址应该是在多个mcu之间用i2c进行通信时使用的.虽说没用到,但还是做了翻译,说不定以后有机会用到:


10bit地址 10bit的寻址扩展可能寻址的数目.有7bit地址和10bit地址的设备可以连接到相同的I2C总线上,而且7bit寻址和10bit寻址都可以用在所有的总线速度模式下.不过,10bit寻址用的不多. 10bit的从机地址由开始条件(S)或重复开始条件(Sr)后的两个字节组成.第一个字节的前7位是1111 0XX,XX是10bit地址的最高有效位的前两位.第一个字节的第8bit是读写位,决定传输方向. 尽管1111 XXX有8种可能的组合,然后只有1111 0XX这四种可以用于10bit寻址.剩下的1111 1XX这四种是为将来I2C扩展用的. 前面描述的用于7bit寻址的读写格式都适用于10bit寻址.详情如下: 1.主-发送器传输到从-接收器(10bit从机地址)  从图中看出传输方向不变.当接收到开始条件后的10bit地址,从机就和它自己的地址比较从机地址的第一个字节(1111 0XX),并检查第八个bit(读写位)是否为0.有可能多个设备都匹配并产生应答(A1).接下来所有从机开始匹配自己地址与第二个字节的8个bit(XXXX XXXX),这时就只有一个从机匹配并产生应答(A2).被主机寻址匹配的从机会保持被寻址的状态直到接收到终止条件或者是重复开始条件后跟着一个不同的从机地址. 2.主-接收器从从-发送器接收数据(10bit从地址) 在第二个读写位之后传输方向就会改变.  在第二个应答A2之前,处理过程与上面的主-发送器寻址从-接收器一致.在重复开始条件(Sr)之后,匹配的从机会保持被寻址上的状态.这个从机会检查Sr之后的第一个字节的前7bit是否正确,然后测试第8bit是否为1(读).如果这也匹配的话,从机就认定它被作为一个发送器被寻址到了并产生应答A3.从-发送器会保持被寻址的状态知道接收到终止条件(P)或者重复开始条件(Sr)跟着一个不同的从机地址.然后这个时候的重复开始条件下,所有的从机会比较它们的地址与11110XX比较并测试第八位(读写位).然而它们不会寻址到,因为对于10bit设备,读写位是1,或者对于7bit的设备,1111 0XX的从机地址不匹配.


保留地址 下表是保留的两组地址的描述:  [1]通用广播地址是用来包括软件复位的几个功能 [2]没有设备可以应答开始字节 [3]CBUS地址是保留的,使得同一个系统可CBUS总线兼容的设备和I2C总线兼容的设备.I2C兼容的设备不允许响应这个地址 [4]为不同总线格式保留的
通用广播地址 通用广播地址是用来同时寻址所有连接到I2C总线上的设备.如果一个设备在广播地址时不需要数据,它可以不产生应答来忽略.如果一个设备从通用广播地址请求数据,它可以应答并当作一个从-接收器.当一个或多个设备响应时主机并不知道有多少个设备应答了.每一个可以处理这个数据的从-接收器可以响应第二个字节.从机不处理这些字节的话,可以响应NA.如果一个或多个从机响应,主机就无法看到NA.通用广播地址的含义一般在第二个字节中指明.  有两种情况需要考虑: 1.最低有效位B是0 2.最低有效位B是1 当B是0,第二个字节有如下的定义: 1.0000 0110(06h):复位并通过硬件写从机地址的可编程部分.在接收到这样的2个字节时,所有可以响应这个广播地址的设备将复位并进入地址的可编程部分.要采取预防措施来确保设备不会在加上电源电压后将SDA或SCL拉低,因为这些低电平会阻塞总线. 2.0000 0100(04h):通过硬件写从机地址的可编程部分.行为同上,但设备不复位 3.0000 0000(00h):这个不应该作为第二个字节使用 编程过程的顺序参考相应设备的datasheet

软件复位 在通用广播(0000 0000)之后发送0000 0010(06h)作为第二个字节会引起软件复位.这个特性是可选的,不是所有的设备都会响应这个命令.在接收到这样的2个字节时,所有可以响应这个广播地址的设备将复位并进入地址的可编程部分.要采取预防措施来确保设备不会在加上电源电压后将SDA或SCL拉低,因为这些低电平会阻塞总线.


开始字节 微控制器有两种方式连接到I2C总线上.有片上的硬件I2C总线接口的微控制器可以变成为只接收总线的中断请求.当设备没有这样的接口,它必须要通过软件手段来检测总线.很明显,微控制器检测的时间或者轮询总线的时间越多,实现自己功能的时间就越少. 因此快速硬件设备和依赖软件轮询的相对慢速微控制器是有速度差别的. 在这种情况下,数据传输前有一个比正常时间长很多的起始过程.起始过程组成如下: 一个开始条件(S) 一个开始字节(0000 0001) 应答位(ACK) 重复的开始条件(Sr) 


主机发送完开始条件后,发送开始字节(0000 0001).另外的微控制器可以以低采样率来采样SDA线知道开始字节的7个0中的一个被侦测到.在侦测到SDA线的低电平后,微控制器可以切换到更高的采样率来探测用于同步的重复开始条件. 在开始字节后一个应答相关的时钟脉冲产生.设备不允许应答开始字节.


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    和电流的影响。较高的电压和电流可以带动电机更快地运动。   总之,直线电机的速度因类型、工作负载、控制方式、电源电压和电流等因素而异,需要根据具体的应用需求选择适合的直线电机类型和控制方式。   直线电机的功率一般是多少......
    等其他因素也需要考虑在内。   总之,选择变频调速电动机的变压器需要综合考虑多个因素,根据具体需求进行选择。建议用户在选择前咨询专业技术人员或者工程师,以确保选用合适的方案。   变频器的工作电压是多少......
    力矩电机控制器输出电压是多少;根据国家电网各区域的情况有所不同,输出的电压亦各不相同。一般常用的有以下几种: (1)3AC220V50Hz/60Hz输入,输出3AC0~210V (2......
    板子焊好后如果出现电源和地短路的情况也可以首先排除是板子本身的问题。 2、在焊接硬件时,首先先焊接电源部分,然后测试,排除电源短路等情况后,上电测量电压是否正确;对于电源要求比较高的某些电路要测试电源芯片的输出电压是......
    总线电压是CAN总线的CAN_H或者CAN_L 对各自CAN节点地的电压。 三、CAN总线网络拓扑结构设计 CAN总线是一种多主总线,一旦有总线闲置,任意一个CAN节点均可向总线发送数据。CAN总线......
    入的三相IGBT的耐压是1200伏,经常要求在800伏以内工作。考虑到如果电压上升,会有一个惯性问题,就是如果你让制动电阻马上工作,总线电压不会很快下降,所以很多VFD都是......
    设计就会非常顺利。如果使用大量具有不同 ESL 值的去耦电容和相邻平面,将有助于降低 PDN 阻抗,从而使电源总线电压波动和输出信号的抖动保持在一个较低的水平。 在所有设计挑战中,目标......
    比可以达到1.15(比SPWM提高了15%)。更通俗的理解SVPWM的调制比提升,就是输出的线电压峰值能等于直流母线电压,而SPWM最高能输出的电压峰值为直流母线电压的sqrt(3)/2. SVPWM的数......
    知道电子是从阴极发射的, 所以下面通过实验测试一下对于阴极灯丝加热之后, 紫外线灯管的击穿电压是多少。本文引用地址: 01 灯丝温度 一、前言    在昨天测试紫外线灯管击穿电压实验中, 灯丝没有加热。 对应的击穿电压......
    为2.4伏左右,两线电压之和为5伏,CAN总线终点都是120欧电阻。 双绞线将每个节点连接在同一个网络下,各自拥有并只收发自己的报文信息编码,这就是CAN总线的应用. 同一......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>