一种控制机顶盒LED的GPIO的管控方法及系统技术方案

技术编号:15522880 阅读:111 留言:0更新日期:2017-06-04 11:47
本发明专利技术涉及一种控制机顶盒LED的GPIO的管控方法及系统,预先将LED属性和GPIO的控制属性进行定义,然后将定义的好属性封装在预设的控制变量中,将封装好的控制变量发送到Hal层进行解析,得到定义好的属性来对GPIO进行初始化,当应用层操控LED时,Hal层根据定义好的属性通过快速查询来对GPIO进行管控,从而完成对LED的操控,对GPIO的管控非常简单灵活。由于已经预先定义好所需的LED属性和GPIO控制属性,当控制LED的GPIO发生变更时,只需要在Board层对定义的属性进行修改发送给Hal层进行解析即可,逻辑设计简单,减轻了Hal层不断设置GPIO的重复性工作,提高了CPU处理效率,避免对LED的控制出现问题。

Method and system for managing and controlling GPIO of set-top box LED

Management control method and system of the present invention relates to a set-top box control LED GPIO, will be defined in advance control properties of the LED and GPIO properties, and good property package are defined in the control variables preset, control variables will send a good package to the Hal layer analysis, obtained good attribute definition to initialize for GPIO, when the application layer control layer according to the LED, Hal properties are defined by fast query to control GPIO, thus completing the LED control, GPIO control is very simple and flexible. As has been previously defined LED and GPIO attributes required control, when the control of LED GPIO changes, only need to define the attributes in the Board layer to the Hal layer of the modified transmission can be reduced, the logic design is simple, repetitive work continue to set the GPIO Hal layer, improve the processing efficiency of CPU and avoid the LED control problems.

【技术实现步骤摘要】
一种控制机顶盒LED的GPIO的管控方法及系统
本专利技术涉及数字电视终端,尤其涉及一种控制机顶盒LED的GPIO的管控方法及系统。
技术介绍
在机顶盒LED控制中,控制机顶盒LED的GPIO(GeneralPurposeInputOutput,通用输入/输出端口,简称为GPIO)配置在Board层(板层),对LED的控制在Hal层(硬件抽象层)。目前,对于LED的控制,是一个GPIO控制一个LED的打开和关闭。因此,在软件实现上,仅仅将Board层的GPIO引脚号和逻辑值发送给Hal层,进而实现相应LED的控制,这种单口控制LED的方式虽然逻辑简单易行,但若一个LED用两个GPIO进行控制,来实现LED的多种状态(开关、颜色等)时,则需要同时设置两个GPIO,两个GPIO控制LED会给Hal层软件的逻辑实现带来较大困难,当控制LED的GPIO稍有变更时,board层和Hal层针对GPIO的相关改动及实现会变得非常繁琐,逻辑设计容易混乱,对LED的控制出现问题。
技术实现思路
有鉴于此,有必要针对上述两个GPIO控制LED,在GPIO变更时,board层和Hal层针对GPIO的相关改动及实现繁琐且逻辑设计容易混乱的问题,提供一种控制机顶盒LED的GPIO的管控方法及系统。本专利技术提供的一种控制机顶盒LED的GPIO的管控方法,包括如下步骤:S10:在Board层,预先定义LED属性及LED对应的GPIO的控制属性,其中LED属性分别包括LED的受控模式、LED的状态信息以及LED功能标识信息;GPIO的控制属性分别包括:GPIO引脚号、GPIO逻辑值以及GPIO操作状态;S20:在Board层,定义一个控制变量,按照预设规则对LED属性和GPIO的控制属性进行封装;S30:将封装好的控制变量发送到Hal层,由Hal层对控制变量进行解析,根据解析结果对GPIO进行初始化;S40:在Hal层接收到应用层发送来的LED控制消息时,由Hal层根据解析结果对GPIO进行相应的控制,控制LED进行操作。在其中的一个实施方式中,所述步骤S10具体为:将LED的状态信息定义为LED的颜色枚举,定义一组LED颜色的颜色枚举变量;LED功能标识信息定义一组标识功能的功能枚举变量。在其中的一个实施方式中,所述控制变量为64位数据。在其中的一个实施方式中,所述LED的受控模式封装在控制变量的第0个字节的低四位,所述LED的状态信息封装在控制变量的第1个字节的低四位,所述LED功能标识信息封装在控制变量的第2个字节;所述GPIO引脚号封装在控制变量的第4和第5个字节,所述GPIO逻辑值封装在控制变量的第6和第7个字节,所述GPIO操作状态封装在控制变量的第3个字节。本专利技术提供的一种控制机顶盒LED的GPIO的管控系统,包括:属性定义模块,在Board层,预先定义LED属性及LED对应的GPIO的控制属性,其中LED属性分别包括LED的受控模式、LED的状态信息以及LED功能标识信息;GPIO的控制属性分别包括:GPIO引脚号、GPIO逻辑值以及GPIO操作状态;封装模块,在Board层,定义一个控制变量,按照预设规则对LED属性和GPIO的控制属性进行封装;控制变量发送模块,将封装好的控制变量发送到Hal层,控制由Hal层对控制变量进行解析,根据解析结果对GPIO进行初始化;控制模块,在Hal层接收到应用层发送来的LED控制消息时,由Hal层根据解析结果对GPIO进行相应的控制,控制LED进行操作。在其中的一个实施方式中,所述属性定义模块将LED的状态信息定义为LED的颜色枚举,定义一组LED颜色的颜色枚举变量;将LED功能标识信息定义一组标识功能的功能枚举变量。在其中的一个实施方式中,所述控制变量为64位数据。在其中的一个实施方式中,所述封装模块将LED的受控模式封装在控制变量的第0个字节的低四位,所述LED的状态信息封装在控制变量的第1个字节的低四位,所述LED功能标识信息封装在控制变量的第2个字节;所述封装模块将GPIO引脚号封装在控制变量的第4和第5个字节,所述GPIO逻辑值封装在控制变量的第6和第7个字节,所述GPIO操作状态封装在控制变量的第3个字节。本专利技术控制机顶盒LED的GPIO的管控方法及系统,预先将LED属性和GPIO的控制属性进行定义,然后将定义的好属性封装在预设的控制变量中,将封装好的控制变量发送到Hal层进行解析,得到定义好的属性来对GPIO进行初始化,当应用层操控LED时,Hal层根据定义好的属性通过快速查询来对GPIO进行管控,从而完成对LED的操控,对GPIO的管控非常简单灵活。由于已经预先定义好所需的LED属性和GPIO控制属性,当控制LED的GPIO发生变更时,只需要在Board层对定义的属性进行修改发送给Hal层进行解析即可,逻辑设计简单,减轻了Hal层不断设置GPIO的重复性工作,提高了CPU处理效率,避免对LED的控制出现问题。附图说明图1是一个实施例中的控制机顶盒LED的GPIO的管控方法的流程图;图2是一个实施例中的控制机顶盒LED的GPIO的管控系统的结构图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。图1是一个实施例中的控制机顶盒LED的GPIO的管控方法的流程图,如图1所示,该方法包括如下步骤:S10:在Board层,预先定义LED属性及LED对应的GPIO的控制属性,其中LED属性分别包括LED的受控模式、LED的状态信息以及LED功能标识信息;GPIO的控制属性分别包括:GPIO引脚号、GPIO逻辑值以及GPIO操作状态。由于目前LED的控制,需要两个GPIO来进行,两个GPIO控制一个LED容易出现混乱,故在该实施例中,针对LED的控制,预先定义LED属性以及对应的GPIO的控制属性。其中,LED属性分别包括LED的受控模式、LED的状态信息以及LED功能标识信息。LED的受控模式包括:mode_1(单口控制)、mode_2(双口控制)。LED的状态信息:若是单口控制模式,则为开和关两种状态;若是双口模式状态则为四种状态。由于双控模式的四种状态可以涵盖单控的两种状态,为了涵盖所有状态并便于扩展及管理,进一步的,将LED的状态信息定义为LED的颜色枚举,定义一组LED颜色的颜色枚举变量。LED功能标识信息指LED带标识的功能,例如mail、signal、online、power、wifi、bluetooth等。为方便管理,进一步的,LED功能标识信息定义一组标识功能的功能枚举变量。GPIO的控制属性分别包括:GPIO引脚号、GPIO逻辑值以及GPIO操作状态。S20:在Board层,定义一个控制变量,按照预设规则对LED属性和GPIO的控制属性进行封装。在定义好LED属性和GPIO的控制属性后,需要将定义好的LED属性和GPIO的控制属性发送到Hal层,为方便发送和管理,该步骤中,在Board层预先定义一个控制变量,该控制变量用来封装定义好的LED属性和GPIO的控制属性。进一步的,该控制变量为64位数据。具体封装时,LED的受控模式本文档来自技高网...
一种控制机顶盒LED的GPIO的管控方法及系统

【技术保护点】
一种控制机顶盒LED的GPIO的管控方法,其特征在于,包括如下步骤:S10:在Board层,预先定义LED属性及LED对应的GPIO的控制属性,其中LED属性分别包括LED的受控模式、LED的状态信息以及LED功能标识信息;GPIO的控制属性分别包括:GPIO引脚号、GPIO逻辑值以及GPIO操作状态;S20:在Board层,定义一个控制变量,按照预设规则对LED属性和GPIO的控制属性进行封装;S30:将封装好的控制变量发送到Hal层,由Hal层对控制变量进行解析,根据解析结果对GPIO进行初始化;S40:在Hal层接收到应用层发送来的LED控制消息时,由Hal层根据解析结果对GPIO进行相应的控制,控制LED进行操作。

【技术特征摘要】
1.一种控制机顶盒LED的GPIO的管控方法,其特征在于,包括如下步骤:S10:在Board层,预先定义LED属性及LED对应的GPIO的控制属性,其中LED属性分别包括LED的受控模式、LED的状态信息以及LED功能标识信息;GPIO的控制属性分别包括:GPIO引脚号、GPIO逻辑值以及GPIO操作状态;S20:在Board层,定义一个控制变量,按照预设规则对LED属性和GPIO的控制属性进行封装;S30:将封装好的控制变量发送到Hal层,由Hal层对控制变量进行解析,根据解析结果对GPIO进行初始化;S40:在Hal层接收到应用层发送来的LED控制消息时,由Hal层根据解析结果对GPIO进行相应的控制,控制LED进行操作。2.根据权利要求1所述的控制机顶盒LED的GPIO的管控方法,其特征在于,所述步骤S10具体为:将LED的状态信息定义为LED的颜色枚举,定义一组LED颜色的颜色枚举变量;LED功能标识信息定义一组标识功能的功能枚举变量。3.根据权利要求2所述的控制机顶盒LED的GPIO的管控方法,其特征在于,所述控制变量为64位数据。4.根据权利要求3所述的控制机顶盒LED的GPIO的管控方法,其特征在于,所述LED的受控模式封装在控制变量的第0个字节的低四位,所述LED的状态信息封装在控制变量的第1个字节的低四位,所述LED功能标识信息封装在控制变量的第2个字节;所述GPIO引脚号封装在控制变量的第4和第5个字节,所述GPIO逻辑值封装在控制变量的第6和第7个字节,所述GPIO操作状态封装在控制变量的第3个字节。5.一种控制机顶...

【专利技术属性】
技术研发人员:王华泽
申请(专利权)人:深圳市九洲电器有限公司
类型:发明
国别省市:广东,44

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

1