CN103246618B - 基于嵌入式系统的usb功能的实现方法及装置 - Google Patents

基于嵌入式系统的usb功能的实现方法及装置 Download PDF

Info

Publication number
CN103246618B
CN103246618B CN201210022347.7A CN201210022347A CN103246618B CN 103246618 B CN103246618 B CN 103246618B CN 201210022347 A CN201210022347 A CN 201210022347A CN 103246618 B CN103246618 B CN 103246618B
Authority
CN
China
Prior art keywords
usb
function
equipment
module
controller
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.)
Active
Application number
CN201210022347.7A
Other languages
English (en)
Other versions
CN103246618A (zh
Inventor
刘建志
赵靖
汪旭光
丁岳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Intelligent IoT Technology Co Ltd
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201210022347.7A priority Critical patent/CN103246618B/zh
Publication of CN103246618A publication Critical patent/CN103246618A/zh
Application granted granted Critical
Publication of CN103246618B publication Critical patent/CN103246618B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Systems (AREA)

Abstract

本发明公开了一种基于嵌入式系统的USB功能的实现方法,包括:加载USB从设备的驱动,配置所述USB从设备的控制器;根据所述USB从设备的功能类型加载功能驱动,并注册相应的消息处理函数;使能所述USB从设备的控制器,并根据所述控制器的状态,通过调用所述消息处理函数,完成相应的USB功能。本发明还提供了相应的装置。本发明所提供的基于嵌入式系统的USB功能的实现方法,通过将USB系统简化为相对独立的层次结构,可以方便于后续USB功能的扩展,并且保证了嵌入式系统USB功能的良好的移植性。

Description

基于嵌入式系统的USB功能的实现方法及装置
技术领域
本发明涉及到USB功能的实现方法,特别涉及到一种基于嵌入式系统的USB功能的实现方法及装置。
背景技术
由于USB接口具有传输速率高、可进行热插拔、即插即用和标准统一等特点,使得其在许多设备上得以广泛应用。目前,USB接口已经开始应用在嵌入式产品中,嵌入式产品可以通过USB接口完成多种不同类型的USB功能,如海量存储、人机交互设备及串口设备等类型。采用一个USB接口来完成这些类型的功能,既可以减少设备的接口,也可以减少用户使用设备的复杂性。而现有的嵌入式产品通常通过较为复杂的处理器来实现USB接口功能,不便于后续USB功能的扩展,并且不能在不同的系统平台进行工作。
发明内容
本发明的主要目的为提供一种基于嵌入式系统的USB功能的实现方法,通过将USB系统简化为相对独立的层次化结构,可以方便于后续USB功能的扩展,并且保证了嵌入式系统USB功能的良好的移植性。
本发明提供一种基于嵌入式系统的USB功能的实现方法,包括:
加载USB从设备的驱动,配置所述USB从设备的控制器;
根据所述USB从设备的功能类型加载功能驱动,并注册相应的消息处理函数;
使能所述USB从设备的控制器,并根据所述控制器的状态,通过调用所述消息处理函数,完成相应的USB功能。
优选地,所述配置USB从设备的控制器包括:
配置所述USB从设备的控制寄存器和中断寄存器。
优选地,所述根据USB从设备的功能类型加载功能驱动,并注册相应的消息处理函数包括:
根据所述USB从设备的功能类型,加载其所对应的功能驱动;
根据所述功能类型,注册所述功能类型所对应的消息处理函数,所述消息处理函数用于处理主机端发送到USB从设备的消息。
优选地,所述使能USB从设备的控制器,并根据所述控制器的状态,通过调用所述消息处理函数,完成相应的USB功能包括:
使能所述USB从设备的控制器,接收主机端所发送的消息,并通过所述中断寄存器对所述消息进行响应;
调用所述消息处理函数,对所述主机端所发送的消息处理,以完成相应的USB功能。
优选地,所述通过调用消息处理函数,完成相应的USB功能包括海量存储、人机交互设备及串口设备功能。
本发明还提供一种基于嵌入式系统的USB功能的实现装置,其特征在于,包括通过接口依次连接的接口模块、驱动模块、协议模块、功能模块和应用模块,其中:
接口模块,用于为USB从设备提供接口,并完成相应的USB功能的物理数据传输;
驱动模块,用于加载USB从设备的驱动,配置所述USB从设备的控制器;
协议模块,用于功能模块根据所述USB从设备的功能类型注册相应的消息处理函数;
功能模块,用于根据所述功能类型向协议模块注册相应的消息处理函数;使能所述USB从设备的控制器,以完成相应的USB功能;
应用模块,与所述功能模块相连接,用于根据所述功能模块提供的接口,完成相应的USB功能的应用。
优选地,所述驱动模块具体用于:
配置所述USB从设备的控制寄存器和中断寄存器。
优选地,所述协议模块具体用于:
为所述功能模块提供接口,以供功能模块将所述USB从设备的功能类型进行保存,并注册所述功能类型所对应的消息处理函数;
实现USB标准协议,并完成USB协议中的状态切换,处理主机端发送的消息。
优选地,所述功能模块具体用于:
通过所述协议模块提供的接口,将所述USB从设备的功能类型保存至所述协议模块;
根据所述功能类型,向协议模块注册所述功能类型所对应的消息处理函数,所述消息处理函数用于处理主机端发送到USB从设备的消息。
优选地,所述功能模块还用于:
使能所述USB从设备的控制器,接收主机端所发送的消息,并通过所述中断寄存器对所述消息进行响应;
调用所述消息处理函数,对所述主机端所发送的消息处理,以完成相应的USB功能。
本发明所提供的基于嵌入式系统的USB功能的实现方法,通过将嵌入式产品多类型USB功能的实现划分为实现硬件功能的硬件层和完成软件功能的软件层,并且硬件层和软件层的每层架构可以封闭地独立完成特定的功能,每层架构之间通过接口来实现通信。将硬件层与软件层完全屏蔽开,这样,如需对软件部分中的USB功能进行扩展,便可以直接添加对应的功能驱动即可,而如果需要更换嵌入式产品的USB从设备控制器,也不需要对软件层进行二次开发。采用这种方法来实现嵌入式系统的USB功能的实现,可以方便于后续USB功能的扩展,并且保证了嵌入式系统USB功能的良好的移植性。
附图说明
图1为本发明基于嵌入式系统的USB功能的实现方法一实施例的流程示意图;
图2为本发明基于嵌入式系统的USB功能的实现方法一实施例中驱动的流程示意图;
图3为本发明基于嵌入式系统的USB功能的实现方法一实施例中保存及注册的流程示意图;
图4为本发明基于嵌入式系统的USB功能的实现方法一实施例中功能实现的流程示意图;
图5为本发明基于嵌入式系统的USB功能的实现装置一实施例的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,提出本发明基于嵌入式系统的USB功能的实现方法一实施例,该方法包括:
步骤S101,加载USB从设备的驱动,配置所述USB从设备的控制器;
本发明提供一种基于嵌入式产品实现USB功能的方法,将嵌入式产品多类型USB功能的实现划分为三层软件层和两层硬件层,而软件层和硬件层中的各层架构可以封闭地独立完成特定的功能,并且每层架构之间通过接口来实现相互之间的通信。本实施例所提供的嵌入式设备的处理器中,集成了一个USB从设备控制器,该USB从设备控制器支持USB1.1协议,提供24个端点用于USB从设备功能的配置。
为USB从设备提供USB接口的硬件层即为接口模块,而用于驱动USB从设备的即为驱动模块,这样,接口模块和驱动模块就共同构成了嵌入式设备的硬件层;这两层所完成的功能即为硬件层的功能,这两层硬件层与上层的各软件层之间通过接口来实现通信,并且与软件层被完全屏蔽开,硬件层和软件层的各层便可以独立地完成其特定的功能。
步骤S102,根据所述USB从设备的功能类型加载功能驱动,并注册相应的消息处理函数;
当通过硬件层完成了对USB从设备的驱动后,软件层的各层就可以通过相互之间的接口来完成相应的工作。本实施例中,可以将软件层自下而上依次划分为协议模块、功能模块和应用模块,并且相互之间通过接口连接。当完成了对USB从设备的驱动后,就可以将所记录的USB从设备对应的功能类型进行读取,并且利用协议模块所提供的接口,将这个功能类型保存至协议模块。当得到了此时USB从设备所需要完成的功能后,就可以对其功能模块进行加载,以用于根据USB从设备的功能类型完成相应的USB功能。加载完功能模块后,功能模块会根据USB从设备的功能类型,向协议模块注册一个与该功能类型所对应的可以回调的消息处理函数,通过调用这个回调函数,就可以接收到协议模块所传递的来自主机端的消息,以完成相应的USB从设备所需要的USB功能。
本实施例中,上述读取USB从设备的功能类型,并向协议模块注册消息处理函数的功能是由功能模块来完成的;而协议模块是软件层的最下层,其与下层硬件层的驱动模块之间通过接口实现相互的通信,协议模块可以为功能模块提供接口,以供功能模块根据其所读取的USB从设备的功能类型注册消息处理函数;以及实现USB标准协议,并完成USB协议中定义的USB从设备Attach、Power、Default、Address、Configure和Suspend等可见状态的切换,处理主机端发送的消息的功能。
步骤S103,使能所述USB从设备的控制器,并根据所述控制器的状态,通过调用所述消息处理函数,完成相应的USB功能。
当完成了对USB从设备的硬件的驱动,并且根据所记录的USB从设备的功能类型向协议模块注册了可供回调的消息处理函数后,会对USB从设备的控制器进行使能,此时当接收到协议模块所转发的主机端发送的消息后,这个消息便可以通过控制器以中断的形式表现出来。根据控制器的中断状态,功能模块就可以在接收到协议模块所转发的消息,完成相应的USB功能。在本实施例中,提供的基于嵌入式产品实现USB功能的方法,所完成的USB从设备所对应的USB功能,可以为包括如海量存储、人机交互设备及串口设备等的USB功能。
功能模块通过协议模块所提供的接口完成了相应的USB功能后,应用模块就会利用与功能模块之间的接口,实现相应的USB功能的应用。应用模块是软件层的最上层,在本实施例中,应用模块可以通过调用操作系统的标准API,来完成具体的USB功能的实现,即将其应用在如U盘、产线检测工具及ActiveSync软件等具体的USB功能。
本发明所提供的基于嵌入式系统的USB功能的实现方法,通过将嵌入式产品多类型USB功能的实现划分为实现硬件功能的硬件层和完成软件功能的软件层,并且硬件层和软件层的每层架构可以封闭地独立完成特定的功能,每层架构之间通过接口来实现通信。将硬件层与软件层完全屏蔽开,这样,如需对软件部分中的USB功能进行扩展,便可以直接添加对应的功能驱动即可,而如果需要更换嵌入式产品的USB从设备控制器,也不需要对软件层进行二次开发。采用这种方法来实现嵌入式系统的USB功能的实现,可以方便于后续USB功能的扩展,并且保证了嵌入式系统USB功能的良好的移植性。
参照图2,在本发明基于嵌入式系统的USB功能的实现方法一实施例中,步骤S101具体包括:
步骤S1011,配置所述USB从设备的控制寄存器和中断寄存器。
由于在通常情况下,USB从设备的控制器可以包括中断寄存器、控制寄存器、端点控制寄存器和端点数据寄存器等几种,因此,通常意义上的配置USB从设备的控制器也即为对这些寄存器进行配置。而在本实施例中,对USB从设备的控制器中的控制寄存器和中断寄存器较为重要。此时,可以通过中断函数来对USB从设备的控制器的状态进行监听,并用于保存当前USB从设备控制器的状态;同时通过中断处理函数来对控制器所表现出的不同的状态做相应的处理。
当USB从设备启动后,对其控制寄存器和中断寄存器进行初始化配置,并且通过中断函数来对USB从设备的控制器的状态进行监听,从而通过协议模块来向上层功能模块提供相应的接口,以便功能模块完成相应的USB功能。这样,就进一步保证了软件层和硬件层之间的屏蔽,使得后续的USB功能的扩展,以及嵌入式系统USB功能的良好的移植性得以更好的保证。
参照图3,在本发明基于嵌入式系统的USB功能的实现方法一实施例中,步骤S102包括:
步骤S1021,根据所述USB从设备的功能类型,加载其所对应的功能驱动;
当完成了对USB从设备的驱动后,就可以将USB从设备对应的功能类型进行读取,当得到USB从设备的功能类型后,便可以根据这个功能类型对功能模块进行加载,以便功能模块可以根据USB从设备的功能类型来完成相应的USB功能。然后,便需要利用协议模块所提供的接口,将这个功能类型进行保存,本实施例中,可以将其保存至协议模块。
步骤S1022,根据所述功能类型,注册所述功能类型所对应的消息处理函数,所述消息处理函数用于处理主机端发送到USB从设备的消息。
当得到了此时USB从设备所需要完成的功能,并根据其功能类型完成了对功能模块的加载后,功能模块会根据USB从设备的功能类型,向协议模块注册一个与该功能类型所对应的可以回调的消息处理函数,通过调用这个回调函数,就可以在接收到协议模块所传递的来自主机端的消息后,将该消息进行相应的处理,以完成相应的USB从设备所需要的USB功能。
通过对USB从设备所对应的功能类型进行读取,就可以得到该USB从设备所需要完成的USB功能,然后通过功能模块,并根据该功能类型向协议模块注册一个可供回调并用于处理主机端发送到USB从设备的消息的消息处理函数,从而当接收到协议模块所转发的来自主机端的消息后,就可以通过调用这个消息处理函数,完成USB从设备所对应的USB功能。这样,便在很大程度上保证了软件层的各层之间可以通过接口进行通信,并且为USB功能的实现提供了很大的方便。
参照图4,在本发明基于嵌入式系统的USB功能的实现方法一实施例中,步骤S103包括:
步骤S1031,使能所述USB从设备的控制器,接收主机端所发送的消息,并通过所述中断寄存器对所述消息进行响应;
当完成了对USB从设备的硬件的驱动,并且根据所记录的USB从设备的功能类型向协议模块注册了可供回调的消息处理函数后,需要对USB从设备的控制器进行使能,然后等待主机端发送消息,协议模块会从驱动模块将这个消息转发至功能模块,而这个消息便是通过USB从设备的控制器以中断的形式表现出来的。本实施例中,是通过中断寄存器来对USB从设备的控制器的状态进行监听的。当接收到协议模块所转发的主机端发送的消息后,就可以通过中断处理函数来对控制器所表现出的中断进行响应,并对该消息做相应的处理。
步骤S1032,调用所述消息处理函数,对所述主机端所发送的消息处理,以完成相应的USB功能。
当通过中断处理函数对主机端发送的消息进行相应的处理后,此时,会将经过处理后的消息进行转发,即将其通过协议模块转发至功能模块。此时,功能模块就会调用根据USB从设备的功能类型向协议模块注册的消息处理函数,来完成相应的USB功能。
参照图5,提出本发明基于嵌入式系统的USB功能的实现装置一实施例,该装置包括通过接口依次连接的接口模块10、驱动模块20、协议模块30、功能模块40和应用模块50,其中:
接口模块10,用于为USB从设备提供接口,并完成相应的USB功能的物理数据传输;
驱动模块20,用于加载USB从设备的驱动,配置所述USB从设备的控制器;
协议模块30,用于功能模块根据所述USB从设备的功能类型注册相应的消息处理函数;
功能模块40,用于根据所述功能类型向协议模块注册相应的消息处理函数;使能所述USB从设备的控制器,以完成相应的USB功能;
应用模块50,与所述功能模块相连接,用于根据所述功能模块提供的接口,完成相应的USB功能的应用。
本发明提供一种基于嵌入式产品实现USB功能的方法,将嵌入式产品多类型USB功能的实现划分为三层软件层和两层硬件层,而软件层和硬件层中的各层架构可以封闭地独立完成特定的功能,并且每层架构之间通过接口来实现相互之间的通信。
本实施例所提供的嵌入式设备的处理器中,集成了一个USB从设备控制器,该USB从设备控制器支持USB1.1协议,提供24个端点用于USB从设备功能的配置。所提供的控制器即为USB从设备的接口模块10,该接口模块10用于为USB从设备提供接口,并完成USB从设备所需要完成的相应的USB功能的物理数据传输。
为USB从设备提供USB接口的硬件层即为接口模块10,而用于驱动USB从设备的即为驱动模块20,这样,接口模块10和驱动模块20就共同构成了嵌入式设备的硬件层;这两层所完成的功能即为硬件层的功能,这两层硬件层与上层的各软件层之间通过接口来实现通信,并且与软件层被完全屏蔽开,硬件层和软件层的各层便可以独立地完成其特定的功能。
当通过硬件层完成了对USB从设备的驱动后,软件层的各层就可以通过相互之间的接口来完成相应的工作。本实施例中,可以将软件层自下而上依次划分为协议模块30、功能模块40和应用模块50,并且相互之间通过接口连接。
协议模块30是软件层的最下层,其与下层硬件层的驱动模块20之间通过接口实现相互的通信,协议模块30可以为功能模块40提供接口,以供功能模块40通过其所提供的接口,完成USB设备所对应的USB功能。同时,协议模块30还可以实现USB标准协议,并完成USB协议中定义的USB从设备Attach、Power、Default、Address、Configure和Suspend等可见状态的切换,处理主机端发送的消息等功能。
当通过驱动模块20完成了对USB从设备的驱动后,功能模块40就可以将所记录的USB从设备对应的功能类型进行读取,并且利用协议模块30所提供的接口,将这个功能类型保存至协议模块30。当得到了此时USB从设备所需要完成的功能后,就可以对其功能模块40进行加载,以用于根据USB从设备的功能类型完成相应的USB功能。加载完功能模块40后,功能模块40会根据USB从设备的功能类型,向协议模块30注册一个与该功能类型所对应的可以回调的消息处理函数,通过调用这个回调函数,就可以接收到协议模块30所传递的来自主机端的消息,以完成相应的USB从设备所需要的USB功能。
当完成了对USB从设备的硬件的驱动,并且根据所记录的USB从设备的功能类型向协议模块30注册了可供回调的消息处理函数后,功能模块40还会对USB从设备的控制器进行使能,此时当接收到协议模块30所转发的主机端发送的消息后,这个消息便可以通过USB从设备的控制器以中断的形式表现出来。根据控制器的中断状态,功能模块40就可以在接收到协议模块30所转发的消息后,完成相应的USB功能。在本实施例中,提供的基于嵌入式产品实现USB功能的方法,所完成的USB从设备所对应的USB功能,可以为包括如海量存储、人机交互设备及串口设备等的USB功能。
功能模块40通过协议模块30所提供的接口完成了相应的USB功能后,应用模块50就会利用与功能模块40之间的接口,实现相应的USB功能的应用。应用模块50是软件层的最上层,在本实施例中,应用模块50可以通过调用操作系统的标准API,来完成具体的USB功能的实现,即将其应用在如U盘、产线检测工具、ActiveSync软件等具体的USB功能。
本发明所提供的基于嵌入式系统的USB功能的实现装置,通过将嵌入式产品多类型USB功能的实现划分为实现硬件功能的硬件层和完成软件功能的软件层,并且硬件层和软件层的每层架构可以封闭地独立完成特定的功能,每层架构之间通过接口来实现通信。将硬件层与软件层完全屏蔽开,这样,如需对软件部分中的USB功能进行扩展,便可以直接添加对应的功能驱动即可,而如果需要更换嵌入式产品的USB从设备控制器,也不需要对软件层进行二次开发。采用这种方法来实现嵌入式系统的USB功能的实现,可以方便于后续USB功能的扩展,并且保证了嵌入式系统USB功能的良好的移植性。
在本发明基于嵌入式系统的USB功能的实现装置一实施例中,所述驱动模块20具体用于:
配置所述USB从设备的控制寄存器和中断寄存器;
由于在通常情况下,USB从设备的控制器可以包括中断寄存器、控制寄存器、端点控制寄存器和端点数据寄存器等几种,因此,通常意义上的配置USB从设备的控制器也即为对这些寄存器进行配置。而在本实施例中,对USB从设备的控制器中的控制寄存器和中断寄存器较为重要。此时,可以通过中断函数来用于对USB从设备的控制器的状态进行监听,并用于保存当前USB从设备控制器的状态;同时通过中断处理函数来对控制器所表现出的不同的状态做相应的处理。
当USB从设备启动后,对其控制寄存器和中断寄存器进行初始化配置,并且通过中断函数来对USB从设备的控制器的状态进行监听,从而通过协议模块30来向上层功能模块40提供相应的接口,以便功能模块40完成相应的USB功能。这样,就进一步保证了软件层和硬件层之间的屏蔽,使得后续的USB功能的扩展,以及嵌入式系统USB功能的良好的移植性得以更好的保证。
在本发明基于嵌入式系统的USB功能的实现装置一实施例中,所述协议模块30具体用于:
为所述功能模块提供接口,以供功能模块将所述USB从设备的功能类型进行保存,并注册所述功能类型所对应的消息处理函数;
实现USB标准协议,并完成USB协议中的状态切换,处理主机端发送的消息。
在上述实施例中,所述功能模块40具体用于:
通过所述协议模块30提供的接口,将所述USB从设备的功能类型保存至所述协议模块30;
根据所述功能类型,向协议模块30注册所述功能类型所对应的消息处理函数,所述消息处理函数用于处理主机端发送到USB从设备的消息。
当通过驱动模块20完成了对USB从设备的驱动后,并且通过功能模块40将USB从设备对应的功能类型进行读取,从而得到了USB从设备的功能类型后,功能模块40便可以通过协议模块30所提供的接口,将这个功能类型进行保存,即将其保存至协议模块30中;协议模块30所提供的接口,还可以供功能模块40根据USB从设备的功能类型,向协议模块30注册一个与该功能类型所对应的可以回调的消息处理函数,通过调用这个回调函数,功能模块40就可以在接收到协议模块30所传递的来自主机端的消息后,将该消息进行相应的处理,以便完成USB从设备所对应的USB功能。
在本实施例中,协议模块30还可以实现USB标准协议,并完成USB协议中定义的USB从设备Attach、Power、Default、Address、Configure和Suspend等可见状态的切换,处理主机端发送的消息等功能。
通过功能模块40对USB从设备所对应的功能类型进行读取,就可以得到该USB从设备所需要完成的USB功能,然后将功能模块40所读取的功能类型保存至协议模块30中,并且根据该功能类型向协议模块30注册消息处理函数,当接收到协议模块30所转发的来自主机端的消息后,就可以通过调用这个消息处理函数,完成USB从设备所对应的USB功能。这样,便在很大程度上保证了软件层的各层之间可以通过接口进行通信,并且为USB功能的实现提供了很大的方便。
在本发明基于嵌入式系统的USB功能的实现装置一实施例中,所述功能模块40还用于:
使能所述USB从设备的控制器,接收主机端所发送的消息,并通过所述中断寄存器对所述消息进行响应;
调用所述消息处理函数,对所述主机端所发送的消息处理,以完成相应的USB功能。
当通过驱动模块20完成了对USB从设备的硬件的驱动,并且通过功能模块40,根据所记录的USB从设备的功能类型向协议模块30注册了可供回调的消息处理函数后,功能模块40还需要对USB从设备的控制器进行使能,然后等待主机端发送消息,这个消息会通过协议模块30转发至驱动模块20,而这个消息便是通过USB从设备的控制器以中断的形式表现出来的,这时所表现出的即是USB从设备控制器当前的状态。本实施例中,是通过中断寄存器来对USB从设备的控制器的状态进行监听的。这样,当功能模块40接收到协议模块30所转发的主机端发送的消息后,就可以通过中断处理函数来对控制器所表现出的中断进行响应,并对该消息做相应的处理。
当通过中断处理函数对主机端发送的消息进行相应的处理后,此时,会将经过得理后的消息进行转发,即将其通过协议模块30转发至功能模块40。此时,功能模块40接收到这个消息后,就会调用根据USB从设备的功能类型向协议模块30注册的消息处理函数,来完成相应的USB功能。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围。

Claims (8)

1.一种基于嵌入式系统的USB功能的实现方法,其特征在于,包括:
加载USB从设备的驱动,配置所述USB从设备的控制器;
根据所述USB从设备的功能类型加载功能驱动,并注册相应的消息处理函数;
使能所述USB从设备的控制器,并根据所述控制器的状态,通过调用所述消息处理函数,完成相应的USB功能;
所述配置USB从设备的控制器包括:配置所述USB从设备的控制寄存器和中断寄存器,通过中断函数来对所述USB从设备的控制器的状态进行监听,并用于保存当前所述USB从设备控制器的状态;同时通过中断处理函数来对所述控制器所表现出的不同的状态做相应的处理。
2.如权利要求1所述的方法,其特征在于,所述根据USB从设备的功能类型加载功能驱动,并注册相应的消息处理函数包括:
根据所述USB从设备的功能类型,加载其所对应的功能驱动;
根据所述功能类型,注册所述功能类型所对应的消息处理函数,所述消息处理函数用于处理主机端发送到USB从设备的消息。
3.如权利要求2所述的方法,其特征在于,所述使能USB从设备的控制器,并根据所述控制器的状态,通过调用所述消息处理函数,完成相应的USB功能包括:
使能所述USB从设备的控制器,接收主机端所发送的消息,并通过所述中断寄存器对所述消息进行响应;
调用所述消息处理函数,对所述主机端所发送的消息处理,以完成相应的USB功能。
4.如权利要求1至3中任一项所述的方法,其特征在于,所述通过调用消息处理函数,完成相应的USB功能包括海量存储、人机交互设备及串口设备功能。
5.一种基于嵌入式系统的USB功能的实现装置,其特征在于,包括通过接口依次连接的接口模块、驱动模块、协议模块、功能模块和应用模块,其中:
接口模块,用于为USB从设备提供接口,并完成相应的USB功能的物理数据传输;
驱动模块,用于加载USB从设备的驱动,配置所述USB从设备的控制器;
协议模块,用于功能模块根据所述USB从设备的功能类型注册相应的消息处理函数;
功能模块,用于根据所述功能类型向协议模块注册相应的消息处理函数;使能所述USB从设备的控制器,以完成相应的USB功能;
应用模块,与所述功能模块相连接,用于根据所述功能模块提供的接口,完成相应的USB功能的应用;
所述驱动模块具体用于:配置所述USB从设备的控制寄存器和中断寄存器,通过中断函数来对所述USB从设备的控制器的状态进行监听,从而通过所述协议模块来向上层所述功能模块提供相应的接口,以便所述功能模块完成相应的USB功能。
6.如权利要求5所述的装置,其特征在于,所述协议模块具体用于:
为所述功能模块提供接口,以供功能模块将所述USB从设备的功能类型进行保存,并注册所述功能类型所对应的消息处理函数;
实现USB标准协议,并完成USB协议中的状态切换,处理主机端发送的消息。
7.如权利要求6所述的装置,其特征在于,所述功能模块具体用于:
通过所述协议模块提供的接口,将所述USB从设备的功能类型保存至所述协议模块;
根据所述功能类型,向协议模块注册所述功能类型所对应的消息处理函数,所述消息处理函数用于处理主机端发送到USB从设备的消息。
8.如权利要求7所述的装置,其特征在于,所述功能模块还用于:
使能所述USB从设备的控制器,接收主机端所发送的消息,并通过所述中断寄存器对所述消息进行响应;
调用所述消息处理函数,对所述主机端所发送的消息处理,以完成相应的USB功能。
CN201210022347.7A 2012-02-01 2012-02-01 基于嵌入式系统的usb功能的实现方法及装置 Active CN103246618B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210022347.7A CN103246618B (zh) 2012-02-01 2012-02-01 基于嵌入式系统的usb功能的实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210022347.7A CN103246618B (zh) 2012-02-01 2012-02-01 基于嵌入式系统的usb功能的实现方法及装置

Publications (2)

Publication Number Publication Date
CN103246618A CN103246618A (zh) 2013-08-14
CN103246618B true CN103246618B (zh) 2016-02-24

Family

ID=48926146

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210022347.7A Active CN103246618B (zh) 2012-02-01 2012-02-01 基于嵌入式系统的usb功能的实现方法及装置

Country Status (1)

Country Link
CN (1) CN103246618B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589823A (zh) * 2014-10-22 2016-05-18 乐视移动智能信息技术(北京)有限公司 Usb接口复用mhl的方法、装置和电路
CN114817115A (zh) * 2022-05-20 2022-07-29 深圳市广和通无线通信软件有限公司 串口通信方法及相关装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1804820A (zh) * 2005-01-14 2006-07-19 微软公司 应用程序服务器环境中的usb设备
CN101086719A (zh) * 2006-06-09 2007-12-12 迪康公司 多功能装置的驱动
CN101292224A (zh) * 2005-08-23 2008-10-22 摩尔电脑顾问公司 外围设备与操作系统的连接
CN101853177A (zh) * 2010-05-05 2010-10-06 四川九洲电器集团有限责任公司 一种带usb接口的m2m模块的驱动装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1804820A (zh) * 2005-01-14 2006-07-19 微软公司 应用程序服务器环境中的usb设备
CN101292224A (zh) * 2005-08-23 2008-10-22 摩尔电脑顾问公司 外围设备与操作系统的连接
CN101086719A (zh) * 2006-06-09 2007-12-12 迪康公司 多功能装置的驱动
CN101853177A (zh) * 2010-05-05 2010-10-06 四川九洲电器集团有限责任公司 一种带usb接口的m2m模块的驱动装置

Also Published As

Publication number Publication date
CN103246618A (zh) 2013-08-14

Similar Documents

Publication Publication Date Title
US8738815B2 (en) System and method for virtualizing the peripherals in a terminal device to enable remote management via removable portable media with processing capability
WO2023284699A1 (zh) 基于Linux系统的协议栈数据传输方法、计算机设备和存储介质
CN103677989B (zh) 一种利用linux内核实现多系统的装置及方法
EP3190763B1 (en) Screen sharing method and sharing device
CN101287221A (zh) 智能双模手机及其无线调制解调器之间的信息传递方法
CN103777981A (zh) 一种适用于x86架构的多操作系统远程加载实现方法
CN104965700A (zh) VxWorks操作系统下实现驱动SPI设备的方法和系统
CN202602678U (zh) 多can通道接口扩展电路
CN108141471A (zh) 压缩数据的方法、装置和设备
CN102592434A (zh) 红外遥控方法及装置
CN103246618B (zh) 基于嵌入式系统的usb功能的实现方法及装置
TW201347438A (zh) 整合無線通訊元件的記憶體模組、裝置與運作方法
CN101650703B (zh) 一种数据发送、接收方法和数据传输系统及装置
CN104753816A (zh) 一种rdma连接的报文处理方法及相关装置
CN104066201A (zh) 数据传输方法、装置及电子设备
CN104821982A (zh) 一种数据恢复方法
CN102299938B (zh) 一种多核多制式统一平台的实现方法及装置
CN107317881A (zh) 一种基于微服务架构的ba系统
CN108664325A (zh) 处理数据的方法和电子设备
CN108112052B (zh) 终端的网络共享方法、装置、空气调节器及存储介质
CN107463524A (zh) 一种访问数据的方法及相关设备
EP3048858A1 (en) Wireless customer premise equipment and accessing method therefor
CN103019968B (zh) 输入设备在输入处理实例中注册的控制方法及装置
CN102301354A (zh) 从具有处理能力的可移除媒体管理无线设备的系统和方法
CN101917780B (zh) 无线通信终端网络设备功能的实现方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160912

Address after: 300308 Tianjin Airport Economic Zone, Binhai New Area seven East Road No. 2 Zhongxing Industrial Base

Patentee after: ZTE INTELLIGENT IOT TECHNOLOGY Co.,Ltd.

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee before: ZTE Corp.

CP03 Change of name, title or address

Address after: Room 401, building 12, east area, airport business park, No. 80, Huanhe North Road, free trade zone (Airport Economic Zone), Binhai New Area, Tianjin 300000

Patentee after: Gaoxing Zhilian Technology Co.,Ltd.

Address before: 300308, Zhongxing Industrial base, 2 East seven, Airport Economic Zone, Tianjin Binhai New Area

Patentee before: ZTE INTELLIGENT IOT TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address
CP01 Change in the name or title of a patent holder

Address after: Room 401, building 12, East Airport Business Park, 80 Huanhe North Road, Tianjin Binhai New Area pilot free trade zone (Airport Economic Zone)

Patentee after: Zte Intelligent Iot Technology Co.,Ltd.

Address before: Room 401, building 12, East Airport Business Park, 80 Huanhe North Road, Tianjin Binhai New Area pilot free trade zone (Airport Economic Zone)

Patentee before: Gaoxing Zhilian Technology Co.,Ltd.

CP01 Change in the name or title of a patent holder