一种单线串行通信接口的方法与系统与流程

文档序号:11950132阅读:923来源:国知局
一种单线串行通信接口的方法与系统与流程

本发明涉及串行通信技术领域,尤其涉及一种单线串行通信接口的方法与系统。



背景技术:

随着社会的发展,越来越多的电子设备走进了人们的生活,电子设备之间的沟通越来越频繁,如何选择设备之间的接口显得尤为重要。在低速串行通信领域,电路设计工程师一般采用Philips开发的I2C总线。I2C总线属于两线接口,I2C(Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。I2C总线支持任何IC生产过程(CMOS、双极性)。通过串行数据(SDA)线和串行时钟(SCL)线在连接到总线的器件间传递信息。每个器件都有一个唯一的地址识别(无论是微控制器——MCU、LCD驱动器、存储器或键盘接口),而且都可以作为一个发送器或接收器(由器件的功能决定)。LCD驱动器只能作为接收器,而存储器则既可以接收又可以发送数据。除了发送器和接收器外,器件在执行数据传输时也可以被看作是主机或从机。主机是初始化总线的数据传输并产生允许传输的时钟信号的器件。此时,任何被寻址的器件都被认为是从机。

但是本领域技术人员为了减小接口芯片的面积和管脚的数量仍 然作出着努力。



技术实现要素:

为了克服现有技术的不足,本发明的目的之一在于提供单线串行通信接口的方法,其能解决接口芯片面积大和管脚数量多的问题。

本发明的目的之二在于提供单线串行通信接口的系统,其能解决接口芯片面积大和管脚数量多的问题。

本发明的目的之一采用以下技术方案实现:

一种单线串行通信接口的方法,应用于单线串行通信接口装置,所述单线串行通信接口装置包括控制模块、物理层模块、接收模块和发送模块,一主机通过单线串行通信接口装置与一从设备进行通信,包括以下步骤:

S1:控制模块控制接收模块接收主机发送的读写信号,并对读写信号中的读写模式信号进行判断,如果是读模式,则执行步骤S2,如果是写模式,则执行步骤S4,所述读写信号还包括从设备地址和从设备的寄存器地址,所述从设备的寄存器地址与对应的从设备的寄存器形成一一对应关系;

S2:控制模块控制接收模块根据从设备的寄存器地址从对应的从设备的寄存器中读取读数据,然后执行步骤S3;

S3:控制模块控制发送模块接收从设备的回复读信号;

S4:控制模块控制接收模块根据从设备的寄存器地址从对应的从设备的寄存器中写入写数据,执行步骤S5;

S5:控制模块控制发送模块接收从设备的回复写信号,以通知主机成功写入所述写数据。

优选的,在步骤S1之前包括以下步骤:

S00:主机向物理层模块发送同步信号;

S01:物理层模块对同步信号进行同步,如果同步失败,则向主机发送同步失败消息,如果同步成功,则执行步骤S1。能够进一步解决物理层模块进行同步的技术问题。

优选的,在步骤S1中,所述读写信号还包括第一奇偶校验信号,接收模块对第一奇偶校验信号进行检验,如果正确,则将奇偶校验结果信号传输至发送模块,如果错误,则上传错误信息至主机。能够进一步解决读写信号的奇偶校验的技术问题。

优选的,在步骤S3中,所述回复读信号包括从设备地址和主机读命令正确收到信号。能够进一步解决回复读信号的具体信号的的问题。

优选的,在步骤S3中,所述回复读信号包括第二奇偶校验信号,发送模块对第二奇偶校验信号进行检验,如果正确,则将奇偶校验结果信号传输至主机,如果错误,则上传错误信息至主机。能够进一步解决回复读信号的奇偶校验的技术问题。

优选的,在步骤S5中,所述回复写信号包括从设备地址和主机写命令正确收到信号。能够进一步解决回复写信号的奇偶校验的技术问题。

优选的,在步骤S5中,所述回复写信号包括第三奇偶校验信号, 发送模块对第三奇偶校验信号进行检验,如果正确,则将奇偶校验结果信号传输至主机,如果错误,则上传错误信息至主机。能够进一步解决回复写信好的奇偶校验的技术问题。

本发明的目的之二采用以下技术方案实现:

一种单线串行通信接口的系统,包括其应用上述所述方法的单线串行通信接口装置,主机和从设备,所述主机通过单线串行通信接口装置与从设备进行数据通信。

优选地,所述从设备的数量为多个。能够进一步解决从设备设置数量的技术问题。

相比现有技术,本发明的有益效果在于:

本发明的单线接口装置属于一线接口,简单方便的实现了设备之间的数据交换功能,为电路设计工程师提供了一种实用的选择,单线接口装置极大的减小了接口芯片的面积和管脚数量,降低了互联成本。本装置设计技术门槛低,调试灵活简单,此外,该装置易于集成在硅片上,从而具有良好的市场应用价值。

附图说明

图1为本发明单线串行通信接口方法的流程图;

图2为本发明控制模块的状态机示意图;

图3为本发明物理层模块状态机示意图;

图4为本发明接收模块状态机示意图;

图5为本发明发送模块状态机示意图;

图6为本发明通信结构示意图;

图7为本发明主机写命令时序图;

图8为本发明从设备回应写命令时序图;

图9为本发明主机读命令时序图;

图10为本发明从设备回应读命令时序图。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述:

如图1所示,本发明提供了一种单线串行通信接口的方法,其应用于单线串行通信接口装置,所述单线串行通信接口装置包括控制模块、物理层模块、接收模块和发送模块,一主机通过单线串行通信接口装置与一从设备进行通信,包括以下步骤:

S00:主机向物理层模块发送同步信号;

S01:物理层模块对同步信号进行同步,如果同步失败,则向主机发送同步失败消息,如果同步成功,则执行步骤S1;

S1:控制模块控制接收模块接收主机发送的读写信号,并对读写信号中的读写模式信号进行判断,如果是读模式,则执行步骤S2,如果是写模式,则执行步骤S4,所述读写信号还包括从设备地址和从设备的寄存器地址,所述从设备的寄存器地址与对应的从设备的寄存器形成一一对应关系;所述读写信号还包括第一奇偶校验信号,接收模块对第一奇偶校验信号进行检验,如果正确,则将奇偶校验结果信号传输至发送模块,如果错误,则上传错误信息至主机。

S2:控制模块控制接收模块根据从设备的寄存器地址从对应的从设备的寄存器中读取读数据,然后执行步骤S3;

S3:控制模块控制发送模块接收从设备的回复读信号;所述回复读信号包括从设备地址和主机读命令正确收到信号;所述回复读信号包括第二奇偶校验信号,发送模块对第二奇偶校验信号进行检验,如果正确,则将奇偶校验结果信号传输至主机,如果错误,则上传错误信息至主机,主机读命令正确收到信号为对第一奇偶校验结果的确认。

S4:控制模块控制接收模块根据从设备的寄存器地址从对应的从设备的寄存器中写入写数据,执行步骤S5;

S5:控制模块控制发送模块接收从设备的回复写信号,以通知主机成功写入所述写数据;所述回复写信号包括从设备地址和主机写命令正确收到信号。所述回复写信号包括第三奇偶校验信号,发送模块对第三奇偶校验信号进行检验,如果正确,则将奇偶校验结果信号传输至主机,如果错误,则上传错误信息至主机。

本发明各个模块状态机的具体工作原理:

所述发送模块、控制模块、接收模块和物理层模块是并行的关系。所述发送模块状态机、控制模块状态机、接收模块状态机和物理层模块状态机即是可以根据控制信号按照预先设定的状态进行状态转移,从而协调相关信号动作,完成特定操作。

如图2所示,为本发明控制模块状态机示意图,默认为RECP状态(即接收状态),接收完毕后转到SHFT状态(即转移状态),等 待4个bit周期后转到TRAN状态(即传输状态),发送完毕后转到ENDP状态(即结束状态),此时读写流程结束,返回RECP状态。控制模块作为整体的控制作用,对发送信号、读取信号、发送和接收转换和流程结束进行整体控制。各个状态表示一种触发状态,当到达此状态时,进行怎样的控制。

如图3所示,为本发明物理层模块状态机示意图,默认为IDLE状态(即空闲状态),探测到输入信号下降沿后转到SYN0状态(即第一同步状态),低电平持续一段时间后转到SYN1状态(即第二同步状态),探测到高电平持续一段时间后转到SYN2状态(即第三同步状态),探测到低电平持续一段时间后转到SYN3状态(即第四同步状态),同步成功,上述即是方法步骤中的前两步,对同步信号进行同步,大约1个bit周期后转到DATA状态(即接收数据状态),接收完毕后转到ENDP状态,此时接收流程结束,返回IDLE状态。如果在SYN1状态停留的时间过长,则上报error(即错误),返回IDLE状态

如图4所示,为本发明接收模块状态机示意图,默认为SYNC状态(即同步状态),物理层状态机为SYN2状态(第三同步状态)时接收模块转到SRCE状态(接收状态),接收form host(来自主机)读写信号,1个信号周期后转到DEVC状态(接收状态),接收从设备地址信号,2个信号周期后,如果是我们的从设备地址信号则转到PARI状态,如果不是,则转到ENDP状态,PARI状态(即奇偶校验状态)接收奇偶校验信号,1个信号周期后转到MODE状态(即模式状 态),接收读/写信号,1个信号周期后转到ANTI状态(即反逻辑状态),1个信号周期后转到ADDR状态(即地址接收状态),接收8bits寄存器地址,9个信号周期后如果是读模式转到ENDP状态,如果是写模式则转到WDAT状态(即写数据状态),WDAT状态接收8bits写数据,9个信号周期后转到ENDP状态(结束状态),此时接收流程结束,返回SYNC状态(同步状态)。此为S3的具体的实现方式。

如图5所示,为本发明发送模块状态机示意图,默认为IDLE状态(空闲状态),控制模块状态机转到TRAN时(传输状态),而且发送准备时发送模块转到SYNC状态(同步状态),发送3bits同步码后转到SRCE(提取状态),发送1bits from device(来自从设备)后转到ADDR状态(地址状态),发送2bits从设备地址后转到PARI状态(奇偶校验状态),发送1bit接收模块的奇偶校验结果后转到CHEK状态(即检查状态),发送1bit奇偶校验后转到ANTI状态,发送1bit反逻辑信号后,如果是回应写命令,则转到ENDP状态,如果回应读命令,则转到RDAT状态(即读数据状态),发送8bits读数据和1bit反逻辑信号后,转到ENDP状态(结束状态),发送流程结束,返回IDLE状态(空闲状态)。此为S3和S5的具体的实现方式。

如图6所示,为本发明通信结构示意图,其中sda为数据信号线,本发明还提供了一种单线串行通信接口的系统,包括单线串行通信接口装置,主机(host)和从设备(device),主机向单线串行通信接口装置发送信号,从设备从单线串行通信接口装置提取读写信号。其 中,所述的从设备的数量为四个。

在本实施例中以寄存器地址D8h和写数据75h来对主机写命令和从设备回应写命令进行详细的阐述。前述的方法是以单线串行通信接口装置为主体,对其通信过程进行详细的阐述,图7和图8是通过主机写命令和从设备回应写命令,还有图9和图10通过主机读命令和从设备回应读命令来对通信机制进行具体的说明。

如图7所示,本发明主机写命令时序图,first phase(第一相)的前3个bit为sync code(同步码)010b,第4个bit为from host(主机)(0b)标志,第5和第6个bit为device address(从设备地址)(00b,01b,10b,11b),第7个bit为奇偶校验位,由register address(寄存器地址)和write data(写数据)共16个bit计算得出,第8个bit为write(0b)(写数据)标志,第9个bit为第8个bit的反向(1b)。second phase(第二相)表示8bits register address(寄存器地址),其中第5个bit为第4个bit的反向。third phase(第三相)表示8bits write data(写数据),其中第5个bit为第4个bit的反向。

如图8所示,本发明从设备回应写命令时序图,first phase(第一相)的前3个bit为sync code(同步码)010b,第4个bit为from device(1b)(从设备)标志,第5和第6个bit为device address(即从设备地址)(00b,01b,10b,11b),第7个bit为Host(主机)写命令正确收到的标志,第8个bit为奇偶校验位,设为0b,第9个bit为第8个bit的反向(1b)。

如图9所示,本发明主机读命令时序图,first phase的前3个bit为sync code 010b,第4个bit为from host(0b)标志,第5和第6个bit为device address(00b,01b,10b,11b),第7个bit为奇偶校验位,由register address共8个bit计算得出,第8个bit为read(1b)标志,第9个bit为第8个bit的反向(0b)。second phase表示8bits register address,其中第5个bit为第4个bit的反向。

如图10所示,本发明从设备回应读命令时序图,first phase的前3个bit为sync code 010b,第4个bit为from device(1b)标志,第5和第6个bit为device address(00b,01b,10b,11b),第7个bit为Host读命令正确收到的标志,第8个bit为奇偶校验位,由read data共8个bit计算得出,第9个bit为第8个bit的反向。second phase表示8bits read data,其中第5个bit为第4个bit的反向。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1