方向检测方法与手持装置的制作方法

文档序号:6376457阅读:167来源:国知局

专利名称::方向检测方法与手持装置的制作方法
技术领域
:本发明涉及一种手持装置,特别涉及一种具有方向检测机制的手持装置。
背景技术
:近年来,手持装置,如手机、智能手机或是个人数字助理,已经是到处存在且大多数人在他们的生活中都变得越来越依赖这些手持装置。手持装置的设计是朝着轻、薄、短、小的方向设计,相对地也限制了手持装置的电池的可使用的空间。更进一步来说,越来越多的功能、装置与模块都被整合到手持装置内,连带的手持装置所需要的电力也因而增加。因此,对手持装置的设计来说,电力消耗已经成为一个重要的问题。
发明内容本发明的一实施例提供一种方向检测方法,适用于一手持装置。该方向检测方法包括取得一加速度数据;判断该手持装置是否处于一平放状态;判断该手持装置是否处于一稳定状态;当该手持装置被判断处于该平放状态以及该稳定状况时,停止取得该加速度数据,直到接收一致能信号才再次取得该加速度数据。本发明的另一实施例提供一种手持装置。该手持装置包括一加速度计以及一处理器。该处理器查询该加速度计以得到一加速度数据,并判断该手持装置是否位于一平放状态与一稳定状态。当该手持装置被判断处于该平放状态以及该稳定状况时,该处理器停止查询该加速度计,直到接收一致能信号才再次取得该加速度数据。图1为根据本发明的一方向检测算法的一实施例的流程图。图2为根据本发明的一方向检测算法的另一实施例的流程图。图3为根据本发明的一方向检测算法的另一实施例的流程图。图4A与图4B为根据本发明的一方向检测算法的另一实施例的流程图。图5为根据本发明的具有前述方向检测机制的手持装置的一实施例的示意图。主要元件符号说明5广处理器52加速度计53方向检测算法具体实施方式有关本发明的前述及其他技术内容、特点与功效,在以下配合参考图式的一优选实施例的详细说明中,将可清楚的呈现。以下实施例中所提到的方向用语,例如上、下、左、右、前或后等,仅是参考附加图式的方向。因此,使用的方向用语是用来说明并非用来限制本发明。一个重力感应器(G-sensor)通常是一个加速度计(accelerometer)。加速度计会测量其在速度变化上所承受到的力。一般来说,手持装置或是行动装置会利用重力感应器来根据手持装置被放置的方向来调校屏幕。手持装置会根据加速度计的输出来做出对应的旋转。根据一些具有重力感应器的手持装置来看,手持装置的操作系统或是处理器会以一预定采样速率的速度来查询(query)加速度计以取得加速度数据,并根据加速度数据判断手持装置的方向。但是过高的采样频率会造成处理器资源的浪费。因此,本发明提供一种创新的方向检测算法(orientationdetectionalgorithm),在重力感应器已经被查询后,降低功率消耗。图I为根据本发明的一方向检测算法的一实施例的流程图。在步骤Sll中,该方向检测算法被致能。致能方向检测算法的时机可以根据设计者的需求所决定。在本实施例中,当一应用程序被执行,且该应用程序需要手持装置的方向信息时,该方向检测算法被致能。这些应用程序可能包含了桌面程序(desktopprogram)或背景程序,这些程序会在手持装置开机时就会被自动地执行。举例来说,可能是一些浏览程序或是需要方向信息来调整屏幕的游戏。在步骤S12中,手持装置的该处理器(或是称作CPU)从重力感应器中取得该加速度数据,并且计算目前手持装置的角度(倾斜角度或转动角度)。该处理器还根据两个求得的角度来判断一旋转的方向(orientationdirection)。在计算完目前的角度后,步骤S13被执行。在步骤S13中,该方向检测算法判断该手持装置是否位于一平放状态(flatstatus)。该平放状态是根据该手持装置的一倾斜角度与一转动角度的一绝对值来判断。如果该绝对值小于Zt(以倾斜角度来说)或Zr(以转动角度来说),该手持装置被判断位于该平放状态。换句话说,如果手持装置的倾斜角度的范围在-Zt度与Zt度之间,该手持装置的转动角度在-Zr度与Zr度之间,该手持装置被判断位于该平放状态。要注意的是,在本实施例中,判断手持装置是否位于平放状态是要同时考虑倾斜角度与转动角度。当该手持装置没有位于该平放状态时,步骤S15被执行,其中该处理器会先休眠或暂停查询该重力感应器一第一时间(S1-A期间),如200ms。接着,处理器重复步骤S12的运作。当该手持装置位于该平放状态时,步骤S14被执行,其中该处理器接着判断该手持装置是否位于一稳定状态(stablestatus)。稳定状态的判断是根据该手持装置维持在该平放状态的一第二时间(S1-B期间)来决定。如果该第二时间大于一临界值(S1-C期间),该手持装置被判断是位于一稳定状态,接着步骤S16被执行。如果该第二时间没有大于该临界值,步骤S15被执行,其中在该第一时间内,如200ms,该处理器会先休眠或暂停查询该重力感应器,接着处理器重复步骤S12的运作。在步骤S16中,该手持装置的该处理器致能该重力感应器的一平放中断功能(flatinterruptfunction)。要注意的是并非所有的重力感应器都具有平放中断功能,且在本实施例中的方向检测算法是专门适用于有平放中断功能的重力感应器。重力感应处的一引脚被连接至该手持装置的该处理器的一通用输入输出引脚(GPI0pin)。当该重力感应器检测到该手持装置已经没有位于平放状态时,该重力感测器传送一平放中断信号给该处理器。在本实施例中,步骤S13与步骤S14是被该手持装置的处理器执行,但是在步骤S16与步骤S17的平放状态是由重力感应器所判断。在步骤S17中,重力感应器等待中断事件的发生。在本实施例中,中断事件表示手持装置的姿势状态(posturestatus)被改变。举例来说,如果该手持装置的倾斜角度或转动角度大于一预定角度,该中断事件被判断发生,且该重力感应器输出该平放中断信号给该手持装置的处理器。在步骤S17中,手持装置的该处理器不去查询该加速度数据以降低该处理器的资源的浪费与该处理器消耗的电力。在步骤S18中,在该处理器接收到该平放中断信号后,该处理器取得该加速度数据以计算该手持装置的倾斜角度与转动角度。接着,在步骤S19中,判断手持装置是否仍处在平放状态。如果处理器判断该手持装置仍位于该平放状态,步骤S17被执行。如果处理器判断该手持装置没有位于该平放状态,步骤S12被执行。图2为根据本发明的一方向检测算法的另一实施例的流程图。在步骤S21中,手持装置的该处理器(或是称作CPU)从重力感应器中取得该加速度数据,并且计算目前手持装置的角度。该处理器还根据两个求得的角度来判断手持装置的一旋转方向。在计算完目前的角度后,步骤S22被执行。在步骤S22中,该方向检测算法判断该手持装置是否位于一平放状态(flatstatus)。该平放状态是根据该手持装置的一倾斜角度与一转动角度的一绝对值来判断。如果该绝对值小于Zt(以倾斜角度来说)或Zr(以转动角度来说),该手持装置被判断位于该平放状态。换句话说,如果手持装置的倾斜角度的范围在-Zt度与Zt度之间,该手持装置的转动角度在-Zr度与Zr度之间,该手持装置被判断位于该平放状态。要注意的是,在本实施例中,判断手持装置是否位于平放状态是要同时考虑倾斜角度与转动角度。当该手持装置没有位于该平放状态时,步骤S24被执行。在步骤S24中,该处理器以一第一速率查询该加速度计(S2-A期间为第一速率的周期或期间)。换句话说,该处理器会先休眠或暂停查询该重力感应器一第一时间(S2-A期间),如200ms。接着,处理器重复步骤S21的动作以取得加速度数据。当该手持装置位于该平放状态时,步骤S23被执行,其中该处理器在步骤S23中,判断该手持装置是否位于一稳定状态(stablecondition)。稳定状态的判断是根据该手持装置维持在该平放状态的一第二时间(S2-B期间)来决定。如果该第二时间大于一临界值(S2-C期间),该手持装置被判断是位于一稳定状态,接着步骤S25被执行。在一实施例中,该临界值为1000ms。如果该第二时间没有大于该临界值,步骤S24被执行,其中在该第一时间内,如200ms,该处理器会先休眠或暂停查询该重力感应器,接着处理器重复步骤S21的运作。在步骤S25中,该处理器以一第二速率查询该加速度计一第一时间(S2-A期间为第一速率的周期或期间)。换句话说,该处理器会先休眠或暂停查询该重力感应器一第三时间(S2-D期间),如600ms。接着,处理器重复步骤S21的动作以取得加速度数据。图2中的方向检测算法的主要特征在于手持装置的处理器使用了两种不同的查询速率。如果手持装置是位于平放状态且稳定状态,则处理器以第二速率查询该加速度计。如果手持装置不是位于平放状态或不是稳定状态则处理器以第一速率查询该加速度计,其中该第一速率比该第二速率快。图3为根据本发明的一方向检测算法的另一实施例的流程图。在步骤S31中,该方向检测算法被致能。致能方向检测算法的时机可以根据设计者的需求所决定。在步骤S32中,手持装置的该处理器(或是称作CPU)从重力感应器中取得该加速度数据,并且计算目前手持装置的角度。该处理器还根据两个求得的角度来判断一旋转的方向在计算完目前的角度后,步骤S33被执行。在步骤S33中,该方向检测算法判断该手持装置是否位于一平放状态(flatstatus)。该平放状态是根据该手持装置的一倾斜角度与一转动角度的一绝对值来判断。如果该绝对值小于Zt(以倾斜角度来说)或Zr(以转动角度来说),该手持装置被判断位于该平放状态。换句话说,如果手持装置的倾斜角度的范围在-Zt度与Zt度之间,该手持装置的转动角度在-Zr度与Zr度之间,该手持装置被判断位于该平放状态。要注意的是,在本实施例中,判断手持装置是否位于平放状态是要同时考虑倾斜角度与转动角度。当该手持装置没有位于该平放状态时,步骤S34被执行。在步骤S34中,该处理器以一第一速率查询该加速度计(S3-A期间为第一速率的周期或期间)。换句话说,该处理器会先休眠或暂停查询该重力感应器一第一时间(S3-A期间),如200ms。接着,处理器重复步骤S32的动作以取得加速度数据。当该手持装置位于该平放状态时,步骤S35被执行,其中该处理器在步骤S35中,判断该手持装置是否位于一稳定状态(stablecondition)。稳定状态的判断是根据该手持装置维持在该平放状态的一第二时间(S3-B期间)来决定。如果该第二时间大于一临界值(S3-C期间),该手持装置被判断是位于一稳定状态,接着步骤S36被执行。如果该第二时间没有大于该临界值,步骤S34被执行,其中在该第一时间(S3-A期间)内,如200ms,该处理器会先休眠或暂停查询该重力感应器,接着处理器重复步骤S32的运作。在本实施例中,该临界值为1000ms。在步骤S36中,该处理器以一第二速率查询该加速度计一第一时间(S3-A期间为第一速率的周期或期间)。换句话说,该处理器会先休眠或暂停查询该重力感应器一第三时间(S3-D期间),如600ms。接着,处理器重复步骤S32的动作以取得加速度数据。图4A与图4B为根据本发明的一方向检测算法的另一实施例的流程图。在步骤S401中,该方向检测算法被致能。致能方向检测算法的时机可以根据设计者的需求所决定。在步骤S402中,手持装置的该处理器(或是称作CPU)从加速度计中取得该加速度数据,并且计算目前手持装置的角度。该处理器还根据两个求得的角度来判断一旋转的方向在计算完目前的角度后,步骤S403被执行。在步骤S403中,该方向检测算法判断该手持装置是否位于一平放状态(flatstatus)。该平放状态是根据该手持装置的一倾斜角度与一转动角度的一绝对值来判断。如果该绝对值小于Zt(以倾斜角度来说)或Zr(以转动角度来说),该手持装置被判断位于该平放状态。换句话说,如果手持装置的倾斜角度的范围在-Zt度与Zt度之间,该手持装置的转动角度在-Zr度与Zr度之间,该手持装置被判断位于该平放状态。要注意的是,在本实施例中,判断手持装置是否位于平放状态是要同时考虑倾斜角度与转动角度。当该手持装置没有位于该平放状态时,步骤S410被执行,其中该处理器会判断手持装置是否位于一稳定状态。稳定状态的判断是根据该手持装置维持在该前一次状态的一第二时间(S4-B1期间)来决定,也就是手持装置的倾斜角度与转动角度都没有被改变。如果该第二时间没有大于一第一临界值(S4-C1期间),则手持装置被判断没有位于稳定状态且步骤S405被执行。在步骤S405中,在一第一时间(S4-A期间)内,如200ms,该处理器会先休眠或暂停查询该加速度计,接着处理器重复步骤S402的运作。如果该第二时间大于第一临界值(S4-C1期间),则手持装置被判断位于稳定状态,且步骤S411被执行。在步骤S403中,如果手持装置被判断是位于一平放状态,步骤S404被执行。步骤S404的动作是与步骤S410的动作相同,其中该处理器接着判断该手持装置是否位于一稳定状态。稳定状态的判断是根据该手持装置维持在该平放状态的一第三时间(S4-B2期间)来决定。如果该第三时间大于一第二临界值(S4-C2期间),该手持装置被判断是位于一稳定状态,接着步骤S406被执行。如果该第三时间没有大于该第二临界值,该手持装置被判断是没有位于稳定状态,步骤S405被执行。在步骤S405中,在一第一时间(S4-A期间)内,如200ms,该处理器会先休眠或暂停查询该加速度计,接着处理器重复步骤S402的运作。在一些情况下,该第二临界值是与该第一临界值相同。在步骤S406中,该手持装置的该处理器致能该加速度计的一平放中断功能(flatinterruptfunction)。要注意的是并非所有的加速度计都具有平放中断功能,且在本实施例中的方向检测算法是专门适用于有平放中断功能的加速度计。加速度计的一引脚被连接至该手持装置的该处理器的一通用输入输出引脚(GPI0pin)。当该加速度计检测到该手持装置已经没有位于平放状态时,该加速度计传送一平放中断信号给该处理器。从另一方面来看,该处理器会监控该GPIO引脚的状态,且当该GPIO引脚的逻辑状态被改变时,该处理器接着执行步骤S408。在步骤S407中,加速度计等待中断事件的发生。在本实施例中,中断事件表示手持装置的状态(status)被改变。举例来说,如果该手持装置的倾斜角度或转动角度大于一预定角度,该中断事件被判断发生,且该加速度计会输出该平放中断信号给该手持装置的处理器。在步骤S17中,该手持装置的该处理器不会去查询该加速度计以取得加速度数据以降低该处理器的资源的浪费与该处理器消耗的电力。步骤S408中,在该处理器接收到该平放中断信号后,该处理器取得该加速度数据以计算该手持装置的倾斜角度与转动角度。接着,在步骤S409中,判断手持装置是否仍处在平放状态。如果处理器判断该手持装置仍位于该平放状态,步骤S407被执行。如果处理器判断该手持装置没有位于该平放状态,步骤S402被执行。在步骤S410中,如果手持装置被判断是在稳定状态,步骤S411被执行,其中该处理器会致能该加速度计的一动作检测中断机制(any-motioninterruptfunction),并且会把手持装置的目前状态存储。手持装置的目前状态包括手持装置目前的倾斜角度与转动角度。当该加速度计判断该手持装置被转动或移动时,该动作检测中断机制会触发一中断信号并将该中断信号传送给处理器。在步骤S412,该处理器等待该加速度计触发的该中断信号。如果该处理器从该加速度计接收到该中断信号,步骤S402被执行。接着,处理器自该加速度计取得加速度数据以求得一第一倾斜角度与一第一转动角度。在步骤S412中,当在一第四时间(S4-D),如1000ms,后,仍没有收到该中断信号,接着执行步骤S413。在步骤S413中,手持装置的处理器自该加速度计取得加速度数据以求得一第一倾斜角度与一第一转动角度。接着处理器将目前的该第一倾斜角度与该第一转动角度与前一次存储的倾斜角度与转动角度相比。如果该第一倾斜角度与前一次存储的倾斜角度的角度差大于一预定角度,或该第一转动角度与前一次存储的转动角度的角度差大于该预定角度,处理器判断该手持装置被转动或移动,且步骤S412被执行。在本实施例中,当步骤S411与S412被执行时,该手持装置的该处理器不会去查询该加速度计以取得加速度数据以降低该处理器的资源的浪费与该处理器消耗的电力。图5为根据本发明的具有前述方向检测机制的手持装置的一实施例的示意图。处理器51查询(query)加速度计52以取得加速度数据,并且估计该手持装置的一倾斜角度与一转动角度。在已知的设计中,处理器51会持续的向加速度计52查询并取得加速度数据,但是这样的方式太浪费处理器51的资源以及电力。因此处理器51会执行方向检测算法53,以降低处理器51的资源浪费与电力消耗。关于方向检测算法53的详细内容可以参考第广4图的说明,在此为求说明书简洁而不赘述。然而以上所述为本发明的优选实施例而已,当不能以此限定本发明实施的范围,即大凡依本发明申请专利范围及发明说明内容所作的简单的等效变化与修饰,皆仍属本发明专利涵盖的范围内。另外本发明的任一实施例或申请专利范围不须达成本发明所公开的全部目的或优点或特点。此外,摘要部分和标题仅是用来辅助专利文件搜寻之用,并非用来限制本发明的权利要求书要求保护的范围。权利要求1.ー种方向检测方法,适用于一手持装置,包括取得一加速度数据;判断该手持装置是否处于一平放状态;判断该手持装置是否处于ー稳定状态;当该手持装置被判断处于该平放状态以及该稳定状况时,停止取得该加速度数据,直到接收一致能信号才再次取得该加速度数据。2.如权利要求I所述的方向检测方法,其中该平放状态通过下列步骤所判断根据该加速度数据估计该手持装置的ー倾斜角度;判断该倾斜角度的一第一绝对值是否大于ー第一预定值;以及当该第一绝对值没有大于该第一预定值时,该手持装置被判断处于该平放状态。3.如权利要求I所述的方向检测方法,其中该平放状态通过下列步骤所判断根据该加速度数据估计该手持装置的ー转动角度;判断该转动角度的一第二绝对值是否大于ー第二预定值;以及当该第二绝对值没有大于该第二预定值时,该手持装置被判断处于该平放状态。4.如权利要求I所述的方向检测方法,其中该稳定状态根据该手装置維持在该平放状态的ー第二时间所判断。5.如权利要求I所述的方向检测方法,其中该致能信号为ー中断信号,当一加速度计检测到该手持装置并没有处于该平放状态时,该中断信号由一加速度计所产生。6.如权利要求5所述的方向检测方法,其中该平放状态与该稳定状态是通过该手持装置的一处理器所判断,且判断是否产生该中断时,该平放状况是由该加速度计所判断。7.如权利要求5所述的方向检测方法,还包括在接收到该中断信号后,判断该手持装置是否位于该平放状态;以及当该手持装置被判断没有处于该平放状态时,取得该加速度数据。8.如权利要求I所述的方向检测方法,还包括当该手持装置没有位于该平放状态时,在一第一时间内停止取得该加速度数据;以及在停止取得该加速度数据的该第一时间后,取得该加速度数据以判断该手持装置是否位于该平放状态。9.如权利要求I所述的方向检测方法,还包括当该手持装置没有位于该稳定状态时,在一第一时间内停止取得该加速度数据;以及在停止取得该加速度数据的该第一时间后,取得该加速度数据以判断该手持装置是否位于该平放状态。10.如权利要求I所述的方向检测方法,其中当停止取得该加速度数据ー第三时间后,该致能信号被产生。11.如权利要求10所述的方向检测方法,还包括当接收到该致能信号时,取得该加速度数据以判断该手持装置是否位于该平放状态;当该手持装置被判断没有位于该平放状态时,取得该加速度数据再次判断该手持装置是否位于该平放状态;当该手持装置位于该平放状态时,在该第三时间内停止取得该加速度数据;以及当该手持装置被判断没有位于该平放状态时,取得该加速度数据。12.如权利要求I所述的方向检测方法,还包括当该手持装置被判断位于该平放状态与该稳定状态时,根据该加速度数据估计该手持装置的一第一倾斜角度;在停止接收该加速度数据ー第四时间后,取得一第二加速度数据以估计该手持装置的一第二倾斜角度;以及当该第一倾斜角度与该第二倾斜角度的一角度差大于ー预定角度吋,发出该致能信号。13.如权利要求I所述的方向检测方法,还包括当该手持装置被判断位于该平放状态与该稳定状态时,根据该加速度数据估计该手持装置的一第一转动角度;在停止接收该加速度数据ー第四时间后,取得一第二加速度数据以估计该手持装置的一第二转动角度;以及当该第一转动角度与该第二转动角度的一角度差大于ー预定角度吋,发出该致能信号。14.如权利要求I所述的方向检测方法,还包括致能一动作检测机制;每4个周期接收ー第二加速度数据以估计该手持装置的一角度;根据该估计的角度判断该手持装置的一移动是否在一临界值内;以及当该移动大于该临界值吋,发出该致能信号。15.一种手持装置,包括一加速度计;以及ー处理器,用以查询该加速度计以得到一加速度数据,并判断该手持装置是否位于ー平放状态与ー稳定状态,且当该手持装置被判断处于该平放状态以及该稳定状况时,该处理器停止查询该加速度计,直到接收一致能信号才再次取得该加速度数据。16.如权利要求15项的手持装置,其中该处理器根据该加速度数据估计该手持装置的ー倾斜角度,且当该处理器判断该倾斜角度的一第一绝对值没有大于ー第一预定值吋,该手持装置被判断处于该平放状态。17.如权利要求15项的手持装置,其中该处理器根据该加速度数据估计该手持装置的ー转动角度,且当该处理器判断该转动角度的一第一绝对值没有大于ー第一预定值吋,该手持装置被判断处于该平放状态。18.如权利要求15项的手持装置,其中当该手持装置被判断没有位于一平放状态与ー稳定状态时,该处理器以一第一速率查询该加速度计,且当该手持装置被判断位于一平放状态与ー稳定状态时,该处理器以一第二速率查询该加速度计。19.如权利要求15项的手持装置,其中当该处理器检测到在一第二时间内,该手装置皆維持在该平放状态,则该手持装置被判断为于该稳定状态。20.如权利要求15项的手持装置,其中在该手持装置被判断位于一平放状态与ー稳定状态后,该处理器致能ー动作检测机制,该处理器每4个周期去查询该加速度计以取得一第二加速度数据以估计该手持装置的一角度,并根据该估计的角度判断该手持装置是否被移动,且当该手持装置被移动后,发出该致能信号。全文摘要方向检测方法与手持装置。该方向检测方法适用于一手持装置,包括取得一加速度数据;判断该手持装置是否处于一平放状态;判断该手持装置是否处于一稳定状态;当该手持装置被判断处于该平放状态以及该稳定状况时,停止取得该加速度数据,直到接收一致能信号才再次取得该加速度数据。文档编号G06F3/01GK102981612SQ20121032727公开日2013年3月20日申请日期2012年9月6日优先权日2011年9月6日发明者魏至君,黄培浩,柯惠贞,杨宇轩,凃渊耀申请人:宏达国际电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1