《一种基于SPI协议的IIC扩展通信方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种基于SPI协议的IIC扩展通信方法及装置.pdf(10页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103577368 A (43)申请公布日 2014.02.12 CN 103577368 A (21)申请号 201310555328.5 (22)申请日 2013.11.11 G06F 13/38(2006.01) (71)申请人 东莞市泰斗微电子科技有限公司 地址 523808 广东省东莞市松山湖高新技术 产业开发区总部二路 17 号 A410-A411 室 (72)发明人 王建雄 (54) 发明名称 一种基于 SPI 协议的 IIC 扩展通信方法及装 置 (57) 摘要 一种基于SPI协议的IIC扩展通信方法, 包括 步骤 : 进行 SPI 与 IIC 通信的。
2、端口连接 ; 采用 SPI 信号对 IIC 信号开始条件进行模拟 ; 通过 SPI 协 议对数据进行传输 ; 并使用 SPI 协议对所述数据 进行应答 ; 最后利用 SPI 信号对 IIC 信号进行结 束条件模拟。使得 SPI 扩展协议和 IIC 协议可以 进行通信, 进而增强了设备之间的兼容性。同时, 本发明还提供一种基于 SPI 协议的 IIC 扩展通信 装置。 (51)Int.Cl. 权利要求书 1 页 说明书 4 页 附图 4 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书4页 附图4页 (10)申请公布号 CN 103577368 A CN 1。
3、03577368 A 1/1 页 2 1. 一种基于 SPI 协议的 IIC 扩展通信方法, 其特征在于, 包括 : 进行 SPI 与 IIC 通信的 端口连接 ; 采用 SPI 协议对 IIC 协议开始条件进行模拟 ; 通过 SPI 协议对数据进行传输 ; 并 使用 SPI 协议对所述数据进行应答 ; 最后利用 SPI 协议对 IIC 协议进行结束条件模拟。 2.根据权利要求1所述的通信方法, 其特征在于, 所述SPI协议对IIC协议进行模拟是 在时钟信号 SCLK 产生第一个时钟前, 数据信号 MOSI(或 MISO) 变为低电平。 3. 根 据 权 利 要 求 1 所 述 的 通 信 方。
4、 法,其 特 征 在 于,所 述 SPI 协 议 对 IIC 协 议 进 行 开 始 条 件 模 拟 是 在 时 钟 信 号 SCLK 产 生 第 一 个 时 钟 前, 选 择 信 号 和数据信号 MOSI 变为低电平, 所述 MOSI(或 MISO) 数据信号在所述选择信号变为低 电平前发生。 4. 根据权利要求 2 所述的通信方法, 其特征在于, 所述利用 SPI 协议对 IIC 协议进行 结束条件模拟是在数据传输结束后, 发送高电平的 SCLK 信号并在此期间发送一个 MOSI (或 MISO) 由低变高的信号。 5.根据权利要求3所述的通信方法, 其特征在于, 所述利用SPI协议对II。
5、C协议进行结 束条件模拟是在数据传输结束后, 当选择信号变为高电平, 在发送高电平的SCLK信号并 在此期间发送一个 MOSI(或 MISO) 由低变高的信号。 6. 根据权利要求 1-5 所述的通信方法, 其特征在于, 在所述利用 SPI 协议对所述 IIC 数据进行应答的步骤中, 所述 SPI 需要扩展应答位 ; 所述应答位为主机 (或从机) 发送第 9n (n=1) 个数据时需要检测从机 (或主机) 是否在该位发送数据为低电平。 7.一种基于SPI协议的IIC扩展通信装置, 其特征在于, 第一控制模块采用SPI接口与 第二控制模块的 IIC 接口进行通信 ; 所述 SPI 接口在时钟信号。
6、 SCLK 产生第一个时钟前, 数 据信号 MOSI 变为低电平 ; 所述 SPI 接口在结束传输数据后发送高电平的 SCLK 信号并在此 期间发送一个 MOSI(或 MISO) 由低变高的信号。 8.根据权利要求7所述的通信方法, 其特征在于, 所述SPI接口在发送数据时需要扩展 应答位 ; 所述应答位为主机 (或从机) 发送第 9n(n=1) 个数据时需要检测从机 (或主机) 是 否在该位发送数据为低电平。 9.一种基于SPI协议的IIC扩展通信装置, 其特征在于, 第一制模块采用SPI接口与第 一控制模块的 IIC 接口进行通信 ; 所述 SPI 接口在时钟信号 SCLK 产生第一个时钟。
7、前, 数据 信号MOSI变为低电平 ; 所述SPI接口在结束传输数据后, 在选择信号变为高电平后发送 高电平的 SCLK 信号和发送 MOSI(或 MISO) 由低变高的信号。 10. 根据权利要求 9 所述的通信方法, 其特征在于, 所述 SPI 接口在接收数据时需要扩 展应答位 ; 所述应答位为主机 (或从机) 发送第 9n(n=1) 个数据时需要检测从机 (或主机) 是否在该发送数据时为低电平。 权 利 要 求 书 CN 103577368 A 2 1/4 页 3 一种基于 SPI 协议的 IIC 扩展通信方法及装置 技术领域 0001 本发明涉及硬件接口领域, 特别涉及一种基于 SPI。
8、 协议的 IIC 扩展通信方法及装 置。 背景技术 0002 现今的电子设备大多支持SPI (Serial Peripheral Interface串行外设接口) 协议或者 IIC(Inter-Integrated Circuit集成电路总线) 协议, 而现有串行通信方式中 SPI 协议不能与 IIC 协议进行通信。如图 1 所示的 IIC 协议的端口连接方式以及图 2 所示 的 SPI 协议之间的端口连接方式。这使得设计工程师要么放弃设备的兼容性而仅支持一种 协议, 要么单独设计两种协议而增加设备的成本。这种协议之间的不兼容性给设备之间的 通信带来了极大的困难。 发明内容 0003 基于上述。
9、情况, 本发明提出了一种基于SPI协议的IIC扩展通信方法, 该方法主要 利用进行 SPI 与 IIC 通信的端口连接 ; 利用 SPI 协议对 SPI 协议开始条件进行模拟 ; 利用 SPI 协议对 IIC 数据进行传输 ; 利用 SPI 协议对所述 IIC 数据进行应答 ; 利用 SPI 协议对 SPI协议进行结束条件模拟。 通过这个方式可以使得SPI协议或者IIC协议可以进行通信, 进而增强了设备之间的兼容性。 0004 一种基于 SPI 协议的 IIC 扩展通信方法, 包括步骤 : 进行 SPI 与 IIC 通信的端口 连接 ; 采用 SPI 协议对 IIC 协议开始条件进行模拟 ; 。
10、通过 SPI 协议对数据进行传输 ; 并使用 SPI 协议对所述数据进行应答 ; 最后利用 SPI 协议对 IIC 协议进行结束条件模拟。 0005 所述 SPI 协议对 IIC 协议进行模拟是在时钟信号 SCLK 产生第一个时钟前, 数据信 号 MOSI(或 MISO) 变为低电平。 0006 所述利用 SPI 协议对 IIC 协议进行结束条件模拟是在数据传输结束后, 发送高电 平的 SCLK 信号并在此期间发送一个 MOSI(或 MISO) 由低变高的信号。 0007 进一步地, 所述 SPI 协议对 IIC 协议进行开始条件模拟是在时钟信号 SCLK 产生第 一个时钟前, 选择信号 和数。
11、据信号 MOSI 变为低电平, 且所述 MOSI(或 MISO) 数据信号 在所述选择信号变为低电平前发生。 0008 进一步地, 所述利用SPI协议对IIC协议进行结束条件模拟是在数据传输结束后, 当选择信号变为高电平, 在发送高电平的 SCLK 信号并在此期间发送一个 MOSI (或 MISO) 由低变高的信号。 0009 进一步地, 在所述利用 SPI 协议对所述 IIC 数据进行应答的步骤中, 所述 SPI 需要 扩展应答位 ; 所述应答位为主机 (或从机) 发送第 9n(n=1) 个数据时需要检测从机 (或主 机) 是否在该位发送数据为低电平 ; 一种基于 SPI 协议的 IIC 扩。
12、展通信装置, 其中第一控制模块采用 SPI 接口与第二控制 说 明 书 CN 103577368 A 3 2/4 页 4 模块的 IIC 接口进行通信 ; 所述 SPI 接口在时钟信号 SCLK 产生第一个时钟前, 数据信号 MOSI 变为低电平 ; 所述 SPI 接口在结束传输数据后发送高电平的 SCLK 信号并在此期间发 送一个 MOSI(或 MISO) 由低变高的信号。 0010 进一步地, 第一制模块采用 SPI 接口与第一控制模块的 IIC 接口进行通信 ; 所述 SPI 接口在时钟信号 SCLK 产生第一个时钟前, 数据信号 MOSI 变为低电平 ; 所述 SPI 接口 在结束传输。
13、数据后, 在选择信号变为高电平后发送高电平的 SCLK 信号和发送 MOSI(或 MISO) 由低变高的信号。 0011 进一步地, 所述 SPI 接口在接收数据时需要扩展应答位 ; 所述应答位为主机 (或从 机) 发送第 9n(n=1) 个数据时需要检测从机 (或主机) 是否在该发送数据时为低电平。 0012 相对于现有技术, 本发明提供的一种基于SPI协议的IIC扩展通信方法, 可以应用 于现有SPI与IIC的接口设计中。 使用本方法使得SPI扩展协议和IIC协议可以进行通信, 进而增强了设备之间的兼容性。 附图说明 0013 图 1 是现有的 IIC 协议的端口连接方式示意图 ; 图 2。
14、 是现有 SPI 协议之间的端口连接方式示意图 ; 图 3 是本发明一种基于 SPI 协议的 IIC 扩展通信方法实施例的流程示意图 ; 图 4 是本发明 SPI 扩展后与 IIC 通信的端口连接方式示意图 ; 图 5 是本发明 SPI 的 IIC 开始条件部分扩展信号变化示意图 ; 图 6 是本发明 SPI 主机发送 IIC 的开始条件和数据字段示意图 ; 图 7 是本发明 SPI 主机给 IIC 从机发送一个字节并检测应答示意图 ; 图 8 是本发明 SPI 的 IIC 结束条件部分扩展信号变化示意图 ; 图 9 是本发明基于 SPI 协议的 IIC 扩展通信装置实施例的结构示意图。 具体。
15、实施方式 0014 以下结合其中的较佳实施方式对本发明方案进行详细阐述。 0015 图 3 中示出了本发明一种基于 SPI 协议的 IIC 扩展通信方法实施例的流程示意 图。 0016 S101 : 进行 SPI 与 IIC 通信的端口连接。 0017 SDA 信号为 IIC 的数据信号线, SCL 为 IIC 的时钟信号。当 IIC 与 IIC 自身之间进 行通信时, 其数据信号和时钟信号应相互进行连接 ; MOSI(/MISO) 信号为 SPI 协议的数据 信号, SCLK 信号为 SPI 协议中的时钟信号。如图 4 所示, 当 SPI 模块与 IIC 模块之间按照 IIC 协议进行通信时。
16、, SCL 与 SCLK 对应连接, MOSI(/MISO) 与 SDA 对应连接。由于 IIC 协 议中没有选择信号, 所以 SPI 的信号不需要与 IIC 模块连接。 0018 S102 : 采用 SPI 协议对 SPI 协议开始条件进行模拟。 0019 图 5 为 SPI 的 IIC 开始条件部分扩展信号变化示意图。图中, SCLK 为时钟信号, MOSI 为 SPI 输出数据信号,为从机选择信号。 0020 一般来说, 在空闲状态时, SPI 的时钟信号 SCLK 和数据信号 MOSI(或 MISO) 均为 说 明 书 CN 103577368 A 4 3/4 页 5 高电平。IIC 。
17、的开始条件为 : 当其时钟信号为高电平时数据信号有一个从高到低的电平跳 变。本发明采用了 SPI 协议对 SPI 协议协议进行模拟, 所述 SPI 协议对 IIC 开始条件模拟 是指在时钟信号 SCLK 产生第一个时钟前, 数据信号 MOSI 变为低电平。 0021 作为较优的实施例子, 当在空闲状态时, SPI 的时钟信号 SCLK、 数据信号 MOSI(或 MISO) 和从机选择信号均为高电平。在时钟信号 SCLK 产生第一个时钟前, SPI 模块产生 的选择信号和数据信号 MOSI 均变为低电平, 且所述 MOSI 数据信号在所述选择信号 变为低电平前发生。这里加入选择信号是为了使该协议。
18、与原 SPI 协议进行兼容, 需要说 明的是, SPI 扩展后的协议仅与 SPI 原协议中帧长为一个字节的特殊形式兼容。 0022 S103 : 通过 SPI 协议对所述数据进行传输。 0023 如图 6 所示, SPI 有四种工作模式 (各模式的区别是时钟在无效状态时的电平不 同, 和数据发送和采样时的时钟沿不一致) , 但仅在模式三下发送的数据才能被 IIC 模块正 确接收。当 SPI 工作在工作模式三下给从机发送数据。此时, 数据在时钟下降沿被发送出 去, 从机在时钟上升沿采样数据。数据的传输为对现有 SPI 协议的应用。本实施例的主机 指 SPI, 从机指 IIC。 0024 S104。
19、 : 使用 SPI 协议对所述数据进行应答。 0025 如图 7 所示, 主机发送 (或者接收) 第 9n(n=1) 个数据时需要检测从机应答 (或者 对从机应答) , 第 9n 位称为应答位。主机通过在数据线 MOSI(或 MISO) 上产生低电平实现 对从机的应答, 通过检测在该位时从机是否发送低电平来检测从机是否做出应答。 0026 主机发送完数据时需要检测从机是否有应答 ; 反过来, 从机发送完数据后也需要 检测主机是否有应答。 0027 S105 : 利用 SPI 协议对 IIC 协议进行结束条件模拟。 0028 如图 8 所示, 利用 SPI 协议对 IIC 协议进行结束条件模拟是。
20、指发送一个高电平的 SCLK 信号期间发送一个 MOSI(或 MISO) 由低变高的信号。 0029 为了对应加入选择信号是使该协议与原SPI协议进行兼容的例子, 这里也可以 采用当选择信号变为高电平后, 发送高电平的 SCLK 信号期间发送一个 MOSI(或 MISO) 由低变高的信号。 0030 图 9 中示出了本发明的一种基于 SPI 协议的 IIC 扩展通信装置实施例的结构示意 图, 此装置中的信号处理方式与方法实施例中的信号处理方式对应。以下进行展开叙述 : 第一控制模块和第二控制模块在通信时, 通信线需接上拉电阻。 0031 第一控制模块采用 SPI 接口与第二控制模块的 IIC 。
21、接口进行通信 ; 所述 SPI 接口 在时钟信号SCLK产生第一个时钟前, 数据信号MOSI变为低电平 ; 所述SPI接口在结束传输 数据前发送高电平的 SCLK 信号和发送一个 MOSI(或 MISO) 由低变高的信号。 0032 作为更好的实施例子, 此处加入选择信号是使该协议与原 SPI 协议进行兼容, 第一控制模块采用 SPI 接口与第二控制模块的 IIC 接口进行通信 ; SPI 接口在时钟信号 SCLK 产生第一个时钟前, 数据信号 MOSI 变为低电平 ; SPI 接口在结束传输数据后, 在选择 信号变为高电平后发送高电平的 SCLK 信号并在此期间发送 MOSI(或 MISO)。
22、 由低变高的 信号。 说 明 书 CN 103577368 A 5 4/4 页 6 0033 上述的 SPI 接口在接收数据时需要扩展应答位 ; 所述应答位为主机 (或从机) 发送 第 9n(n=1) 个数据时需要检测从机 (或主机) 是否在该位发送数据为低电平。 0034 以上所述实例仅表达了本发明的几种实施方式, 其描述较为具体和详细, 但并不 能因此而理解为对本发明专利范围的限制。应当指出的是, 对于本领域的普通技术人员来 说, 在不脱离本发明构思的前提下, 还可以做出若干变形和改进, 这些都属于本发明的保护 范围。因此, 本发明专利的保护范围应以所附权利要求为准。 说 明 书 CN 103577368 A 6 1/4 页 7 图 1 图 2 说 明 书 附 图 CN 103577368 A 7 2/4 页 8 图 3 图 4 说 明 书 附 图 CN 103577368 A 8 3/4 页 9 图 5 图 6 图 7 图 8 说 明 书 附 图 CN 103577368 A 9 4/4 页 10 图 9 说 明 书 附 图 CN 103577368 A 10 。