CN109446144A - 一种支持用户协议的通用i2c总线控制器 - Google Patents
一种支持用户协议的通用i2c总线控制器 Download PDFInfo
- Publication number
- CN109446144A CN109446144A CN201811264099.0A CN201811264099A CN109446144A CN 109446144 A CN109446144 A CN 109446144A CN 201811264099 A CN201811264099 A CN 201811264099A CN 109446144 A CN109446144 A CN 109446144A
- Authority
- CN
- China
- Prior art keywords
- bus
- data
- module
- general purpose
- control unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
本发明公开一种支持用户协议的通用I2C总线控制器,包括:微控制器接口模块(1)、工作寄存器阵列模块(2)、双端口数据存储器模块(3)、同步时序信号生成器模块(4)和I2C总线接口时序生成器模块(5),本发明能够将x80系列微控制器和各种具有I2C总线接口的数字集成电路器件无缝连接在一起,构成器件之间的I2C总线通讯链路,在用户***上电复位正常工作后,通过工作模式配置参数,用户***可将通用I2C总线控制器配置成主器件,主动发起并控制I2C总线上的数据通讯过程,也可将通用I2C总线控制器配置成从器件,被动接受I2C总线上其它主控制器的控制,从而配合主控制器完成I2C总线上的数据通讯过程。
Description
技术领域
本发明涉及一种通用I2C总线控制器,特别是一种支持用户协议的通用I2C总线控制器。
背景技术
I2C即Inter-Integrated Circuit,亦称集成电路内连接总线,是一种简单有效的两线式双向串行数据通讯总线,主要用于微处理器与各种***数字集成电路器件之间的通讯。上世纪八十年代,I2C总线首先由荷兰飞利浦半导体公司即NXP公司开发,并于世纪在九十年代初期发布了I2C总线技术规范1.0版本,由此取得了I2C总线的专利权。上世纪九十年代末,随着数字集成电路及其应用技术的发展,飞利浦公司又发布了I2C总线技术规范2.0版,对I2C总线的功能和性能进行了提升,满足了数字电路使用少量端口引脚即可实现高速数据传输和低功耗的需求。本世纪初,该I2C总线技术规范2.1版又公开发布,使I2C总线的功能和性能得到了进一步完善和扩展。尽管I2C总线技术规范的版本不断升级,但技术上还是全面保持了对以前版本的兼容性。
I2C总线提供了较完善的总线协议和最简单的串行连接方式,为各种应用***设计提供了一种完善的集成电路间的串行总线扩展技术,大大简化了应用***的硬件设计,为实现应用***的模块化设计提供了极为有利的条件。I2C总线由两根信号线组成,多个器件可同时挂接在同一个I2C总线上,不同器件之间由不同的地址来区分的,这既节省了集成电路芯片的I/O管脚,也节省了用户***PCB板的面积。I2C总线电气兼容性好,各器件之间以开漏的I/O管脚相互联接,这样只要选取适当的上拉电阻就能轻易实现3V/5V逻辑电平之间的兼容。I2C总线支持多种通信方式,除了一主多从这种最常见的通信方式,还支持多主机通信、双主机通信、以及广播模式等。I2C总线通信速率也非常高,标准模式下,I2C总线的数据传输速率为100kbps,快速模式下可达到400kbps,同时兼顾低速率数据通信。并且I2C总线协议简单,容易实现,很容易就能将I2C总线接口控制逻辑放入定制集成电路中。因此,I2C总线技术一经公开,即受到各个定制集成电路设计生产厂家的大力欢迎。目前,许多定制集成电路设计生产厂家,包括半导体巨头德州仪器即TI公司、英特尔、意法半导体即ST公司、美国国家半导体即National Semiconductor公司、英飞凌科技等,已经取得了I2C总线的使用授权,并将I2C总线应用在了LCD驱动控制器、I/O接口控制器、数据存储器、A/D、D/A转换器,以及温度传感器等多种定制集成电路器件中,实现了这些器件与微处理器之间的高速数据通讯,从而使I2C总线成为了国际上通用的一种总线标准。
但是,有些微处理器中没有集成I2C总线接口,对于由这种微处理器构成的用户***,目前通用的做法是利用微处理器上开漏的I/O管脚,通过微处理器监控程序,模拟实现一种I2C总线接口。另一方面,定制集成电路设计生产厂家在遵守I2C总线技术规范的同时,也根据自家集成电路器件的技术特点,对I2C总线接口进行了本地化设计,通过简化I2C总线通讯协议,提高自家器件与微处理器之间数据通讯的速度和效率,这就使得不同厂家的集成电路器件,尽管也采用了I2C总线接口,但由于器件内部的I2C总线控制器所实现的I2C总线通讯协议不完全一致,因此,这样两种器件就不能连接在一起,也就不能实现两个器件之间通过I2C总线的数据通讯。
发明内容
本发明目的在于提供一种支持用户协议的通用I2C总线控制器,解决I2C总线接口用户协议不一致时,不同厂家定制集成电路之间I2C接口的硬件连接问题。
一种可支持用户协议的通用I2C总线控制器,包括:微控制器接口模块、工作寄存器阵列模块、双端口数据存储模块、同步时序信号生成模块和I2C总线接口时序生成模块。
微控制器接口模块经内部连线与工作寄存器阵列模块和双端口数据存储模块相连;工作寄存器阵列模块经内部连线与同步时序信号生成模块和I2C接口时序生成模块相连;双端口数据存储模块经内部连线与I2C总线接口时序生成模块相连;同步时序信号生成模块经内部连线与双端口数据存储模块和I2C总线接口时序生成模块相连。
微控制器接口模块的功能为:实现可编程逻辑器件配置器与x86系列微控制器控制总线、地址总线和数据总线的硬件连接,或者接受x86系列微控制器输入的控制命令、参数和数据,或者将可编程逻辑器件配置器的内部工作状态信息或数据传送给x86系列微控制器。
工作寄存器阵列模块的功能为:接收并存放微控制器接口模块传送的***控制命令、参数和数据,实现x86系列微控制器对通用I2C总线控制器工作参数的配置和工作过程的控制,同时,记录通用I2C总线控制器的工作状态信息和数据,并传送给微控制器接口模块。
双端口数据存储模块的功能为:接收微控制器接口模块传送的微控制器控制信号和数据,存储用户***需要交换的信息数据,或是存储外部***经I2C总线传送进来的信息数据,供微控制器接口模块读取。
同步时序信号生成模块的功能为:按照工作寄存器阵列模块传送的工作参数和命令,产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线控制器内部各个模块。
I2C总线接口时序生成模块的功能为:根据工作寄存器阵列模块中记录的通用I2C总线控制器的工作参数和命令,自动生成I2C总线接口时序信号和配套的双端口数据存储模块端口操作信号。
当用户***将通用I2C总线控制器被配置为I2C总线主器件时,I2C总线接口时序生成模块主动发起并控制I2C总线上的数据通讯过程,并根据用户***的命令,或者将双端口数据存储模块中的数据从I2C总线上传输出去,或者从I2C总线上接收数据,并存放到双端口数据存储模块中。
当用户***将通用I2C总线控制器配置为I2C总线从器件时,I2C总线接口时序生成模块被动接受I2C总线上其它主控制器的控制,并根据I2C总线上的命令,或者将双端口数据存储模块中的数据从I2C总线上传输出去,或者从I2C总线上接收数据,并存放到双端口数据存储模块中。
当I2C总线接口时序生成模块完成一次数据通讯操作后,自动生成“一次数据交换操作完毕”中断请求信号。
当通过外部引脚电路,将通用I2C总线控制器设置为I2C总线主控制器时,用户***上电复位后,通用I2C总线控制器按工作寄存器阵列模块缺省配置的工作参数开始工作,并处于空闲状态,等待用户***通过微控制器接口模块输入配置参数、通讯数据或控制命令;当接收到用户***发来的“传送数据命令”时,通用I2C总线控制器按当前工作寄存器阵列模块配置的工作参数,由同步时序信号生成模块产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线接口时序生成模块,最后由I2C总线接口时序生成模块自动产生I2C总线时序信号SDA和SCK,从而将双端口数据存储模块中指定地址处开始和指定长度的信息数据,依次按位从I2C总线端口上传送出去,待全部指定数据传输完毕后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令;当接收到用户***发来的“接收数据命令”时,通用I2C总线控制器按当前工作寄存器阵列模块配置的工作参数,由同步时序信号生成模块产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线接口时序生成模块,然后由I2C总线接口时序生成模块监视I2C总线时序信号SDA和SCK,并按I2C总线协议,按位依次从I2C总线端口接收外部***传送进来的数据,最后由双端口数据存储模块将接收到的数据依次存放到指定地址处开始的连续存储单元中,待I2C总线上的数据全部接收完毕,或者是接收到指定长度的数据后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令。
当通过外部引脚电路,将通用I2C总线控制器设置为I2C总线从控制器时,用户***上电复位后,通用I2C总线控制器按工作寄存器阵列模块缺省配置的工作参数开始工作,并处于空闲状态,等待用户***通过微控制器接口模块输入配置参数、通讯数据或控制命令,同时监视I2C总线上信号的变化;当接收到外部主控制器发来的“启动一次数据传送操作”时,通用I2C总线控制器按当前工作寄存器阵列模块配置的工作参数,由I2C总线接口时序生成模块5自动监视I2C总线上时序信号SDA和SCK,并根据从I2C总线上接收到的总线通讯命令执行相应的数据传送操作;当总线通讯命令为“读存储单元数据命令”时,由同步时序信号生成模块产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给双端口数据存储模块和I2C总线接口时序生成模块,当I2C总线接口时序生成模块接收到有效的存储器数据地址后,控制双端口数据存储模块将指定地址中的数据传送给I2C总线接口时序生成模块,最后由I2C总线接口时序生成模块将双端口数据存储模块中指定单元中的信息数据,依次按位从I2C总线端口上传送出去,待全部指定数据传输完毕后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待外部主控制器发出新的指令;当总线通讯命令为“写存储单元数据命令”时,由同步时序信号生成模块产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给双端口数据存储模块和I2C总线接口时序生成模块,当I2C总线接口时序生成模块接收到有效的存储器数据地址和数据后,控制I2C总线接口时序生成模块将接收到的地址和数据传送给双端口数据存储模块,最后由双端口数据存储模块将接收到的数据依次存放到双端口数据存储模块指定地址处开始的连续存储单元中,待I2C总线上的数据全部接收完毕,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令。
本发明充分考虑了x86系列微控制器、各种定制集成电路器件I2C总线接口的技术特点,通过通用I2C总线控制器,不仅对内部没有I2C总线接口的x86系列微处理实现了I2C总线接口扩展,而且通过向工作寄存器模块写入合适的配置字,使用户***可能根据自身特点和当前需要,对通用I2C总线控制器进行配置,从而实现不同数据通讯方式的I2C总线通讯协议,为本地化后的定制集成电路与微处理器之间的I2C总线接口连接,提供一种可靠的连接方式。
附图说明
图1一种支持用户协议的通用I2C总线控制器组成示意图。
1.微控制器接口模块 2.工作寄存器模块 3.双端口数据存储模块 4.同步时序生成模块5.I2C总线接口时序生成模块
具体实施方式
一种可支持用户协议的通用I2C总线控制器,包括:微控制器接口模块1、工作寄存器模块2、双端口数据存储模块3、同步时序信号生成模块4和I2C总线接口时序生成模块5。其中:
微控制器接口模块1经内部连线与工作寄存器阵列模块2和双端口数据存储模块3相连;工作寄存器阵列模块2经内部连线与同步时序信号生成模块4和I2C接口时序生成模块5相连;双端口数据存储模块3经内部连线与I2C总线接口时序生成模块5相连;同步时序信号生成模块4经内部连线与双端口数据存储模块3和I2C总线接口时序生成模块5相连。
微控制器接口模块1的功能为:实现可编程逻辑器件配置器与x86系列微控制器控制总线、地址总线和数据总线的硬件连接,或者接受x86系列微控制器输入的控制命令、参数和数据,或者将可编程逻辑器件配置器的内部工作状态信息或数据传送给x86系列微控制器。
工作寄存器模块2的功能为:接收并存放微控制器接口模块1传送的***控制命令、参数和数据,实现x86系列微控制器对通用I2C总线控制器工作参数的配置和工作过程的控制,同时,记录通用I2C总线控制器的工作状态信息和数据,并传送给微控制器接口模块1。
双端口数据存储模块3的功能为:接收微控制器接口模块1传送的微控制器控制信号和数据,存储用户***需要交换的信息数据,或是存储外部***经I2C总线传送进来的信息数据,供微控制器接口模块1读取。
同步时序信号生成模块4的功能为:按照工作寄存器模块2传送的工作参数和命令,产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线控制器内部各个模块。
I2C总线接口时序生成模块5的功能为:根据工作寄存器模块2中记录的通用I2C总线控制器的工作参数和命令,自动生成I2C总线接口时序信号和配套的双端口数据存储模块3端口操作信号。
当用户***将通用I2C总线控制器被配置为I2C总线主器件时,I2C总线接口时序生成模块5主动发起并控制I2C总线上的数据通讯过程,并根据用户***的命令,或者将双端口数据存储模块3中的数据从I2C总线上传输出去,或者从I2C总线上接收数据,并存放到双端口数据存储模块3中。
当用户***将通用I2C总线控制器配置为I2C总线从器件时,I2C总线接口时序生成模块5被动接受I2C总线上其它主控制器的控制,并根据I2C总线上的命令,或者将双端口数据存储模块3中的数据从I2C总线上传输出去,或者从I2C总线上接收数据,并存放到双端口数据存储模块3中。
当I2C总线接口时序生成模块5完成一次数据通讯操作后,自动生成“一次数据交换操作完毕”中断请求信号。
当通过外部引脚电路,将通用I2C总线控制器设置为I2C总线主控制器时,用户***上电复位后,通用I2C总线控制器按工作寄存器模块2缺省配置的工作参数开始工作,并处于空闲状态,等待用户***通过微控制器接口模块2输入配置参数、通讯数据或控制命令;当接收到用户***发来的“传送数据命令”时,通用I2C总线控制器按当前工作寄存器模块2配置的工作参数,由同步时序信号生成模块4产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线接口时序生成模块5,最后由I2C总线接口时序生成模块5自动产生I2C总线时序信号SDA和SCK,从而将双端口数据存储模块3中指定地址处开始和指定长度的信息数据,依次按位从I2C总线端口上传送出去,待全部指定数据传输完毕后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令;当接收到用户***发来的“接收数据命令”时,通用I2C总线控制器按当前工作寄存器模块2配置的工作参数,由同步时序信号生成模块4产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线接口时序生成模块5,然后由I2C总线接口时序生成模块5监视I2C总线时序信号SDA和SCK,并按I2C总互协议,按位依次从I2C总线端口接收外部***传送进来的数据,最后由双端口数据存储模块4将接收到的数据依次存放到指定地址处开始的连续存储单元中,待I2C总线上的数据全部接收完毕,或者是接收到指定长度的数据后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令。
当通过外部引脚电路,将通用I2C总线控制器设置为I2C总线从控制器时,用户***上电复位后,通用I2C总线控制器按工作寄存器模块2缺省配置的工作参数开始工作,并处于空闲状态,等待用户***通过微控制器接口模块1输入配置参数、通讯数据或控制命令,同时监视I2C总线上信号的变化;当接收到外部主控制器发来的“启动一次数据传送操作”时,通用I2C总线控制器按当前工作寄存器模块2配置的工作参数,由I2C总线接口时序生成模块5自动监视I2C总线上时序信号SDA和SCK,并根据从I2C总线上接收到的总线通讯命令执行相应的数据传送操作;当总线通讯命令为“读存储单元数据命令”时,由同步时序信号生成模块4产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给双端口数据存储模块3和I2C总线接口时序生成模块5,当I2C总线接口时序生成模块5接收到有效的存储器数据地址后,控制双端口数据存储模块3将指定地址中的数据传送给I2C总线接口时序生成模块5,最后由I2C总线接口时序生成模块5将双端口数据存储模块3中指定存储单元中的数据,依次按位从I2C总线端口上传送出去,待全部指定数据传输完毕后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待外部主控制器发出新的指令;当总线通讯命令为“写存储单元数据命令”时,由同步时序信号生成模块4产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给双端口数据存储模块3和I2C总线接口时序生成模块5,当I2C总线接口时序生成模块5接收到有效的存储器数据地址和数据后,控制I2C总线接口时序生成模块5将接收到的地址和数据传送给双端口数据存储模块3,最后由双端口数据存储模块3将接收的数据存放到指定地址处开始的连续存储单元中,待I2C总线上的数据全部接收完毕,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令。
Claims (6)
1.一种可支持用户协议的通用I2C总线控制器,其特征在于包括:微控制器接口模块(1)、工作寄存器模块(2)、双端口数据存储模块(3)、同步时序信号生成模块(4)和I2C总线接口时序生成模块(5);
微控制器接口模块(1)经内部连线与工作寄存器阵列模块(2)和双端口数据存储模块(3)相连;工作寄存器阵列模块(2)经内部连线与同步时序信号生成模块(4)和I2C接口时序生成模块(5)相连;双端口数据存储模块(3)经内部连线与I2C总线接口时序生成模块(5)相连;同步时序信号生成模块(4)经内部连线与双端口数据存储模块(3)和I2C总线接口时序生成模块(5)相连;
当用户***将通用I2C总线控制器被配置为I2C总线主器件时,I2C总线接口时序生成模块(5)主动发起并控制I2C总线上的数据通讯过程,并根据用户***的命令,或者将双端口数据存储模块(3)中的数据从I2C总线上传输出去,或者从I2C总线上接收数据,并存放到双端口数据存储模块(3)中;
当用户***将通用I2C总线控制器配置为I2C总线从器件时,I2C总线接口时序生成模块(5)被动接受I2C总线上其它主控制器的控制,并根据I2C总线上的命令,或者将双端口数据存储模块(3)中的数据从I2C总线上传输出去,或者从I2C总线上接收数据,并存放到双端口数据存储模块(3)中;
当I2C总线接口时序生成模块(5)完成一次数据通讯操作后,自动生成“一次数据交换操作完毕”中断请求信号;
当通过外部引脚电路,将通用I2C总线控制器设置为I2C总线主控制器时,用户***上电复位后,通用I2C总线控制器按工作寄存器模块(2)缺省配置的工作参数开始工作,并处于空闲状态,等待用户***通过微控制器接口模块(2)输入配置参数、通讯数据或控制命令;当接收到用户***发来的“传送数据命令”时,通用I2C总线控制器按当前工作寄存器模块(2)配置的工作参数,由同步时序信号生成模块(4)产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线接口时序生成模块(5),最后由I2C总线接口时序生成模块(5)自动产生I2C总线时序信号SDA和SCK,从而将双端口数据存储模块(3)中指定地址处开始和指定长度的信息数据,依次按位从I2C总线端口上传送出去,待全部指定数据传输完毕后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令;当接收到用户***发来的“接收数据命令”时,通用I2C总线控制器按当前工作寄存器模块(2)配置的工作参数,由同步时序信号生成模块(4)产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线接口时序生成模块(5),然后由I2C总线接口时序生成模块(5)监视I2C总线时序信号SDA和SCK,并按I2C总互协议,按位依次从I2C总线端口接收外部***传送进来的数据,最后由双端口数据存储模块(4)将接收到的数据依次存放到指定地址处开始的连续存储单元中,待I2C总线上的数据全部接收完毕,或者是接收到指定长度的数据后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令;
当通过外部引脚电路,将通用I2C总线控制器设置为I2C总线从控制器时,用户***上电复位后,通用I2C总线控制器按工作寄存器模块(2)缺省配置的工作参数开始工作,并处于空闲状态,等待用户***通过微控制器接口模块(1)输入配置参数、通讯数据或控制命令,同时监视I2C总线上信号的变化;当接收到外部主控制器发来的“启动一次数据传送操作”时,通用I2C总线控制器按当前工作寄存器模块(2)配置的工作参数,由I2C总线接口时序生成模块(5)自动监视I2C总线上时序信号SDA和SCK,并根据从I2C总线上接收到的总线通讯命令执行相应的数据传送操作;当总线通讯命令为“读存储单元数据命令”时,由同步时序信号生成模块(4)产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给双端口数据存储模块(3)和I2C总线接口时序生成模块5,当I2C总线接口时序生成模块(5)接收到有效的存储器数据地址后,控制双端口数据存储模块(3)将指定地址中的数据传送给I2C总线接口时序生成模块(5),最后由I2C总线接口时序生成模块(5)将双端口数据存储模块(3)中指定存储单元中的数据,依次按位从I2C总线端口上传送出去,待全部指定数据传输完毕后,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待外部主控制器发出新的指令;当总线通讯命令为“写存储单元数据命令”时,由同步时序信号生成模块(4)产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给双端口数据存储模块(3)和I2C总线接口时序生成模块(5),当I2C总线接口时序生成模块(5)接收到有效的存储器数据地址和数据后,控制I2C总线接口时序生成模块(5)将接收到的地址和数据传送给双端口数据存储模块(3),最后由双端口数据存储模块(3)将接收的数据存放到指定地址处开始的连续存储单元中,待I2C总线上的数据全部接收完毕,通用I2C总线控制器自动生成“一次数据交换操作完毕”中断请求信号,并再次进入空闲状态,等待用户***发出新的指令。
2.根据权利要求1所述的一种可支持用户协议的通用I2C总线控制器,其特征在于所述微控制器接口模块(1)的功能为:实现可编程逻辑器件配置器与x86系列微控制器控制总线、地址总线和数据总线的硬件连接,或者接受x86系列微控制器输入的控制命令、参数和数据,或者将可编程逻辑器件配置器的内部工作状态信息或数据传送给x86系列微控制器。
3.根据权利要求1所述的一种可支持用户协议的通用I2C总线控制器,其特征在于所述工作寄存器模块(2)的功能为:接收并存放微控制器接口模块(1)传送的***控制命令、参数和数据,实现x86系列微控制器对通用I2C总线控制器工作参数的配置和工作过程的控制,同时,记录通用I2C总线控制器的工作状态信息和数据,并传送给微控制器接口模块(1)。
4.根据权利要求1所述的一种可支持用户协议的通用I2C总线控制器,其特征在于所述双端口数据存储模块(3)的功能为:接收微控制器接口模块(1)传送的微控制器控制信号和数据,存储用户***需要交换的信息数据,或是存储外部***经I2C总线传送进来的信息数据,供微控制器接口模块(1)读取。
5.根据权利要求1所述的一种可支持用户协议的通用I2C总线控制器,其特征在于所述同步时序信号生成模块(4)的功能为:按照工作寄存器模块(2)传送的工作参数和命令,产生通用I2C总线控制器正常工作所需要的同步时序信号,并传送给通用I2C总线控制器内部各个模块。
6.根据权利要求1所述的一种可支持用户协议的通用I2C总线控制器,其特征在于所述I2C总线接口时序生成模块(5)的功能为:根据工作寄存器模块(2)中记录的通用I2C总线控制器的工作参数和命令,自动生成I2C总线接口时序信号和配套的双端口数据存储模块(3)端口操作信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811264099.0A CN109446144A (zh) | 2018-10-29 | 2018-10-29 | 一种支持用户协议的通用i2c总线控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811264099.0A CN109446144A (zh) | 2018-10-29 | 2018-10-29 | 一种支持用户协议的通用i2c总线控制器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109446144A true CN109446144A (zh) | 2019-03-08 |
Family
ID=65548563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811264099.0A Pending CN109446144A (zh) | 2018-10-29 | 2018-10-29 | 一种支持用户协议的通用i2c总线控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446144A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111818695A (zh) * | 2020-07-08 | 2020-10-23 | 昆山龙腾光电股份有限公司 | 一种控制***、方法以及显示模组 |
CN113448261A (zh) * | 2020-03-24 | 2021-09-28 | 株洲中车时代电气股份有限公司 | 机车的网络控制*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6728908B1 (en) * | 1999-11-18 | 2004-04-27 | California Institute Of Technology | I2C bus protocol controller with fault tolerance |
CN102023954A (zh) * | 2009-09-17 | 2011-04-20 | 研祥智能科技股份有限公司 | 具有多路i2c总线的装置、处理器、***主板及工控计算机 |
CN207473599U (zh) * | 2017-12-04 | 2018-06-08 | 山东高云半导体科技有限公司 | 一种i2c总线控制接口电路 |
US20180181507A1 (en) * | 2016-12-22 | 2018-06-28 | Intel Corporation | Out-of-band interrupt mapping in mipi improved inter-integrated circuit communication |
-
2018
- 2018-10-29 CN CN201811264099.0A patent/CN109446144A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6728908B1 (en) * | 1999-11-18 | 2004-04-27 | California Institute Of Technology | I2C bus protocol controller with fault tolerance |
CN102023954A (zh) * | 2009-09-17 | 2011-04-20 | 研祥智能科技股份有限公司 | 具有多路i2c总线的装置、处理器、***主板及工控计算机 |
US20180181507A1 (en) * | 2016-12-22 | 2018-06-28 | Intel Corporation | Out-of-band interrupt mapping in mipi improved inter-integrated circuit communication |
CN207473599U (zh) * | 2017-12-04 | 2018-06-08 | 山东高云半导体科技有限公司 | 一种i2c总线控制接口电路 |
Non-Patent Citations (1)
Title |
---|
龚向东等: "主从可配置I2C总线接口IP及其应用", 《电讯技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113448261A (zh) * | 2020-03-24 | 2021-09-28 | 株洲中车时代电气股份有限公司 | 机车的网络控制*** |
CN111818695A (zh) * | 2020-07-08 | 2020-10-23 | 昆山龙腾光电股份有限公司 | 一种控制***、方法以及显示模组 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8266360B2 (en) | I2C-bus interface with parallel operational mode | |
CN100483373C (zh) | Pvdm(分组语音数据模块)通用总线协议 | |
CN101911000B (zh) | 用于连接电子装置的控制总线 | |
CN201583944U (zh) | 一种采用fpga实现基于pci总线的实时采集卡 | |
CN102012885A (zh) | 采用动态i2c总线实现通讯的***及方法 | |
TWI677214B (zh) | 擴展塢裝置、電子裝置及mac位址複製方法 | |
CN104731746A (zh) | 设备控制器装置 | |
CN101089838A (zh) | 一种实现i2c读写时序的方法 | |
CN109783416A (zh) | Spi从设备和i2c从设备共用gpio的方法、电路和电子设备 | |
CN104834620A (zh) | 串行外设接口spi总线电路、实现方法以及电子设备 | |
CN116450552B (zh) | 基于i2c总线异步批量读写寄存器的方法及*** | |
CN101290724B (zh) | 一种计算机硬件系列课程的实验装置 | |
CN109446144A (zh) | 一种支持用户协议的通用i2c总线控制器 | |
CN111948971A (zh) | 一种智能卡管理装置及其数据转接方法 | |
CN102693203A (zh) | 嵌入式usb主机 | |
CN1316388C (zh) | 适用于电脑对电脑传输的usb控制电路及其作业方法 | |
CN205263790U (zh) | 一种显示控制板 | |
CN107370651A (zh) | 一种spi从机之间的通信方法 | |
CN101251831B (zh) | 支持主从设备互换的移动存储器和主从设备互换方法 | |
KR20080000559A (ko) | 휴대폰 및 휴대용 어플라이언스를 위한 저전력 고체 상태저장장치 제어기 | |
CN113326220B (zh) | 一种外设电子标签信息获取方法及设备 | |
CN101436119A (zh) | 一种与存储卡通讯的***和方法 | |
CN101521956B (zh) | 一种通过gpio口读写t卡的方法、***和手机 | |
CN201185008Y (zh) | 计算机接口控制装置 | |
CN204706031U (zh) | 串行外设接口spi总线电路以及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190308 |