基于I制造技术

技术编号:15690821 阅读:142 留言:0更新日期:2017-06-24 03:31
本发明专利技术涉及一种基于I

Based on I

The invention relates to a method based on I

【技术实现步骤摘要】
基于I2C总线的控制器及通信方法、多控制器间的通信方法
本专利技术涉及基于I2C总线的控制器及通信方法、多控制器间的通信方法,属于总线通信控制

技术介绍
I2C总线协议是由飞利浦公司于20世纪80年代开发的一种“电路板级”的双线式总线结构,被广泛应用于电路板间芯片的通信,速率可设定为100kb/s、400kb/s以及3.4Mb/s。常见的多主机多从机的I2C总线系统结构如图1所示,在此系统中,主控制器A和主控制器B通过“总线仲裁”的方式抢夺总线的控制权,分时对从属器件进行读写,控制器通过“器件地址”实现对不同从属器件的读写。为了实现两个主控制器之间的直接通信,可以额外建立两线或更多的物理连接,借以串口或其他总线通信协议完成通信,如图2所示。在这种情况下,每个主控制器都必须额外提供通信接口互连,对一些空间和硬件资源有限的板卡的布局造成了不利。
技术实现思路
本专利技术的目的是提供一种基于I2C总线的控制器及通信方法、多控制器间的通信方法,用于解决不同控制器之间依赖硬件来实现通信,造成通信可靠性较差的问题。为解决上述技术问题,本专利技术提供了一种基于I2C总线的控制器,该控制器工作于主机模式或者从机模式:主机模式下:占用I2C总线的控制权;在占用完成后,向总线发出主从转换的控制命令,该控制命令包含待转换的从机地址和设定标识信息;之后释放I2C总线控制权,由主机模式转为从机模式;从机模式下:实时监听I2C总线上的允许本控制器转为主机模式的主从转换的控制命令,若收到则由从机模式转为主机模式。本专利技术还提供了一种基于I2C总线的控制器的通信方法,包括:在主机模式下,占用I2C总线的控制权;在占用完成后,向总线发出主从转换的控制命令,该控制命令包含待转换的从机地址和设定标识信息;之后释放I2C总线控制权,由主机模式转为从机模式;在从机模式下,实时监听I2C总线上的允许本控制器转为主机模式的主从转换的控制命令,若收到则由从机模式转为主机模式。本专利技术还提供了一种基于I2C总线的多控制器间的通信方法,包括:任一时刻,多控制器处于一主机、多从机的控制模式,由主机占用总线;主机对I2C总线的占用完成后,向其中一个从机写入主从转换的控制命令;之后该主机转入从机模式,该从机转入主机模式。本专利技术的有益效果是:对于I2C总线上的单控制器,当处于主机模式下时,通过I2C总线与其他处于从机模式下的控制器进行通信;在通信完成后,向下一个处于从机模式下的控制器发送主从转换的控制命令,之后由主机模式转为从机模式;当处于在从机模式下时,实时监听I2C总线上的允许本控制器转为主机模式的主从转换的控制命令,若收到该控制命令,由从机模式转为主机模式。对于I2C总线上的多个控制器,处于主机模式下的控制器占据I2C总线的控制权,通过I2C总线与其他控制器进行通信,在通信完成后,向下一个处于从机模式下的控制器发送主从转换的控制命令,之后由主机模式转为从机模式;处于从机模式下的控制器实时监听处于主机模式下的控制器发送的允许本控制器转为主机模式的主从转换的控制命令,若收到该控制命令,由从机模式转为主机模式;通过每个控制器接收允许本控制器转为主机模式以及发送允许下一个控制器转为主机模式的主从转换的控制命令,实现每个控制器在主机模式和从机模式两种工作模式下的切换,最终实现多个控制器之间的通信,由于系统任意时刻都工作在单主机多从机的工作模式下,不需要额外增加硬件,即可实现多控制器之间的通信,提高了通信的可靠性。附图说明图1是多主机多从机的I2C总线系统结构;图2是借助他总线通信协议完成多主机之间通信的系统结构图;图3是本实施例中I2C总线系统结构。具体实施方式下面结合附图以及具体的实施例对本专利技术进行详细说明。对于I2C总线上的单个控制器,共有两种工作模式,即主机模式和从机模式。在两种不同的工作模式下,单个控制器的通信方法如下:在主机模式下:该控制器占用I2C总线的控制权,通过I2C总线与其他处于从机模式下的控制器进行通信;在占用完成后,向总线发出主从转换的控制命令即向下一个处于从机模式下的控制器发送允许其转为主机模式的控制命令,之后释放I2C总线的控制权,由主机模式转为从机模式。在从机模式下:该控制器实时监听I2C总线上的允许本控制器转为主机模式的主从转换的控制命令,若收到该控制命令,则由从机模式转为主机模式。其中,在主机模式下,本控制器向总线发出的主从转换的控制命令包括待转换的从机地址和设定标识信息;在从机模式下,I2C总线上的允许本控制器转为主机模式的主从转换的控制命令包括本控制器的地址和设定标识信息。单个控制器通过在主机模式和从机模式两种工作模式下的切换,实现与I2C总线上其他控制器的通信。在单个控制器通讯方法的基础上,I2C总线上的多控制器的通信方法如下:任一时刻,多控制器处于一主机、多从机的控制模式,由主机占用总线;主机对I2C总线的占用完成后,向其中一个从机写入主从转换的控制命令;之后该主机转入从机控制模式,该从机转入主机控制模式。如图3所示的系统结构,整个系统初次启动时,其中一个控制器以主机模式启动,其他控制器均以从机模式启动。例如,设定控制器A以主机模式启动,占有I2C总线的控制权,其余控制器B和C均以从机模式启动,处于从机模式。此时,系统实际工作在一个主机多个从机的模式下。其中,各个控制器均有各自独立的地址。由于主控制器A独自占用I2C总线的控制权,不单可以利用I2C总线与从属器件1和2通信,还能够与处于从机模式的控制器B和C通信,实现控制器之间的信息传递。由于主控制器与处于从机模式下的控制器以及从属器件进行通信的具体方式属于现有技术,此处不再赘述。当主控制器A对I2C总线占用完成后,即已完成其所需的数据读写后,主控制器A向总线发出主从转换的控制命令,其中,该控制命令包含待转换的从机地址和设定标识信息。具体的,主控制器A确定下一个待转换的从控制器的方法可以是:主控制器A存储有所有处于从机模式下的控制器的地址,从所有从控制器中随意选取一个作为待转换的从控制器。当然,主控制器A确定下一个待转换的从控制器的方法并不固定,也可以是在主控制器A的地址的基础上,采用某种算法来确定下一个待转换的从控制器。例如,在遵循I2C标准协议数据发送方式的前提下,主控制器A确定将控制器B作为下一个待转换的从控制器,此时主控制器A先向控制器B发送控制器B的地址,再发送设定标识信息‘F’、‘O’和‘R’。当然,主控制器A向控制器B发送的设定标识信息的字符的数目以及字符的具体内容可以由用户进行设定。此后,主控制器A交出I2C总线控制权,转入从机模式,而接收到该控制命令的控制器B则转入主机模式,取得I2C总线的控制权,占用I2C总线,使用I2C接口实现预先设定的功能完成下一步工作。待控制器B使用完总线后,亦需额外发送一个主从转换的控制命令即总线转移命令,将I2C总线的控制权转交给其他控制器,例如控制器C。按照上述工作模式,各控制器之间就可以通过I2C接口实现信息交互,无需再使用额外的总线和接口资源。各个控制器通过程序逻辑实现主从模式的切换,使用标准I2C协议完成总线控制权交接,对标准I2C通信协议没有任何影响,仅以极小的程序开销提升了硬件接口资源的使用效率。另一方面,由于系本文档来自技高网...
基于I

【技术保护点】
一种基于I

【技术特征摘要】
1.一种基于I2C总线的控制器,其特征在于,该控制器工作于主机模式或者从机模式:主机模式下:占用I2C总线的控制权;在占用完成后,向总线发出主从转换的控制命令,该控制命令包含待转换的从机地址和设定标识信息;之后释放I2C总线控制权,由主机模式转为从机模式;从机模式下:实时监听I2C总线上的允许本控制器转为主机模式的主从转换的控制命令,若收到则由从机模式转为主机模式。2.一种基于I2C总线的控制器的通信方法,其特征在于,包括:在主机模式下,占用I2C总线的控制权;在占用完成后,...

【专利技术属性】
技术研发人员:陈旭辉符可可李丹华杨晨蒋佩佩
申请(专利权)人:中航光电科技股份有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1