安卓高通Diag命令解析

一、命令发送
不同公司都有自己的独有的Diag测试命令,所以移植过来的指令可能还需要调整,在调试Diag命令时候如果如果把获取系统属性的命令调通,其他命令也类似。
使用Qxdm发送Diag命令
方法:打开Qxdm软件->选择相关端口 ->选择“CommandOut”模式 ->发送栏输入发送命令
需要注意发送格式“Send_data 0x80 0xFA 0x79 0x00 0x01”其中“0X”表示的十六进制数据,不可以省略。
如果发送后如果返回:
“unkowncommand”表示输入框中发送的命令有问题
“SendRawRequest- Failed to parse arguments”表示发送命令没有反馈,命令不通

二、代码分析
    结构体数组主要包含“命令码”和“回调函数”
    DIAG_SUBSYS_ID_TCT_CHARGING_ON为命令码
    tct_charging_on_func回调函数,当命令匹配时会到指定的函数执行操作
staticconst diagpkt_user_table_entry_type tct_charging_on_tbl[] =
{
{DIAG_SUBSYS_ID_TCT_CHARGING_ON,DIAG_SUBSYS_ID_TCT_CHARGING_ON, tct_charging_on_func},
};
PACK(void*) tct_charging_on_func(PACK(void*)req_pkt, uint16pkt_len)
{
//将获取到的参数放到返回包中返回
}
  如果添加一个Diag命令只需要根据接收命令的格式要求,修改对应的DIAG_SUBSYS_ID_TCT_CHARGING_ON宏就可以了,实现的功能在回调函数tct_charging_on_func内完成

三、问题与处理方法
使用Qxdm发送Diag命令时候无法得到信息反馈
root@gflip2:/# ps | grep "tct"
root 257 1 6464 1088 ffffffff b6ed2520 S /system/bin/tctd

root 287 1 4516 1076 ffffffff b6f23520 S/system/bin/tct_diag

  • 7
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Leonban

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值