手机或手表的计步原理是走路或跑步,加速度会按一定规律的变化,根据这个原理,来算出步数。所以一直读取手机重力传感器的数据,进行分析统计,便可算出步数。但由于手机休眠后,重力传感器会进入休眠,程序也进入冻结态,所以该方案不取。
现在主流的计步方案有如下几种
1.带硬件计步的重力传感器
如意法半导体推出的LIS2DS12、LSM6DS3/33计步传感器系列,国内的ds3553,da217,手机进入休眠后,传感器在suspend仍能继续进行计步,此时传感器的功耗达到uA级别,功耗可忽略不计。从计步准确性来讲,st系列(iphone有采用该芯片)的准确度高。
lsm6ds33规格书 https://www.alldatasheetcn.com/datasheet-pdf/pdf/880694/STMICROELECTRONICS/LSM6DS33.html
ds217规格书http://www.miramems.com/uploadfiles/Show/20150810164514277.pdf
2.带senhub架构的cpu+普通重力传感器
带senhub架构的cpu,在手机进入休眠后,senhub架构仍能继续工作,这样就能继续计步。计步算法由cpu厂商开发,如展讯的SC9863a芯片。