全球RPA市场收入将继续以强劲的速度增长,根据KeyBanc Capital Markets的数据,全球RPA市场在10年内将出现高达千亿美元商机。在企业数字化转型的浪潮中,RPA以符合大势所趋的优势成为各个行业的首选技术。 那么,RPA究竟能在哪些行业发挥价值?我们翻译并整理了RPA的行业应用,一共61个,最全的RPA应用送给各位RPA爱好者。 总体来看可以归纳为五个方面: 1、常见业务流程与活动 2、商业职能活动(营业额、客户关系管理) 3、业务支持活动(技术支持、技术、财务、人力资源、运营、采购流程) 4、行业特定活动(银行业、保险、电信、零售) 5、供个人使用的RPA应用,例如数字助理 常见业务流程与活动 1-报价到收款 企业销售运营方面出问题会导致客户投诉或由于笔误而不得不降价销售。销售运营流程的全面自动化可以杜绝这些错误,并为客户提供高效服务。由于自动化处理销售的速度快于人工处理,因此客户能更早收到发票,从而提早回款,改善企业现金流。 2-采购到付款 采购到付款流程涉及从多个系统(例如企业资源计划(ERP)、客户关系管理(CRM)、银行、供应商、物流公司)提取发票和付款数据,由于并非所有系统都能提供简单的集成方法,因此通常涉及某些形式的人工劳动。RPA机器人可以弥补集成方面的空白。基于它们在前端工作的特性提供一种简便的方法自动实现集成。 借助全自动的采购付款程序,客户可以确保遵循采购最佳实践,并且确保所有交易都只有一个真实来源。 3-客户熟悉产品流程 大多数B2C业务都有客户熟悉产品流程,这对于减少客户流失并启用产品至关重要。使用OCR和认知自动化,即使在依赖旧系统的公司中,大多数客户熟悉产品的流程也可以立即完成,从而大大改善客户体验。 我们看到一家大型银行在客户熟悉产品流程中实现了直通式处理(STP),并将产品熟悉周期从20天缩短到5分钟。 众多业务职能中其它常见的活动 我们在上面列出了可以应用RPA的一些主要的端到端流程,但也有其他应用场景。RPA为团队提供了自动化的“瑞士军刀”,随着自动化机会的出现,有需求的团队将更多的借助自动化。 其他使用RPA的领域包括: 4-数据迁移和输入 传统系统仍在企业中发挥关键职能。例如,传统计费系统需要与其他系统对接,并且此类系统可能不具有从API中提取相关数据的能力。在这种情况下,员工可以使用CSV等格式手动迁移数据,RPA能代替这样的体力劳动和可能带来的文书错误。 另外,RPA可以帮助集成应用程序,并允许进行更全面的分析。 5-数据更新 包括人力资源,客户服务和市场营销在内的大多数部门通常都需要更新不断变化的客户/人员或者其他数据。设置自动化程序从表单或电子邮件中自动更新相关数据可以确保部门访问最新且正确的数据。 6-数据验证 大多数数据验证控件都可以嵌入到数据库中。但是,有一些数据验证任务更适合用RPA自动化,例如将数据与公共数据进行交叉比对。 7-从PDF,扫描的文档和其他格式中提取数据 屏幕抓取,OCR(光学字符识别)和基本的模式识别技术可从几乎任何格式提取数据,从而减少了录入数据的需求。 8-定期报告的编写和分发 企业需要用定期报告来告知管理人员并确保团队了解工作进度。虽然这类报告每周或者每月发送一次也不是很费力,但也会分散员工注意力。 RPA解决方案能轻松自动生成报告、分析其内容,然后根据这些内容以电子邮件的形式发送给相关人员。 9-生成大量电子邮件 人工很难生成那些来自多个系统数据的大量电子邮件。同时,如果企业又涉及很多这方面的邮件,那么就需要考虑自动化了。 商业职能活动 市场营销 10-销售线索培养 潜在客户通过各种渠道获得,比如来自LinkedIn,线索收集表和供应商。 销售 销售人员的精力应该主要用在销售业务本身以及与客户建立关系上,但是在大多数组织中,他们的大部分时间都花在了运营活动上。 对此,RPA提供了一种自动化这些活动的方法: 11-创建和交付发票 CRM和会计系统都需要同样的销售数据。机器人可以更新会计记录,从正确的电子邮件帐户准备和交付发票,不需要手动复制数据。 12-更新CRM 将互动信息更新到CRM是一项费时且无成效的工作,因为Salesforce的行为需要充当与客户互动的真实来源。有一类新兴的解决方案允许公司将电子邮件、电话和其他通信数据集成到CRM中。如果找不到适合您正在使用的CRM系统的解决方案,还可以编写一个简单的”机器人“软件来使用客户联系数据更新CRM记录。 13-更新计分卡 在HR和CRM系统之间缺乏集成的公司可以利用RPA机器人来确保将CRM中的更改上传到计分卡上,方便销售代表实时查看进度。 客户关系管理 客户联络中心十分依赖各家供应商提供的系统。其中,一级联络台主要处理大量简单的重复任务,这些工作是RPA的理想选择。 客户代表需要了解客户的意图,通过在不同的系统和应用之间进行切换来执行必要的操作,并通知客户。这有几个缺点,客户需要在销售代表忙于处理数据时等待,有时需要询问以前询问过的信息。这样就降低了客户满意度并增加了通话时间。这是公司浪费资源同时又引起客户不满的罕见例子之一。 该解决方案要求识别频繁的客户查询,检查响应这些查询的客户代表操作,并构建RPA解决方案以促进这些操作。共有几种解决方案: 客户代表可以在需要跨系统同步多个数据时启动机器人。只需按下按钮,机器人即可在几毫秒内完成所有操作。 可以为常见查询创建仪表板。客户代表将填写必要的数据以解决问题,而机器人将在多个系统中使用该数据来完成交易。 这些是典型的应用场景,其中可以使用此类自动化解决方案来自动化高频/重复性任务: 14-调用详细的客户资料 15-获取详细的账单数据 通过专业编写的RPA机器人软件检索该数据,只需从销售代表处单击即可在几秒钟内调用付款数据。 16-更新用户首选项和其他用户信息 17-解决简单但常见的客户问题 例如,重置宽带与服务器的连接可以解决一些简单的连接问题,这可以在不切换屏幕的情况下用一个简单的RPA机器人来完成。 18-自动化那些需要很少决策的多步骤任务 客户服务代表经常需要操作遗留系统来完成一些常见的任务。 如果这些步骤不需要人工判断,则可以轻松实现自动化,从而节省大量时间。 业务支持活动 L1技术支持 在没有增加自动化能力的情况下,IT支持团队常常被简单而耗时的查询所淹没。机器人可以围绕IT应用和基础架构自动执行各种复杂的系统管理任务,包括: 19-定期诊断 机器人的定期诊断工作使技术支持团队领先于其他团队,并让他们在常规用户注意到可能的故障之前做出响应。 20-故障修复 技术 21-向客户或员工开放内部工具 几乎所有的客户服务或技术支持部门都有高级功能的内部工具。他们依靠服务代表来使用这些工具并为内部或外部客户提供服务。如果这些工具在旧系统中未经培训就很难直接向客户或员工公开,但是RPA提供了一个解决方案。 大多数功能的使用频率遵循帕累托法则,即80/20法则。一些功能是常用的,而其余功能几乎从未使用过。在确定内部工具的常用功能之后,可以编写简单的Web界面,借助RPA机器人来完成这些功能。这样既节省了用户时间,又减轻了支持团队的负担。 22-软件安装 RPA可以实现具有相互依赖组件的复杂系统的一键式安装。 23-自动化测试 常见的测试场景都可以使用RPA工具自动执行,并且这些测试在每个版本之后运行,以确保新的缺陷不会引入代码中。 财务 24-财务规划 财务规划包括在财务规划与分析(FP&A)系统中处理和合并来自多个部门的财务报表,该系统至少可以实现局部自动化。 25-银行对帐单核对 从银行对账单中提取数据用于核对记录,并将其与公司自己的记录进行比较,这是一个相对容易自动化的流程。但是当公司合作的银行变更后,基于规则的自动化可能会中断。因此,需要在公司更改其银行服务提供商之后测试机器人的初始输出。 26-日损益准备 大型金融服务公司(尤其是贸易公司)需要每天跟踪损益和风险敞口。虽然有些公司已经自动化了这些流程,但仍有一些公司依赖excel、传统工具和手动操作来完成这些报表。UiPath 在与某家金融服务公司的案例中显示,安装RPA后,该公司的处理时间从60分钟缩短到20分钟,并且提高了报告的准确性。 人力资源 27-物色应聘者 依赖旧版HR系统的公司可以通过机器人自动汇总简历,然后评估结果和面试笔记。 28-履历验证 此流程包括许多常规步骤,例如安排采访,维护记录。UiPath在8周内为客户推出了自动化程序,减少了40%的人力劳动。 29-聘用、入职和裁员 尤其是对于成长中或收缩中的公司,招聘和解雇给人力资源和其他支持职能(如IT、安全、设施管理)带来了巨大的负担。虽然构建包含所有这些功能并完成新员工或离职员工所需任务的解决方案的成本很高,但是RPA机器人可以相对快速有效地进行部署。 30-工资自动化 工资核算功能需要重复处理工资核算,还需要考虑各种法规和公司规则。在UiPath的一个案例研究中,客户的工资单处理速度提高了85%,实施流程仅用了7周的时间,并将人工操作减少了25%。 31-缺勤管理 UiPath在3个月内为一家德国人力资源服务提供商推出了自动化流程SAP病假证明的方法。RPA的推出将人工工作量减少到自动化前水平的5%,并将处理时间减少了80%。 32-工人的赔偿要求 由于受伤或疾病而导致的工人缺席需要报告给理赔管理服务提供商以管理工人的赔偿要求,这是一个相对简单且可自动化的流程。 33-费用管理 尽管有完善的专用费用管理解决方案,但大多数公司仍在使用过时的系统,要求员工提供有关费用的详细信息。员工提供的收据中已经包含了诸如费用金额,日期或地点之类的大多数详细信息。 具有OCR功能的RPA解决方案可以自动从收据中提取重要字段,从而节省员工的时间。这也可以使他们免于携带收据,因为仅对收据拍照就能够从收据中提取相关数据并在费用表中填写重要字段。 34-人力资源虚拟助手 能够验证客户身份并满足其所有与人力资源相关需求的聊天机器人将有助于人力资源部门专注于更高附加值的活动。这样的机器人可以帮助员工登记病假和休假时间,请求有关其工作合同的信息并提交费用报销。 运营 35-更新库存记录 库存管理通常涉及跨多个系统的协调,公司将所有库存管理功能整合到一个系统中是一个不小的挑战,RPA机器人可以轻松实现这种系统间协调和通信的自动化。 36-退款 退款流程的迟缓会导致严重的延误和客户不满。UiPath 与一家信用报告公司合作了8周,实现了部分退款流程的自动化,将人工操作减少了90%。 37-合规 不断变化的业务,法规或税收要求,例如2018年在迪拜引入增值税,要求企业验证数千条记录。UiPath客户Landmark 利用RPA来处理数千条记录。 采购流程 38-更新供应商记录 供应商主文件对于保持最新状态非常重要,它们可以确保不同部门或部门可以协调其支出。使用RPA更新此类文件可以使采购专业人员从简单的任务中解放出来去专注于管理供应商关系。 行业特定流程 根据我们的经验和研究,包括保险和BPO在内的金融服务似乎是RPA技术的最大用户。 银行业 39-了解您的客户(KYC) 尽管出现了专用的KYC解决方案,但如果你的公司不喜欢使用一种解决方案,则可以使用RPA机器人来自动执行KYC流程的某些部分。对于需要人工干预的边缘案例,可以将案例转发给员工。 40-贷款处理 与大多数文档处理任务一样,此流程也适用于RPA自动化,因为可以将复杂的业务逻辑嵌入到RPA中,从而半自动执行贷款决策并遵循该决策的手动流程。 41-交易执行 如果遗留系统无法存储复杂的限制订单,则RPA机器人可以提供帮助。 42-当日资金转账 合作银行需要使用提供当日资金转账的票据交换所自动付款系统(CHAPS)完成付款。如果借助自动化,整个流程可以从10分钟缩短到几秒钟,处理步骤包括检查资金可用性,在无误的情况
2022-07-29 09:57:31 959KB RPA初级考试答案
1
單個圖像研究 3D 形狀建模,並在三個方面對其做出貢獻。首先,我們介紹了 Pix3D,這是一個具有像素級 2D-3D 對齊的各種圖像形狀對的大規模基準。Pix3D 在形狀相關的任務中有著廣泛的應用,包括重建、檢索、視點估計等。然而,構建這樣一個大規模的數據集是非常具有挑戰性的;現有數據集要么僅包含合成數據,要么缺乏 2D 圖像和 3D 形狀之間的精確對齊,或者只有少量圖像。其次,我們通過行為研究校準了 3D 形狀重建的評估標準,並用它們來客觀、系統地對 Pix3D 上的尖端重建算法進行基準測試。第三,我們設計了一個同時執行 3D 重建和姿態估計的新模型 需要安裝下列庫 GCC 4.8.5 CUDA 8.0 Python 3.6.4 TensorFlow 1.1.0 numpy 1.14.0 skimage 0.13.1 numba 0.36.2 scipy 1.0.0 tqdm 4.19.4
1
医学医疗-快易通诊所管理系统(图片教程).doc
2022-07-27 17:04:00 4.92MB 医学医疗
1
医学医疗-快易通诊所管理系统.docx
2022-07-27 17:03:58 304KB 医学医疗
1
驾照考试-全安一点通交规驾考软件.docx
2022-07-27 15:01:01 84KB 驾照考试
1
lc低通滤波器截止频率计算公式低通滤波器截止频率计算公式lc低通滤波器截止频率计算公式LC串联时,电路复阻抗Z= jwL-j(1/wC)令Im[Z]=0,即wL
1
监控 天视通NVR硬盘录像机配置软件 修改开机画面 开机logo 修改通道画面 通道logo 适合diy硬盘录像机 加广告 联系方式都可以
2022-07-26 14:05:30 470KB NVR刷机硬盘录像机DIY
1
全志R58的官方开发板加载bmi160驱动的步骤3B.txt 开发板:全志R58的官方开发板R58_PER3_LPDDR3_32X1_V1_1.pdf(板载加速度传感器bma250) 目标:外挂bmi160模块可以检测到加速度和角速度(acc+gyr/加速度传感器+陀螺仪) BSP:r58_20160823.tar.gz(2016/8/22从全志的git服务器拿下来的系统) 显示:HDMI输出1080p分辨率的LCD显示器。 计划步骤: 1、打通开发板上的bma250(证明开发板硬件是好的。全志官方的BSP也是好的。) 2、将驱动程序bma250.c中的bma250全部替换为bmi160,验证是可以加入新的gsensor的(陀螺仪类似)。 3、借用bma250.c这个驱动程序,初始化的部分修改为初始化bmi160,调通BMI160的gsensor部分。 4、完善全志/博世提供的bmi160的驱动程序,调通BMI160的gsensor部分。 (陀螺仪部分鱼刺类似,陀螺仪部分借用l3gd20.c来验证bmi160的gyr部分) 下面进行第三步:借用bma250.c这个驱动程序,初始化的部分修改为初始化bmi160,调通BMI160的gsensor部分。 为了方便观察,直接注释掉除了bma250之外的全部的gsensor: Z:\home\wwt\only_bma250_r58\android\device\softwinner\common\hardware-common\libhardware\libsensors\aw_sensors\sensorDetect.cpp struct sensor_extend_t gsensorList[] = { { { "bma250", LSG_BMA250, }, { "Bosch 3-axis Accelerometer", "Bosch Sensortec", 1, 0, SENSOR_TYPE_ACCELEROMETER, 4.0f*9.81f, (4.0f*9.81f)/1024.0f, 0.2f, 0,0,0, { }, }, }, }; Z:\home\wwt\only_bma250_r58\android\device\softwinner\octopus-perf\configs\gsensor.cfg ;Direction parameter adjustment, including the x, y, z axis, and xy interchange four variables, ;the name of the module used for identification, and drive registered name consistent ;-------------------------- ;name:bma250 ;-------------------------- gsensor_name = bma250 gsensor_direct_x = false gsensor_direct_y = true gsensor_direct_z = true gsensor_xy_revert = true Z:\home\wwt\only_bma250_r58\android\device\softwinner\octopus-perf\BoardConfig.mk #gsensor & Gyr sensor SW_BOARD_USES_SENSORS_TYPE = aw_sensors 注意:lunch的f1选项在HAL层中使用的ST的9轴(ACC+GYR+MAG)传感器。 #gsensor & Gyr sensor SW_BOARD_USES_SENSORS_TYPE = lsm9ds0 Z:\home\wwt\only_bma250_r58\android\device\softwinner\octopus-perf\init.sun8i.rc on boot # use automatic detecttion insmod ctp & gsensor driver #insmod /system/vendor/modules/sw-device.ko insmod /system/vendor/modules/bma250.ko Z:\home\wwt\only_bma250_r58\android\device\softwinner\octopus-perf\octopus_perf.mk (已经默认配置了。lunch选择f1必须要修改,否则adb shell不能用!) # usb PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.usb.config=mtp,adb \ ro.udisk.lable=octopus \ ro.adb.secure=0 Z:\home\wwt\only_bma250_r58\lichee\linux-3.4\drivers\hwmon\bma250.c Z:\home\wwt\only_bma250_r58\lichee\linux-3.4\drivers\hwmon\bmi160.h Z:\home\wwt\only_bma250_r58\lichee\linux-3.4\drivers\hwmon\bmi160_driver.h (请做相应的修改) Z:\home\wwt\only_bma250_r58\lichee\linux-3.4\drivers\input\sw-device.c /*gsensor info*/ static struct sw_device_info gsensors[] = { { "bma250", 0, {0x18, 0x19, 0x08, 0x38}, 0x00, {0x02,0x03,0xf9,0xf8}, 0}, }; Z:\home\wwt\only_bma250_r58\lichee\tools\pack\chips\sun8iw6p1\configs\perf3_v1_0\sys_config.fex ;-------------------------------------------------------------------------------- ; G sensor configuration ; gs_twi_id --- TWI ID for controlling Gsensor (0: TWI0, 1: TWI1, 2: TWI2) ;-------------------------------------------------------------------------------- [gsensor_para] gsensor_used = 1 gsensor_twi_id = 1 gsensor_twi_addr = 0x68 ;gsensor_int1 = port:PG11<6><1> ;gsensor_int2 = ;-------------------------------------------------------------------------------- ; G sensor automatic detection configuration ;gsensor_detect_used --- Whether startup automatic inspection function. 1:used,0:unused ;Module name postposition 1 said detection, 0 means no detection. ;-------------------------------------------------------------------------------- [gsensor_list_para] gsensor_det_used = 1 bma250 = 1 使用全志的原生系统,lichee和android的编译选项都是perf3: android使用ENG模式编译,方便调试之用。 wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 4. sun8iw6p1 Choice: 4 All available platforms: 0. android Choice: 0 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 5. perf3_v1_0 wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/lichee$ ./build.sh wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/lichee$ cd ../android/ wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/android$ source build/envsetup.sh including device/softwinner/kylin-p1/vendorsetup.sh including device/softwinner/octopus-n1/vendorsetup.sh including device/softwinner/octopus-f1/vendorsetup.sh including device/softwinner/common/vendorsetup.sh including device/softwinner/astar-y3/vendorsetup.sh including device/softwinner/octopus-perf/vendorsetup.sh including device/lge/mako/vendorsetup.sh including device/lge/hammerhead/vendorsetup.sh including device/samsung/manta/vendorsetup.sh including device/generic/x86/vendorsetup.sh including device/generic/mips/vendorsetup.sh including device/generic/armv7-a-neon/vendorsetup.sh including device/asus/tilapia/vendorsetup.sh including device/asus/deb/vendorsetup.sh including device/asus/grouper/vendorsetup.sh including device/asus/flo/vendorsetup.sh including sdk/bash_completion/adb.bash wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/android$ lunch You're building on Linux Lunch menu... pick a combo: 13. octopus_perf-eng Which would you like? [aosp_arm-eng] 13 ============================================ PLATFORM_VERSION_CODENAME=REL PLATFORM_VERSION=4.4.4 TARGET_PRODUCT=octopus_perf TARGET_BUILD_VARIANT=eng TARGET_BUILD_TYPE=release TARGET_BUILD_APPS= TARGET_ARCH=arm TARGET_ARCH_VARIANT=armv7-a-neon TARGET_CPU_VARIANT=cortex-a7 HOST_ARCH=x86 HOST_OS=linux HOST_OS_EXTRA=Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty HOST_BUILD_TYPE=release BUILD_ID=KTU84Q OUT_DIR=out ============================================ wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/android$ extract-bsp /home/wwt/r58_bma250/android/device/softwinner/octopus-perf/bImage copied! /home/wwt/r58_bma250/android/device/softwinner/octopus-perf/modules copied! wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/android$ make -j8 wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/android$ pack BuildImg 0 Dragon execute image.cfg SUCCESS ! ----------image is at---------- /home/wwt/r58_bma250/lichee/tools/pack/sun8iw6p1_android_perf3_v1_0_uart0.img pack finish wenyuanbo@cm-System-Product-Name:/home/wwt/r58_bma250/android$ 使用PhoenixSuit将sun8iw6p1_android_perf3_v1_0_uart0.img这个固件刷机之后,可以看见显示器满屏幕了。 设置菜单里面的WIFI/BT等等选项的打开部分按钮缺失(感觉是拉伸的)。 使用360手机助手(安装之后是竖屏)截图,发现HDMI显示的分辨率只有819x1280。 由于使用perf3的ENG模式编译的系统,adb shell默认可以连接,360手机助手直接连接android。 Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。保留所有权利。 C:\Users\Administrator>adb shell root@octopus-perf:/ # 在串口打印中可以看到命令:input keyevent 82可以直接解锁系统。 shell@octopus-perf:/ # input keyevent 82 设置→显示→休眠→无操作30分钟后(f1编译选项有永久) 设置→安全→屏幕锁定→无 设置→辅助功能→自动旋转屏幕(去掉选中即可就改为横屏了) su之后使用getevent -p有发现bma250这个加速度传感器生成的input4设备: shell@octopus-perf:/ $ su shell@octopus-perf:/ # getevnet -p sh: getevnet: not found 127|shell@octopus-perf:/ # getevent -p add device 1: /dev/input/event5 name: "l3gd20_gyr" events: ABS (0003): 0000 : value 0, min -32768, max 32768, fuzz 0, flat 0, resolution 0 0001 : value 0, min -32768, max 32768, fuzz 0, flat 0, resolution 0 0002 : value 0, min -32768, max 32768, fuzz 0, flat 0, resolution 0 input props: could not get driver version for /dev/input/js1, Invalid argument add device 2: /dev/input/event4 name: "bma250" events: ABS (0003): 0000 : value 0, min -19613100, max 19613100, fuzz 0, flat 0, resolution 0 0001 : value 0, min -19613100, max 19613100, fuzz 0, flat 0, resolution 0 0002 : value 0, min -19613100, max 19613100, fuzz 0, flat 0, resolution 0 0028 : value 0, min 0, max 0, fuzz 0, flat 0, resolution 0 input props: could not get driver version for /dev/input/js0, Invalid argument could not get driver version for /dev/input/mouse0, Not a typewriter add device 3: /dev/input/event3 name: "PixArt USB Optical Mouse" events: KEY (0001): 0110 0111 0112 0113 0114 0115 0116 0117 REL (0002): 0000 0001 0008 MSC (0004): 0004 input props: add device 4: /dev/input/event0 name: "axp81x-supplyer" events: KEY (0001): 0074 input props: add device 5: /dev/input/event2 name: "sunxi-ths" events: ABS (0003): 0028 : value 0, min -50, max 180, fuzz 0, flat 0, resolution 0 input props: add device 6: /dev/input/event1 name: "sunxi-keyboard" events: KEY (0001): 001c 0066 0072 0073 008b input props: could not get driver version for /dev/input/mice, Not a typewriter shell@octopus-perf:/ # (查看bma250的驱动模块是否加载)lsmod(有加载) shell@octopus-perf:/ # lsmod cdc_ether 3163 0 - Live 0x00000000 rtl8150 9023 0 - Live 0x00000000 mcs7830 5644 0 - Live 0x00000000 qf9700 5904 0 - Live 0x00000000 asix 13590 0 - Live 0x00000000 usbnet 14128 4 cdc_ether,mcs7830,qf9700,asix, Live 0x00000000 bcm_btlpm 7658 0 - Live 0x00000000 l3gd20_gyr 13018 0 - Live 0x00000000 ft5x_ts 61962 0 - Live 0x00000000 bma250 8122 0 - Live 0x00000000 sunxi_schw 13015 0 - Live 0x00000000 (O) vfe_v4l2 785679 0 - Live 0x00000000 gc2035 12400 0 - Live 0x00000000 ov5640 27225 0 - Live 0x00000000 vfe_subdev 4695 3 vfe_v4l2,gc2035,ov5640, Live 0x00000000 vfe_os 4113 2 vfe_v4l2,vfe_subdev, Live 0x00000000 cci 22800 3 vfe_v4l2,gc2035,ov5640, Live 0x00000000 videobuf_dma_contig 4165 1 vfe_v4l2, Live 0x00000000 videobuf_core 16528 2 vfe_v4l2,videobuf_dma_contig, Live 0x00000000 pvrsrvkm 279643 33 - Live 0x00000000 (O) hdmi 38647 0 - Live 0x00000000 disp 1023342 6 hdmi, Live 0x00000000 sunxi_tr 9348 1 disp, Live 0x00000000 nand 299879 0 - Live 0x00000000 (O) shell@octopus-perf:/ # 查找bma250.ko是否编译进系统(有编译,sw_device.ko不能识别bma250.ko): shell@octopus-perf:/ # cd /system/vendor/modules/ shell@octopus-perf:/system/vendor/modules # shell@octopus-perf:/system/vendor/modules # ll l3gd* -rw-r--r-- root root 160453 2016-09-07 16:50 l3gd20_gyr.ko shell@octopus-perf:/system/vendor/modules # ll bm* -rw-r--r-- root root 139998 2016-09-07 16:50 bma250.ko -rw-r--r-- root root 252117 2016-09-07 16:50 bmg160_gyr.ko shell@octopus-perf:/system/vendor/modules # 但是getevent没有检测到bma250的上报事件: shell@octopus-perf:/system/vendor/modules # getevent add device 1: /dev/input/event5 name: "l3gd20_gyr" could not get driver version for /dev/input/js1, Invalid argument add device 2: /dev/input/event4 name: "bma250" could not get driver version for /dev/input/js0, Invalid argument could not get driver version for /dev/input/mouse0, Not a typewriter add device 3: /dev/input/event3 name: "PixArt USB Optical Mouse" add device 4: /dev/input/event0 name: "axp81x-supplyer" add device 5: /dev/input/event2 name: "sunxi-ths" add device 6: /dev/input/event1 name: "sunxi-keyboard" could not get driver version for /dev/input/mice, Not a typewriter 挪动鼠标的上报事件: /dev/input/event3: 0002 0001 00000001 /dev/input/event3: 0000 0000 00000000 查看bma250的I2C驱动是否成功挂载(成功挂载。) 1-0018,1表示I2C1,从0开始,第二条总线。18为十六进制的0x18,bma250的I2C从机地址向右移动一位之后的值。 cshell@octopus-perf:/system/vendor/modules # cd /sys/class/i2c-adapter/i2c-1 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # ll drwxr-xr-x root root 1970-01-02 08:22 1-0040 drwxr-xr-x root root 1970-01-02 08:22 1-0041 drwxr-xr-x root root 1970-01-02 08:22 1-0042 drwxr-xr-x root root 1970-01-02 08:22 1-0043 drwxr-xr-x root root 1970-01-02 08:22 1-0044 drwxr-xr-x root root 1970-01-02 08:22 1-0046 drwxr-xr-x root root 1970-01-02 08:22 1-0068 --w------- root root 4096 1970-01-02 08:22 delete_device lrwxrwxrwx root root 1970-01-02 08:22 device -> ../../twi.1 -r--r--r-- root root 4096 1970-01-02 08:22 name --w------- root root 4096 1970-01-02 08:22 new_device drwxr-xr-x root root 1970-01-02 08:22 power lrwxrwxrwx root root 1970-01-02 08:22 subsystem -> ../../../../bus/i2c -rw-r--r-- root root 4096 1970-01-02 08:22 uevent shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # cd 1-0068 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0068 # ll lrwxrwxrwx root root 1970-01-02 08:22 driver -> ../../../../../bus/i2c/drivers/bma250 -r--r--r-- root root 4096 1970-01-02 08:22 modalias -r--r--r-- root root 4096 1970-01-02 08:22 name drwxr-xr-x root root 1970-01-02 08:22 power lrwxrwxrwx root root 1970-01-02 08:22 subsystem -> ../../../../../bus/i2c -rw-r--r-- root root 4096 1970-01-02 08:22 uevent shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0068 # cat name bma250 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0068 # shell@octopus-perf:/system/vendor/modules # cd /sys/class/i2c-adapter/i2c-1 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # ll drwxr-xr-x root root 1970-01-02 10:30 1-0040 drwxr-xr-x root root 1970-01-02 10:30 1-0041 drwxr-xr-x root root 1970-01-02 10:30 1-0042 drwxr-xr-x root root 1970-01-02 10:30 1-0043 drwxr-xr-x root root 1970-01-02 10:30 1-0044 drwxr-xr-x root root 1970-01-02 10:30 1-0046 drwxr-xr-x root root 1970-01-02 10:30 1-0068 drwxr-xr-x root root 1970-01-02 10:23 1-0070 --w------- root root 4096 1970-01-02 10:30 delete_device lrwxrwxrwx root root 1970-01-02 10:30 device -> ../../twi.1 -r--r--r-- root root 4096 1970-01-02 10:30 name --w------- root root 4096 1970-01-02 10:30 new_device drwxr-xr-x root root 1970-01-02 10:30 power lrwxrwxrwx root root 1970-01-02 10:30 subsystem -> ../../../../bus/i2c -rw-r--r-- root root 4096 1970-01-02 10:30 uevent shell@octopus-perf:/sys/class/i2c-adapter/i2c-1 # cd 1-0070 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # ll lrwxrwxrwx root root 1970-01-02 10:30 driver -> ../../../../../bus/i2c/drivers/l3gd20_gyr -rw-rw-rw- root root 4096 1970-01-02 10:30 enable_device -rw-rw-rw- root root 4096 1970-01-02 10:30 enable_polling -rw-rw-rw- root root 4096 1970-01-02 10:30 fifo_mode -rw-rw-rw- root root 4096 1970-01-02 10:30 fifo_samples drwxr-xr-x root root 1970-01-02 10:23 input -r--r--r-- root root 4096 1970-01-02 10:30 modalias -r--r--r-- root root 4096 1970-01-02 10:30 name -rw-rw-rw- root root 4096 1970-01-02 10:30 pollrate_ms drwxr-xr-x root root 1970-01-02 10:30 power -rw-rw-rw- root root 4096 1970-01-02 10:30 range --w------- root root 4096 1970-01-02 10:30 reg_addr -rw------- root root 4096 1970-01-02 10:30 reg_value lrwxrwxrwx root root 1970-01-02 10:30 subsystem -> ../../../../../bus/i2c -rw-r--r-- root root 4096 1970-01-02 10:30 uevent shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # cat name l3gd20_gyr shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # cat en enable_device enable_polling shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # cat enable_device 0 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # cd input/ shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070/input # ll drwxr-xr-x root root 1970-01-02 10:23 input5 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070/input # cd .. shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # cat range 2000 shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0070 # 查看bma250的input4事件: shell@octopus-perf:/sys/class/i2c-adapter/i2c-1/1-0018 # cd /sys/class/input/input4 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # ll -rw-rw-r-- root root 4096 1970-01-02 16:34 bandwidth drwxr-xr-x root root 1970-01-02 16:34 capabilities -rw-rw-r-- root root 4096 1970-01-02 16:34 delay -rw-rw-r-- root root 4096 1970-01-02 16:34 enable drwxr-xr-x root root 1970-01-02 16:27 event4 drwxr-xr-x root root 1970-01-02 16:34 id drwxr-xr-x root root 1970-01-02 16:27 js0 -r--r--r-- root root 4096 1970-01-02 16:34 modalias -rw-rw-r-- root root 4096 1970-01-02 16:34 mode -r--r--r-- root root 4096 1970-01-02 16:34 name -r--r--r-- root root 4096 1970-01-02 16:34 phys drwxr-xr-x root root 1970-01-02 16:34 power -r--r--r-- root root 4096 1970-01-02 16:34 properties -rw-rw-r-- root root 4096 1970-01-02 16:34 range lrwxrwxrwx root root 1970-01-02 16:34 subsystem -> ../../../../class/input -rw-r--r-- root root 4096 1970-01-02 16:34 uevent -r--r--r-- root root 4096 1970-01-02 16:34 uniq -r--r--r-- root root 4096 1970-01-02 16:34 value shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat enable 0 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat value 0 0 0 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cd ../input5 shell@octopus-perf:/sys/class/input/input5 # ll drwxr-xr-x root root 1970-01-02 10:32 capabilities lrwxrwxrwx root root 1970-01-02 10:32 device -> ../../../1-0070 drwxr-xr-x root root 1970-01-02 10:32 event5 drwxr-xr-x root root 1970-01-02 10:32 id drwxr-xr-x root root 1970-01-02 10:32 js1 -r--r--r-- root root 4096 1970-01-02 10:32 max -r--r--r-- root root 4096 1970-01-02 10:32 min -r--r--r-- root root 4096 1970-01-02 10:32 modalias -r--r--r-- root root 4096 1970-01-02 10:23 name -r--r--r-- root root 4096 1970-01-02 10:32 phys -rw-r--r-- root root 4096 1970-01-02 10:32 poll drwxr-xr-x root root 1970-01-02 10:32 power -r--r--r-- root root 4096 1970-01-02 10:32 properties lrwxrwxrwx root root 1970-01-02 10:32 subsystem -> ../../../../../../../class/input -rw-r--r-- root root 4096 1970-01-02 10:32 uevent -r--r--r-- root root 4096 1970-01-02 10:32 uniq shell@octopus-perf:/sys/class/input/input5 # cat name l3gd20_gyr 使能enable为0,值value当然也是0。 两种方式打开使能enable。 第一种方法:命令行输入:ehco 1 > enable shell@octopus-perf:/sys/class/input/input4 # cat enable 0 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # echo 1 > enable shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat enable 1 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat value 28 0 251 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat value 23 -2 250 shell@octopus-perf:/sys/class/input/input4 # cat value 15 6 253 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # 关闭使能enable: shell@octopus-perf:/sys/class/input/input4 # cat enable 1 shell@octopus-perf:/sys/class/input/input4 # echo 0 > enable shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat enable 0 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # cat value 26 -11 244 shell@octopus-perf:/sys/class/input/input4 # cat value 26 -11 244 shell@octopus-perf:/sys/class/input/input4 # cat value 26 -11 244 这个value的值(26 -11 244)是gsensor的最后一次上报的值,没有从驱动中被清除。 android的HAL/Android对于完全相同的gsensor的值,会被过滤掉。 由于gsensor的精度等等原因,两次的gsensor采样的值肯定不同。 虚拟gsensor的时候要注意!!!! 第二种方法: 设置→辅助功能→自动旋转屏幕(选中) shell@octopus-perf:/sys/class/input/input5 # getevent add device 1: /dev/input/event5 name: "l3gd20_gyr" could not get driver version for /dev/input/js1, Invalid argument add device 2: /dev/input/event4 name: "bma250" could not get driver version for /dev/input/js0, Invalid argument could not get driver version for /dev/input/mouse0, Not a typewriter add device 3: /dev/input/event3 name: "PixArt USB Optical Mouse" add device 4: /dev/input/event0 name: "axp81x-supplyer" add device 5: /dev/input/event2 name: "sunxi-ths" add device 6: /dev/input/event1 name: "sunxi-keyboard" could not get driver version for /dev/input/mice, Not a typewriter /dev/input/event5: 0003 0000 ffffffe0 /dev/input/event5: 0003 0001 00000008 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 0000002c /dev/input/event5: 0003 0001 00000001 /dev/input/event5: 0003 0002 fffffff5 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 ffffffe6 /dev/input/event5: 0003 0001 00000003 /dev/input/event5: 0003 0002 fffffff0 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0000 ffffffd2 /dev/input/event4: 0003 0002 00000126 /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 ffffffe8 /dev/input/event5: 0003 0001 00000000 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 00000011 /dev/input/event5: 0003 0001 0000000a /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 ffffffe2 /dev/input/event5: 0003 0001 00000002 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffe /dev/input/event5: 0003 0001 00000000 /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0001 00000005 /dev/input/event4: 0003 0002 0000010d /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 00000002 /dev/input/event5: 0003 0001 00000008 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 ffffffea /dev/input/event5: 0003 0001 00000001 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 00000003 /dev/input/event5: 0003 0001 00000007 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0000 ffffffd1 /dev/input/event4: 0003 0002 0000010b /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff7 /dev/input/event5: 0003 0001 00000004 /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff5 /dev/input/event5: 0003 0001 00000003 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffd /dev/input/event5: 0003 0001 00000006 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 ffffffef /dev/input/event5: 0003 0001 00000003 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0001 00000004 /dev/input/event4: 0003 0002 00000110 /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff7 /dev/input/event5: 0003 0001 00000005 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffe /dev/input/event5: 0003 0001 00000004 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffc /dev/input/event5: 0003 0001 00000006 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0000 ffffffd2 /dev/input/event4: 0003 0002 00000111 /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 ffffffef /dev/input/event5: 0003 0001 00000005 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff9 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffa /dev/input/event5: 0003 0001 00000003 /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffb /dev/input/event5: 0003 0001 00000005 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0000 ffffffd1 /dev/input/event4: 0003 0002 0000010c /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff6 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff4 /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffb /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0000 ffffffd2 /dev/input/event4: 0003 0002 0000010f /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff7 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffd /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff7 /dev/input/event5: 0003 0001 00000003 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff8 /dev/input/event5: 0003 0001 00000005 /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0001 00000003 /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff6 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff9 /dev/input/event5: 0003 0001 00000004 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0000 ffffffd1 /dev/input/event4: 0003 0001 00000004 /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff4 /dev/input/event5: 0003 0001 00000005 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffc /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff9 /dev/input/event5: 0003 0001 00000004 /dev/input/event5: 0003 0002 fffffff3 /dev/input/event5: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffff5 /dev/input/event5: 0003 0001 00000005 /dev/input/event5: 0003 0002 fffffff2 /dev/input/event5: 0000 0000 00000000 /dev/input/event4: 0003 0002 00000110 /dev/input/event4: 0000 0000 00000000 /dev/input/event5: 0003 0000 fffffffb /dev/input/event5: 0003 0001 00000004 /dev/input/event5: 0003 0002 fffffff4 /dev/input/event5: 0000 0000 00000000 gsensor的上报格式: shell@octopus-perf:/sys/class/input/input4 # cat enable 0 shell@octopus-perf:/sys/class/input/input4 # echo 1 > enable shell@octopus-perf:/sys/class/input/input4 # cat value 24 2 256 shell@octopus-perf:/sys/class/input/input4 # cat value 22 8 231 shell@octopus-perf:/sys/class/input/input4 # cat value 27 -3 253 shell@octopus-perf:/sys/class/input/input4 # shell@octopus-perf:/sys/class/input/input4 # getevent add device 1: /dev/input/event4 name: "bma250" could not get driver version for /dev/input/js0, Invalid argument could not get driver version for /dev/input/mouse0, Not a typewriter add device 2: /dev/input/event3 name: "PixArt USB Optical Mouse" add device 3: /dev/input/event0 name: "axp81x-supplyer" add device 4: /dev/input/event2 name: "sunxi-ths" add device 5: /dev/input/event1 name: "sunxi-keyboard" could not get driver version for /dev/input/mice, Not a typewriter /dev/input/event4: 0003 0000 00000015 /dev/input/event4: 0003 0002 00000109 /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 00000021 /dev/input/event4: 0003 0001 fffffffa /dev/input/event4: 0003 0002 000000f9 /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 00000018 /dev/input/event4: 0003 0001 ffffffff /dev/input/event4: 0003 0002 000000fd /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 00000017 /dev/input/event4: 0003 0001 00000008 /dev/input/event4: 0003 0002 000000f8 /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 00000018 /dev/input/event4: 0003 0001 fffffffe /dev/input/event4: 0003 0002 000000f6 /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 0000001c /dev/input/event4: 0003 0001 fffffffa /dev/input/event4: 0003 0002 00000100 /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 0000001f /dev/input/event4: 0003 0001 00000000 /dev/input/event4: 0003 0002 000000fa /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 00000015 /dev/input/event4: 0003 0001 ffffffff 解释: /dev/input/event4: 0000 0000 00000000 /dev/input/event4: 0003 0000 00000021 /dev/input/event4: 0003 0001 fffffffa /dev/input/event4: 0003 0002 000000f9 /dev/input/event4: 0000 0000 00000000 上报数据前后的分隔符: /dev/input/event4: 0000 0000 00000000 gsensor的X/Y/Z数据: /dev/input/event4: 0003 0000 00000021 /dev/input/event4: 0003 0001 fffffffa /dev/input/event4: 0003 0002 000000f9 其中:0003应该是格式。 0000/0001/0002表示X/Y/Z。 00000021/fffffffa/000000f9为十六进制的X/Y/Z的值。 十进制为:33/(-5)/249 和value:(27 -3 253)很接近。 通过360手机助手安装:使用gSensor加速度传感器.apk shell@octopus-perf:/sys/class/input/input4 # cat value 23 2 256 shell@octopus-perf:/sys/class/input/input4 # cat value 26 -2 248 shell@octopus-perf:/sys/class/input/input4 # cat value 14 4 255 shell@octopus-perf:/sys/class/input/input4 # 虽然强制加载bma250.ko成功,并且使能了bma250,且获得了加速度分量。 android层也可以检测到加速度的值。 初步的总体感觉:bmi160的用加速度传感器这个APK测试的时候,抖动不如bma250明显(静态漂移)! 灵敏度都差不多。 驱动程序的I2C读取函数调用了博世提供的不完整的驱动中处理函数。 看似有点多次一举,并且还有很多x数字的bma250.c的文件,只是让大家知道做出来的艰辛。 !!!!Gyroscope Rotate1.1 com.gyro_2检测陀螺仪好用.apk 陀螺仪也可以看到在旋转了。
2022-07-23 20:33:28 12MB android
1
暗月mysql全版本通杀提权神器使用教程.zip
2022-07-23 13:29:19 25.53MB tool
1
e盾验证,可可验证,起点验证,天盾验证,雷盾验证等等验证通杀 zes
1