如何在ADB shell中读取耳机状态和读取ACCDET寄存器

录入:edatop.com    点击:

[Description]

如何在ADB shell中读取耳机状态和读取ACCDET寄存器

[Solution]

获取耳机状态

cat /sys/class/switch/h2w/state

state值为0表示heADSet plug out;

state值为1表示有MIC的耳机插入(四段式耳机);

state值为2表示没有mic的耳机插入(三段式耳机)。

读取寄存器

cd /sys/devices/platform/Accdet_Driver/driver

echo 1 >start_debug

echo1 >dump_register

这样Accdet的reg会每500ms 抓到一次寄存器值,保存在log中

MT6589参考值(仅供参考):

无耳机:

<3>[31366.722403](0)[16408:ACCDET] ACCDET_BASE + 582=1090

<3>[31366.723021](0)[16408:ACCDET] ACCDET_BASE + 584=0

<3>[31366.723606](0)[16408:ACCDET] ACCDET_BASE + 586=0

<3>[31366.724191](0)[16408:ACCDET] ACCDET_BASE + 588=8ff

<3>[31366.724799](0)[16408:ACCDET] ACCDET_BASE + 58a=1ff

<3>[31366.725406](0)[16408:ACCDET] ACCDET_BASE + 58c=81f0

<3>[31366.726025](0)[16408:ACCDET] ACCDET_BASE + 58e=800

<3>[31366.726632](0)[16408:ACCDET] ACCDET_BASE + 590=800

<3>[31366.727240](0)[16408:ACCDET] ACCDET_BASE + 592=10

<3>[31366.727836](0)[16408:ACCDET] ACCDET_BASE + 594=20

<3>[31366.728433](0)[16408:ACCDET] ACCDET_BASE + 596=333

<3>[31366.729040](0)[16408:ACCDET] ACCDET_BASE + 598=0

<3>[31366.729625](0)[16408:ACCDET] ACCDET_BASE + 59a=0

<3>[31366.730211](0)[16408:ACCDET] ACCDET_BASE + 59c=ff

<3>[31366.733668](0)[16408:ACCDET] ACCDET_BASE + 59e=20

<3>[31366.735256](0)[16408:ACCDET] ACCDET_BASE + 5a0=0

<3>[31366.735882](0)[16408:ACCDET] ACCDET_BASE + 5a2=0

<3>[31366.737017](0)[16408:ACCDET] 0x00000114 =0

<3>[31366.737537](0)[16408:ACCDET] 0x0000017E =12

<3>[31366.738068](0)[16408:ACCDET] 0x00000180 =0

<3>[31366.738588](0)[16408:ACCDET] 0x00000182 =0

<3>[31366.739109](0)[16408:ACCDET] 0x00000102 =4607

<3>[31366.739662](0)[16408:ACCDET] 0x00000104 =0

<3>[31366.740183](0)[16408:ACCDET] 0x00000106 =0

<3>[31366.742454](0)[16408:ACCDET] 0x00004000 =0

有耳机:

<3>[31595.222402](0)[16408:ACCDET] ACCDET_BASE + 582=1090

<3>[31595.223020](0)[16408:ACCDET] ACCDET_BASE + 584=1

<3>[31595.223606](0)[16408:ACCDET] ACCDET_BASE + 586=77

<3>[31595.224202](0)[16408:ACCDET] ACCDET_BASE + 588=8ff

<3>[31595.224810](0)[16408:ACCDET] ACCDET_BASE + 58a=1ff

<3>[31595.225417](0)[16408:ACCDET] ACCDET_BASE + 58c=81f0

<3>[31595.226035](0)[16408:ACCDET] ACCDET_BASE + 58e=400

<3>[31595.226643](0)[16408:ACCDET] ACCDET_BASE + 590=800

<3>[31595.227250](0)[16408:ACCDET] ACCDET_BASE + 592=10

<3>[31595.227846](0)[16408:ACCDET] ACCDET_BASE + 594=20

<3>[31595.228443](0)[16408:ACCDET] ACCDET_BASE + 596=333

<3>[31595.229050](0)[16408:ACCDET] ACCDET_BASE + 598=0

<3>[31595.229636](0)[16408:ACCDET] ACCDET_BASE + 59a=0

<3>[31595.230222](0)[16408:ACCDET] ACCDET_BASE + 59c=7055

<3>[31595.232650](0)[16408:ACCDET] ACCDET_BASE + 59e=800

<3>[31595.233258](0)[16408:ACCDET] ACCDET_BASE + 5a0=0

<3>[31595.233842](0)[16408:ACCDET] ACCDET_BASE + 5a2=0

<3>[31595.234428](0)[16408:ACCDET] 0x00000114 =0

<3>[31595.234948](0)[16408:ACCDET] 0x0000017E =16

<3>[31595.235480](0)[16408:ACCDET] 0x00000180 =0

<3>[31595.236000](0)[16408:ACCDET] 0x00000182 =0

<3>[31595.236521](0)[16408:ACCDET] 0x00000102 =607

<3>[31595.237063](0)[16408:ACCDET] 0x00000104 =0

<3>[31595.237584](0)[16408:ACCDET] 0x00000106 =0

<3>[31595.238104](0)[16408:ACCDET] 0x00004000 =0

很简短的帖子但是很实用,最近就是一直在搞这个!

申明:网友回复良莠不齐,仅供参考。如需专业帮助,请学习易迪拓培训专家讲授的ADS视频培训课程。

adb shell读取返回值_如何在ADB shell中读取耳机状态和读取ACCDET寄存器相关推荐

  1. idea 更改自动补全返回值_整理了一些 IDEA 中比较骚的技巧

    IDEA 有个很牛逼的功能,那就是后缀补全(不是自动补全),很多人竟然不知道这个操作,还在手动敲代码. 这个功能可以使用代码补全来模板式地补全语句,如遍历循环语句(for.foreach).使用 St ...

  2. c 语言 函数返回数组_如何在C ++函数中返回数组

    c 语言 函数返回数组 介绍 (Introduction) In this tutorial, we are going to understand how we can return an arra ...

  3. adb shell读取返回值_android代码执行adb shell终端命令(linux命令)并返回执行结果...

    在做Android开发板相关的开发需求的时候,我们有的时候需要去到Android系统的一个linux终端(adbshell)里面来执行一些命令,以便于查看部分文件内容或者修改部分文件权限等需求,通常我 ...

  4. scala中map添加值_如何在Scala Map中反转键和值

    scala中map添加值 A Map is a data structure that stores data as key: value pair. 映射是一种将数据存储为键:值对的数据结构. Sy ...

  5. python一个函数调用另一个函数的返回值_在另一个函数中使用返回值

    所以我认为当你调用check_channel_number函数时,user_channel_number是在那里定义的,所以当你调用delete_events函数时,它已经超出了范围,也许这样会有帮助 ...

  6. 14.3 shell函数返回值

    3. shell函数返回值 3.1 获取上一个命令的退出状态$? 3.2 获取函数的返回值$? 3.3 函数的返回值接收调用方式 3.1 获取上一个命令的退出状态$? $? 是一个特殊变量,用来获取上 ...

  7. Shell函数返回值、删除函数、在终端调用函数

    Shell 也支持函数.Shell 函数必须先定义后使用. Shell 函数的定义格式如下: function_name () {list of commands[ return value ] } ...

  8. Shell函数:Shell函数返回值、删除函数、在终端调用函数

    函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高.像其他编程语言一样,Shell 也支持函数.Shell 函数必须先定义后使用. Shell 函数的定义格式如下: f ...

  9. Linux Shell 函数返回值

    Shell函数返回值,常用的两种方式:return,echo 1) return 语句shell函数的返回值,可以和其他语言的返回值一样,通过return语句返回. 示例: #!/bin/sh fun ...

最新文章

  1. hbuilder egit插件的安装使用--项目文件丢失的教训
  2. HANA Calculation View
  3. 基于FPGA的竞赛抢答器
  4. CF1286D-LCC【动态dp,数学期望】
  5. [css] 检测sass中错误的指令是哪个?
  6. Java学习笔记—TCP通信
  7. scala bitset_Scala中的BitSet
  8. 1分钟实现Autodesk Vault登录对话框
  9. PHP中的错误处理set_error_handler()与trigger_error()的问题
  10. mysql pxc介绍_MySQL高可用之PXC简介
  11. 谷歌地图打不开怎么办?
  12. 8255芯片+8254芯片实现硬延时跑马灯
  13. 教资科目二重点简答题总结
  14. Ubuntu下Linux系统部署fisco时bash操作报错权限不足(permission denied) failed to run command ‘........‘
  15. 气传导蓝牙耳机哪个牌子好?口碑好的气传导耳机分享
  16. MAC电脑连接windows台式机
  17. 重要!我的公众号要改名了(一些感想...)
  18. BZOJ1695 : [Usaco2007 Demo]Walk the Talk
  19. Git连接远程仓库(私有/公开仓库),克隆代码
  20. 2020-10-18大二第七周

热门文章

  1. 基于C++和Python的Dijkstra算法实现及其堆优化
  2. Vmware虚拟机网络模式原理及配置详解
  3. 语法学类毕业论文文献(推荐10篇)
  4. python强制类型转换 list_Python 类型强制转换
  5. DM7 基于麒麟 3.2 搭建方法
  6. 高德导航有没有语音服务器,实测高德百度的语音助手,到底好不好用
  7. Sql语句:内连接、左连接和右连接
  8. MediaPlayer 音乐播放器进度条
  9. 查看专利(完整文字页面)的小方法
  10. [转]Windows Server 2008 对 CPU 及 RAM 的支持规格