安卓设备adb执行AT指令控制电话卡

文章目录

AT指令

AT 指令是 Attention 的缩写,是一种用于控制调制解调器等通信设备的指令集。

起源与发展:

AT 指令集最初由 Dale Heatherington 和 Dennis Hayes 在 1981 年为 Hayes SmartModem 300 波特调制解调器开发。起初只包含早期 300 比特 / 秒调制解调器支持的操作指令,后来随着技术发展,各厂商为控制高速调制解调器的新功能,推出了带有各种扩展的指令版本,逐渐形成了现在丰富的 AT 指令集。

基本格式:

AT 指令通常以 "AT" 作为开头,后面跟着具体的指令参数,以回车换行符(\r\n)结尾。设备接收到 AT 指令后,会返回相应的响应信息,以指示指令是否执行成功。例如,发送 "AT" 指令后,如果设备正常响应,会返回 "OK"。

指令类型:

  1. 测试指令:格式为 "AT+< 指令名称>=?",用于查询指令的内部参数及其取值范围。
  2. 查询指令:格式为 "AT+< 指令名称>?",返回参数的当前值。
  3. 设置指令:格式为 "AT+< 指令名称>=<...>",用于设置用户自定义的参数值并执行相关命令。
  4. 执行指令:格式为 "AT+< 指令名称>",执行没有用户自定义参数的命令。不过,并非所有的 AT 指令都支持这四种类型。

常见应用领域及功能:

  1. 呼叫控制:包括拨号(如 "ATD + 电话号码")、挂机("ATH")、接听电话("ATA")等操作,还可以查询通话相关的信息,如扩展错误报告("AT+CEER")等。
  2. 短信服务:可选择消息服务类型("AT+CSMS")、发送短信("AT+CMGS")、读取短信("AT+CMGR")、删除短信("AT+CMGD")等,以及设置短信服务中心地址("AT+C SCA")等相关参数。
  3. 网络服务:能够查询信号质量("AT+CSQ")、选择网络服务商("AT+COPS")、查看网络注册状态("AT+CREG")等,以便设备进行网络连接和通信。让单张SIM卡进飞行模式("AT+CFUN=0)
  4. 设备信息查询:可以获取模块厂商的标识("AT+CGMI")、模块标识("AT+CGMM")、软件版本("AT+CGMR")、国际移动设备标识("AT+CGSN")、国际移动签署者标识("AT+CIMI")等设备相关信息。
  5. 电话簿管理:支持选择电话簿记忆存储("AT+CPBS")、读取电话簿表目("AT+CPBR")、查找电话簿表目("AT+CPBF")、写电话簿表目("AT+CPBW")等操作,方便用户对电话簿进行管理。

不同设备中的应用:

在 GSM 模块中,AT 指令集被广泛用于与 GSM 网络进行交互,实现各种通信功能。

在 Wi-Fi 模块、蓝牙模块等其他通信模块中,也有相应的 AT 指令集来控制其功能,如 ESP32 模块的 AT 指令集可用于配置 Wi-Fi 连接、蓝牙连接等。

安卓获取modem设备输入符入口

  1. 通过开发产商提供获取
  2. 通过分析日志获取
    通过查看系统ap日志,得到AT指令输入入口在/dev/下,名称为stty_lte0
    ,如果有双卡,那么stty_lte1就是SIM卡2的控制入口。

安卓设备输入AT指令

首先设备得有root,调用adb shell进入设备

bash 复制代码
adb root
adb shell

监听SIM卡1的AT指令回馈信息:

bash 复制代码
cat /dev/stty_lte0

再开另一个终端adb shell后,输入AT指令查询SIM卡1的信号强度

bash 复制代码
echo -e "AT+CSQ\r" > /dev/stty_lte0

cat端得到输出,0,99前面数字就是信号,0代表没信号,一般是没插卡

作者:帅得不敢出门

相关推荐
恋猫de小郭14 小时前
Flutter 又为 AI 时代添砖加瓦:全新 ComponentLibrary 提议
android·前端·flutter
Mr -老鬼14 小时前
EasyClick 入门指南:Shell 命令与 ADB 完全指南
android·adb·自动化·shell·easyclick·易点云测
故渊at14 小时前
第五板块:Android 系统服务与电源管理 | 第十七篇:Power Manager Service 与 WakeLock 机制
android·pms·系统服务·电源管理·休眠唤醒
故渊at14 小时前
第七板块:Android 存储体系与文件系统 | 第二十一篇:Vold 与 FUSE 存储架构
android·架构·文件系统·fuse·vold·存储体系
唯刻V14 小时前
谷歌官方 Android CLI 深度解读
android·cli·ai开发·ai时代·android cli
aidou131414 小时前
Kotlin中自定义RadioGroup实现多个RadioButton自动换行
android·开发语言·kotlin·shape·radiobutton·selector·radiogroup
小二·14 小时前
MySQL 8.0 性能优化与索引原理
android·mysql·性能优化
feifeigo12314 小时前
C# ADB 安卓设备数据传输工具
android·adb·c#
飞猿_SIR14 小时前
RK3288 Android11平台移植RTL8733BU-WiFi模组
android·嵌入式硬件
通信侠14 小时前
android相机热启动缓存帧解决方案(任务快照)
android·缓存·blur·tasksnapshot·mtkcam