一种基于Mpc837x框架的数据读取方法

文档序号:9396831阅读:423来源:国知局
一种基于Mpc837x框架的数据读取方法
【技术领域】
[0001]本发明涉及一种数据处理技术领域,尤其涉及一种基于Mpc837x框架的数据读取方法。
【背景技术】
[0002]I2C(Inter-1ntegrated Circuit)是一种串行通讯总线,使用多主从架构的操作系统中,主要用于微控制器或微处理器与外部设备之间的数据传输,根据I2C通讯协议可知,I2C协议每次只传送I个字节(I个字节的字长为8位)的数据。因此,如果被传输的数据字长超过8位,则需要将该数据进行分段传输。
[0003]如图1所示,现有的I2C总线的数据传输流程,其具体步骤包括:
[0004]步骤S1、主机发送一用以启动I2C总线时钟脉冲,并启动I2C总线;
[0005]步骤S2、控制I2C总线接收主机发送的从设备地址;
[0006]步骤S3、控制I2C总线接收主机发送寄存器地址,寄存器位于从设备中;
[0007]步骤S4、重新启动12C总线;
[0008]步骤S5、控制主机再次发送寄存器地址至I2C总线;
[0009]步骤S6、读取与寄存器地址匹配的寄存器中存储的I个字节数据;
[0010]步骤S7、停止I2C总线。
[0011]综上所述,于时钟脉冲的控制下,I2C总线每次仅仅只能读取I个字节数据,在需要读取2个字节或2个字节以上的数据时,需要重复执行步骤SI?S7,直至所述数据被读取完毕,采用此种方式读取数据,其读取效率较低。

【发明内容】

[0012]本发明的目的在于提供一种读取效率高的基于Mpc837x框架的数据读取方法。
[0013]实现上述技术目的,所采用的技术方案是:
[0014]—种基于Mpc837x框架的数据读取方法,可应用于VxWorks操作系统,其中,包括如下步骤:
[0015]步骤S1、控制主机接收用户输入的查询指令;
[0016]步骤S2、根据所述查询指令启动I2C总线;
[0017]步骤S3、控制所述I2C总线接收所述主机发送的与所述查询指令相匹配的从设备地址;
[0018]步骤S4、控制所述I2C总线接收所述主机发送的存储地址,所述存储地址为与所述查询指令相匹配的数据位于所述从设备中的存储地址;
[0019]步骤S5、重新启动所述I2C总线;
[0020]步骤S6、控所述主机再次发送所述存储地址至所述I2C总线;
[0021]步骤S7、于所述存储地址对应的存储器中读取与所述查询指令相匹配的所述数据,并传输至所述主机;
[0022]步骤S8、停止所述I2C总线。
[0023]上述的基于Mpc837x框架的数据读取方法,其中,所述从设备为任意被寻址的器件。
[0024]上述的基于Mpc837x框架的数据读取方法,其中,于所述从设备为存储单元时,所述存储地址为存储单元内的存储地址。
[0025]上述的基于Mpc837x框架的数据读取方法,其中,于所述从设备为电可擦可编程只读存储器时,所述存储地址为电可擦可编程只读存储器内的存储地址。
[0026]上述的基于Mpc837x框架的数据读取方法,其中,于所述从设备为可编程只读存储器时,所述存储地址为可编程只读存储器内的存储地址。
[0027]上述的基于Mpc837x框架的数据读取方法,其中,于所述从设备为外部设备时,所述外部设备内包括复数个寄存器,所述存储地址为与所述查询指令相匹配的所述寄存器的地址。
[0028]上述的基于Mpc837x框架的数据读取方法,其中,所述主机为中央处理器或微控制器。
[0029]上述的基于Mpc837x框架的数据读取方法,其中,所述数据为所述存储器中连续存储的复数个数据。
[0030]上述的基于Mpc837x框架的数据读取方法,其中,所述从设备为温度传感器。
[0031]与现有技术相比,本发明的优点是:
[0032]主机接收用户输入的查询指令;根据所述查询指令启动I2C总线;改变了传统的通过时钟脉冲启动I2C总线的方式,另外,本申请中,I2C总线于所述存储地址对应的存储器中读取与所述查询指令相匹配的所有数据,并将读取的所有数据传输至所述主机;一次可读取多个连续的数据。无需重复执行,简化了 I2C总线读取数据的流程,提高了 I2C总线读取数据的效率。
【附图说明】
[0033]图1为现有的I2C总线读取数据的流程示意图;
[0034]图2为本发明中基于Mpc837x框架的数据读取方法的流程示意图。
【具体实施方式】
[0035]下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0036]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0037]需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
[0038]下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0039]Vxfforks操作系统是一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分,Vxfforks操作系统提供不同功能的模块,如处理器管理、内存管理、输入输出等,各个模块采用Mpc837x框架搭建形成一操作系统,各个模块之间独立。各个模块在执行过程中并不考虑其他正在使用中的模块,各个模块都以相同的时间进度运行,为了能够较好的运行VxWorks操作系统的数据传输,避免发生数据传输冲突,VxWorks操作系统大多采用I2C总线协议方式传输数据(I2C总线在有多个主机同时尝试控制总线但只允许其中一个控制总线并使传输不被破坏,可以很好地解决数据传输冲突)。
[0040]如图2所示,一种基于Mpc837x框架的数据读取方法,应用于VxWorks操作系统,其中,具体包括如下步骤:
[0041]步骤S1、控制主机接收用户输入的查询指令;
[0042]步骤S2、根据上述查询指令启动I2C总线;
[0043]步骤S3、控制上述I2C总线接收上述主机发送的与上述查询指令相匹配的从设备地址;
[0044]步骤S4、控制上述I2C总线接收上述主机发送的存储地址,上述存储地址为与上述查询指令相匹配的数据位于上述从设备中的存储地址;
[0045]步骤S5、重新启动上述I2C总线;
[0046]步骤S6、控上述主机再次发送上述存储地址至上述I2C总线;
[0047]步骤S7、于上述
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1