一种eMMC的调试方法和装置与流程

文档序号:18788870发布日期:2019-09-29 18:22阅读:794来源:国知局
一种eMMC的调试方法和装置与流程
本发明涉及emmc
技术领域
,尤其涉及一种emmc的调试方法和装置。
背景技术
:emmc(embeddedmultimediacard,嵌入式多媒体卡)是一种嵌入式存储器产品,广泛应用于智能终端中。在实际应用中,emmc焊接在智能终端的主板上,与智能终端的主控芯片进行数据传输。通常情况下,linux系统会将文件系统和emmc的驱动程序封装在一起,仅向外部应用程序提供常规的读写功能,而且主板上也没有设计emmc的调试接口。因此,当emmc出现问题时,emmc固件开发人员为了获取emmc的内部数据,只能将emmc从主板上拆卸下来,带回实验室进行分析。但是,在emmc的拆卸过程中,需要经过高温熔化焊锡,而高温可能会对emmc产生二次破坏,影响emmc内部数据的稳定性。并且,如果拆卸emmc,也将使emmc断电,从而丢失emmc中的实时数据。技术实现要素:本发明实施例提供一种emmc的调试方法和装置,以解决现有技术中无法实时对emmc进行调试,需要对emmc断电或拆卸才能获得内部数据的问题。为了解决上述技术问题,本发明实施例提供了一种emmc的调试方法,应用于智能终端,所述方法包括:接收调试命令信息;其中,所述调试命令信息至少包括命令序号、命令参数和数据传输路径;所述命令序号对应读写、擦除、获取状态中的一种调试操作;根据所述调试命令信息生成标准格式的emmc命令;调用预设接口将所述emmc命令发送到emmc,以使所述emmc响应所述emmc命令。可选地,在所述接收调试命令信息之前,所述方法还包括:获取所述emmc的块设备地址;启动所述emmc。可选地,所述调用预设接口将所述emmc命令发送至emmc,包括:调用所述预设接口,将所述emmc命令发送到对应所述块设备地址的块设备驱动;通过所述块设备驱动将所述emmc命令发送到emmc主机控制器驱动;通过所述emmc主机控制器驱动将所述emmc命令发送到所述emmc。可选地,其特征在于,所述预设接口为ioctlapi。可选地,所述智能终端包括显示装置,所述方法还包括:采用所述显示装置展示所述emmc响应所述emmc命令的响应结果。本发明实施例还提供了一种emmc的调试装置,部署在智能终端,所述装置包括:信息接收模块,用于接收调试命令信息;其中,所述调试命令信息至少包括命令序号、命令参数和数据传输路径;所述命令序号对应读写、擦除、获取状态中的一种调试操作;命令生成模块,用于根据所述调试命令信息生成标准格式的emmc命令;命令发送模块,用于调用预设接口将所述emmc命令发送到emmc,以使所述emmc响应所述emmc命令。可选地,在所述信息接收模块之前,所述装置还包括:地址获取模块,用于获取所述emmc的块设备地址;启动模块,用于启动所述emmc。可选地,所述命令发送模块包括:第一命令发送子模块,用于调用所述预设接口,将所述emmc命令发送到对应所述块设备地址的块设备驱动;第二命令发送子模块,用于通过所述块设备驱动将所述emmc命令发送到emmc主机控制器驱动;第三命令发送子模块,用于通过所述emmc主机控制器驱动将所述emmc命令发送到所述emmc。可选地,所述预设接口为ioctlapi。可选地,所述智能终端包括显示装置,所述装置还包括:响应结果显示模块,用于采用所述显示装置展示所述emmc响应所述emmc命令的响应结果。在本发明实施例中,接收调试命令信息,根据调试命令信息生成标准格式的emmc命令;调用预设接口将emmc命令发送到emmc,以使emmc响应emmc命令。通过本发明实施例,可以实时向emmc发送调试命令,无需对emmc进行断电或拆卸,即可获取emmc的内部状态数据,避免了由于断电导致的数据丢失或拆卸导致的二次破坏。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例一的一种emmc的调试方法的步骤流程图;图2是本发明实施例二的一种emmc的调试方法的步骤流程图;图3是本发明实施例二的i/o通道的示意图;图4是本发明实施例三的一种emmc的调试装置的结构框图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。实施例一图1示出了本发明实施例提供的一种emmc的调试方法的步骤流程图。应用于智能终端,所述方法包括:步骤101,接收调试命令信息;其中,所述调试命令信息至少包括命令序号、命令参数和数据传输路径;所述命令序号对应读写、擦除、获取状态中的一种调试操作。本实施例中,智能终端接收调试命令信息。具体地,可以在智能终端上安装用于调试emmc的应用程序a,通过应用程序a接收用户输入的调试命令信息;也可以通过其他方式接收调试命令信息,本发明实施例对此不作详细限定,可以根据实际情况进行设置。调试命令信息至少包括命令序号、命令参数和数据传输路径,命令序号对应读写、擦除、获取状态中的一种调试操作。例如,命令序号为1、2、3、4……,1对应读取数据,2对应写入数据,3对应擦除数据,4对应获取状态,5对应固件升级。命令序号还可以是a、b、c、d……;调试操作也不限于上述内容,还可以是固件升级,功能测试等其他调试操作。命令参数对应位置信息。例如,需要读取emmc中的数据,则命令参数对应待读取数据的存储地址;需要在emmc中写入数据,则命令参数对应待写入数据的写入地址;需要擦除emmc中的数据,则命令参数对应待擦除数据的存储地址。数据传输路径中设置有待传输的数据。具体地,需要读取emmc中的数据时,将数据保存至数据传输路径中;需要将数据写入emmc中时,则从数据传输路径中提取数据,将数据发送到emmc。本发明实施例对命令序号、命令参数、数据传输路径和调试操作均不作详细限定,可以根据实际情况进行设置。步骤102,根据所述调试命令信息生成标准格式的emmc命令。本实施例中,接收调试命令信息后,将命令序号、命令参数和数据传输路径等按照标准格式生成emmc命令。emmc命令的标准格式可以参照下表,其中startbit为起始比特,transmissionbit为传输的比特,commandindex为命令序号,argument为命令参数,crc7为校验码,endbit为结束比特,bitposition是比特的位置,width是位宽,value为接收到的调试命令信息对应的赋值。例如,命令序号在第45-第40比特,位宽为6位,赋值是“1”;命令参数在第39-第8比特,位宽为32位,赋值是“x”。emmc命令还可以包括其他内容,本发明实施例对此不作详细限定,可以根据实际情况进行设置。descriptionstartbittransmissionbitcommandindexargumentcrc7endbitbitposition4746[45:40][39:8][7:1]0width(bits)1163271value“0”“1”“1”xx“1”步骤103,调用预设接口将所述emmc命令发送到emmc,以使所述emmc响应所述emmc命令。本实施例中,生成emmc命令后,调用预设接口将emmc命令发送给emmc,emmc接收到emmc命令后,根据emmc生成响应结果。预设接口连接内核中的块设备驱动,可以实现不经过linux系统的文件系统向emmc发送emmc命令。由于不使用linux系统的文件系统,因此不仅可以对emmc执行读写操作,还可以执行其他调试操作。预设接口可以设置在应用程序a中,从而将应用程序a连接至块设备驱动,本发明实施例对此不作详细限定,可以根据实际情况进行设置。综上所述,本发明实施例中,接收调试命令信息,根据调试命令信息生成标准格式的emmc命令;调用预设接口将emmc命令发送到emmc,以使emmc响应emmc命令。通过本发明实施例,可以实时向emmc发送调试命令,无需对emmc进行断电或拆卸,即可获取emmc的内部状态数据,避免了由于断电导致的数据丢失或拆卸导致的二次破坏。实施例二图2示出了本发明实施例提供的一种emmc的调试方法的步骤流程图。应用于智能终端,所述方法包括:步骤201,获取所述emmc的块设备地址。本实施例中,emmc是焊接在主板上的块设备,可以与智能终端的主控芯片进行数据传输,在内核中设置有emmc对应的块设备地址。具体地,可以通过应用程序a获取emmc对应的块设备地址。例如,emmc对应第一区块,则应用程序a可以获取到lba=0。本发明实施例对块设备地址不作详细限定,可以根据实际情况进行设置。步骤202,启动所述emmc。本实施例中,在获取到块设备地址后,可以通过应用程序a启动emmc,从而进行后续的调试操作。步骤203,接收调试命令信息;其中,所述调试命令信息至少包括命令序号、命令参数和数据传输路径;所述命令序号对应读写、擦除、获取状态中的一种调试操作。步骤204,根据所述调试命令信息生成标准格式的emmc命令。步骤205,调用所述预设接口,将所述emmc命令发送到对应所述块设备地址的块设备驱动。本实施例中,所述预设接口为ioctlapi(applicationprograminterface,应用程序接口)。ioctl是设备驱动程序中对设备的i/o(in/out,输入输出)通道进行管理的函数。参照图3所示的i/o通道,本发明实施例采用函数ioctl可以控制i/o通道是从应用程序到块设备驱动再到emmc。现有技术中,linux将文件系统和emmc的驱动程序封装在一起,i/o通道是从文件系统到块设备驱动再到emmc。因此,本发明实施例采用函数ioctl创建api作为预设接口后,在应用程序到emmc之间提供了新的i/o通道,不仅可以在应用程序中提供常规的读写功能,而且还可以提供固件升级、功能测试等功能。步骤206,通过所述块设备驱动将所述emmc命令发送到emmc主机控制器驱动。本实施例中,块设备驱动接收到emmc命令后,将emmc命令发送到emmc主机控制器驱动。例如,块设备驱动接收到读取数据的emmc命令,则将读取数据的emmc命令发送到emmc主机控制器。emmc主机控制器驱动设置于内核层,是用于驱动emmc主机控制器的程序。步骤207,通过所述emmc主机控制器驱动将所述emmc命令发送到所述emmc。本实施例中,emmc主机控制器驱动接收到emmc命令后,将emmc命令发送到emmc,以使emmc接收到emmc命令后,响应emmc命令。例如,emmc接收到写入数据的emmc命令,响应结果为0x00000900。步骤208,采用所述显示装置展示所述emmc响应所述emmc命令的响应结果。本实施例中,智能终端包括显示装置,在emmc响应emmc命令后,显示装置可以展示响应结果。例如,显示装置显示“emmcresponse:0x00000900”。显示装置还可以展示其他内容,比如接收到的调试命令信息格式不正确,则显示装置显示“输入的是非法命令”,或者“输入错误”。本发明实施例对显示装置的展示内容不作详细限定,可以根据实际情况进行设置。综上所述,本发明实施例中,智能终端接收调试命令信息,根据调试命令信息生成标准格式的emmc命令;调用预设接口将emmc命令发送到emmc,以使emmc响应emmc命令。通过本发明实施例,可以实时向emmc发送调试命令,无需对emmc进行断电或拆卸,即可获取emmc的内部状态数据,避免了由于断电导致的数据丢失或拆卸导致的二次破坏,使得emmc的错误分析、固件升级和功能测试等更易实现。实施例三图4示出了本发明实施例提供的一种emmc的调试装置的结构框图。部署在智能终端,所述装置包括:信息接收模块301,用于接收调试命令信息;其中,所述调试命令信息至少包括命令序号、命令参数和数据传输路径;所述命令序号对应读写、擦除、获取状态中的一种调试操作;命令生成模块302,用于根据所述调试命令信息生成标准格式的emmc命令;命令发送模块303,用于调用预设接口将所述emmc命令发送到emmc,以使所述emmc响应所述emmc命令。可选地,在所述信息接收模块301之前,所述装置还包括:地址获取模块,用于获取所述emmc的块设备地址;启动模块,用于启动所述emmc。可选地,所述命令发送模块303包括:第一命令发送子模块,用于调用所述预设接口,将所述emmc命令发送到对应所述块设备地址的块设备驱动;第二命令发送子模块,用于通过所述块设备驱动将所述emmc命令发送到emmc主机控制器驱动;第三命令发送子模块,用于通过所述emmc主机控制器驱动将所述emmc命令发送到所述emmc。可选地,所述预设接口为ioctlapi。可选地,所述智能终端包括显示装置,所述装置还包括:响应结果显示模块,用于采用所述显示装置展示所述emmc响应所述emmc命令的响应结果。综上所述,本发明实施例中,接收调试命令信息,根据调试命令信息生成标准格式的emmc命令;调用预设接口将emmc命令发送到emmc,以使emmc响应emmc命令。通过本发明实施例,可以实时向emmc发送调试命令,无需对emmc进行断电或拆卸,即可获取emmc的内部状态数据,避免了由于断电导致的数据丢失或拆卸导致的二次破坏。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1