查看Android/CyanogenMod 发烧笔记的源代码
←
Android/CyanogenMod 发烧笔记
跳转到:
导航
,
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只有这个用户组中的用户才能使用:
用户
您可以查看并复制此页面的源代码:
=== Android基带接口 === 基带部分在 Android 手机上被封装成了一个设备,叫做 modem,早期GSM/GPRS的时候,表现出来就是一个串口设备,只需向串口发送标准的AT命令字符串(形如 AT+CMGW="10086")就能控制 modem 进行发短息打电话等等操作,比如通过如下的AT命令序列就能向 1560_122_3272 发送一条短消息(Linux下可通过minicom直接读写串口,WINDOWS下可通过超级终端读写串口): <pre> AT # 测试串口modem是否连接,正常的话modem会返回 OK AT+CMGF=1 # 进入 SMS Text 模式 AT+CMGW="+8615601223272" # SMS消息体,等号后面是接受方手机号,回车后,在 '>' 写上要发送的消息,Ctrl + z 结束输入 > A simple SMS text messaging. +CMGW: 1 # modem 返回短消息的计数,此处为1 AT+CMSS=1 # SMS发送 +CMSS: 20 # 成功,modem返回 '+CMSS: 20' </pre> 串口一般能用的最高速率也就115.2kbps,3G 时代串口速率远远跟不上数据网络需要的速度,因此如3G上网卡都是采用USB接口的方式在modem和主机之间交换数据。 回到手机上,modem 和 Android 系统间一般通过共享内存的方式交换大量数据。 在 Android 上,modem厂商一般都会把 modem 的访问封装成共享库,方便 Android 的应用使用。库的名字一般以 RIL (Radio Interface Layer) 为后缀,如: Android 通用层面也实现有自己的 RIL 库:libreference-ril.so 是封装的 AT 命令访问方式。libril.so 实现有 RIL 抽象层。详细可参考这个非常不错的文档:http://www.slideshare.net/ssusere3af56/android-radio-layer-interface modem厂商的RIL库一般是闭源的,这也激起了社区的极大兴趣,三星的相关探索参考: * hardware_ril_samsung-ril: https://gitorious.org/replicant/hardware_ril_samsung-ril/source/master:+ * libsamsung-ipc: https://github.com/morphis/libsamsung-ipc <br><br>
返回到
Android/CyanogenMod 发烧笔记
。
个人工具
登录
名字空间
页面
讨论
变换
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
社区专页
新闻动态
最近更改
随机页面
帮助
工具箱
链入页面
相关更改
特殊页面