以NOKIA8250为例。通过8250的红外与PC连接之后,会产生一个虚拟串口,这个串口的序号可能在每台电脑上都不一样。利用这个串口,就可以对手机进行一系列操作,包括发送、接收短信。通过程序操作串口,就可以把这部手机做成短信平台。

在Windows中,打开超级终端,在手机未连接之前,查看连接可使用的串口列表,然后连接手机,再查看列表,多出来的那个串口就是与手机通信的串口。通过该串口连接手机,就可以用AT指令来操作它。

输入AT回车,出现OK,就说明这个串口是支持AT指令的,有可能是手机,也有可能是普通的MODEM。

输入AT+CGMI回车,出现手机厂商信息,例如NOKIA,就说明这是手机,下面就可以进行一系列的操作了。

AT指令有几个实用的规则:

1.输入AT指令然后加“?”,就能列出该指令的当前状态,例如输入AT+CSCS?,就能列出当前手机使用的字符集,例如:+CSCS: "PCCP437"。

2.输入AT指令然后加“=?”,就能列出该指令的可选值,也就是手机所能支持的所有值,例如输入AT+CSCS=?,就能列出手机能支持的所有字符集,例如:+CSCS: ("GSM","HEX","IRA","PCCP437","PCDN","8859-1"),可以通过AT+CSCS="HEX"来设置手机的字符集为HEX。

短信内容的格式有两种,一种是text,一种是PDU,text格式比较简单,但不能发送特殊的短信,例如免提短信,发送中文短信也会乱码。PDU格式则可以发送各种形式(免提,闪烁)和字符集的短信,不过PDU不够直观,需要通过程序来编码解码,例如发送到8613000000000的短信“中文信息”的PDU编码为:0011000D91683100000000F00008A70C4E2D65874FE1606F000D000A,其长度为27。在PDU格式下,短信内容还包含了目标号码,而在text格式下,目标号码和短信内容是分开的。锐方超级SMS控件是一个很好的PDU编解码控件。

与短信相关的AT指令:

AT 指令

功 能

AT+CMGC

Send an SMS command(发出一条短消息命令)

AT+CMGD

Delete SMS message(删除SIM卡内存的短消息)

AT+CMGF

Select SMS message formate(选择短消息信息格式:0-PDU;1-文本)

AT+CMGL

List SMS message from preferred store(列出SIM卡中的短消息,在PDU模式下,该值为数字,在text模式下,该值为字符串。PDU/text:0/"REC UNREAD"-未读,1/"REC READ"-已读,2/"STO UNSENT"-待发,3/"STO SENT"-已发,4/"ALL"-全部的)

AT+CMGR

Read SMS message(读短消息)

AT+CMGS

Send SMS message(发送短消息。在PDU格式下,该值设置为PDU长度,例如30;在Text格式下,该值设置为目标手机号码字符串,例如"8613888888888"。注意,在PDU模式下,手机号码需要加上86开头,否则不能发送。)

AT+CMGW

Write SMS message to memory(向SIM内存中写入待发的短消息)

AT+CMSS

Send SMS message from storage(从SIN|M内存中发送短消息)

AT+CNMI

New SMS message indications(设置是否显示新收到的短信,一般设成2,1,0,0,0,手机收到新的短信后会给PC发一条消息,包含了该短信在内存中的索引号,通过该索引号就可以读出该短信)

AT+CPMS

Preferred SMS message storage(选择短消息内存)

AT+CSCA

SMS service center address(短消息中心地址)

AT+CSCB

Select cell broadcast messages(选择蜂窝广播消息)

AT+CSMP

Set SMS text mode parameters(设置短消息文本模式参数)

AT+CSMS

Select Message Service(选择短消息服务)

知道这些之后,就可以通过编程来操作手机。在java中,利用Java Communication包可以操作串口,但官方的包在3.0之后就支持Linux和Solaris平台了,Windows平台的只支持到2.0,98年出的,不过在XP下还能使用,google一下就可以下载到,例如:http://mdubuc.freeshell.org/Jolt/javacomm20-win32.zip。也可以用开源的Rxtx实现串口通信。

如果不想直接操作AT指令,还可以使用开源的SMSLib包,该包封装了与短信相关的所有AT指令,也实现了PDU编解码功能,使用起来十分方便。

java at 短信_让老手机变成短信平台-AT指令的应用相关推荐

  1. android 恢复短信 失败,解决安卓手机发送短信失败的方法

    怎么解决手机发送短信失败?虽然现在的QQ和微信它们可以给我们提供即时通讯的服务,但是也避免不了我们需要用到手机上自带的短信功能来完成通讯的这种情况.当我们使用短信功能的时候,却发现发送短信失败,这时候 ...

  2. 如何恢复被删短信_苹果手机已删除的短信怎么恢复?分享几种简单的恢复方法...

    原标题:苹果手机已删除的短信怎么恢复?分享几种简单的恢复方法 各位苹果用户,你们在使用苹果手机的时候,会不会经常不小心误删了手机数据呢?像我这种强迫症,有时候一看到密密麻麻的短信,尤其大多数短信都是那 ...

  3. python 短网址_一个简易的Python短网址生成源码

    from requests import post def create(url:str, tinyurl=''): """生成短网址 tinyurl值为需要的短网址后缀 ...

  4. 移动退订短信_如何退订自动短信

    移动退订短信 Wachiwit/Shutterstock.com Wachiwit / Shutterstock.com If you have a smartphone, you're probab ...

  5. java索尼爱立信_JAVA评分_索尼爱立信 W810c_手机其它OS-中关村在线

    JAVA评分: 索尼爱立信W810c的JAVA扩展基于MIDP 2.0环境,由于还能够支持令游戏效果更为逼真的Mobile 3D Graphics API,因此它不仅能够顺利地安装和运行全部两个版本的 ...

  6. 花生云短信_贺词大全-新年贺词短信

    新年贺词短信 篇一: 2020 年最新出炉新年祝福短信大全 2 万条信息 2020 年羊年新年祝福短信大全 1 . 感悟新春,感受新年,幸福相守,快乐相 伴,祝福送你,问候愿你,平安快乐,健康温暖,事 ...

  7. java汽车油耗计算_转发一个手机油耗计算器 (java)

    今天在一个汽车论坛上看见的,试了试,还真不错. 比以前那个Fuel Consumption 功能要强大,虽然都是JAVA软件. 小罗盘手机计算器是作者独自产品策划.美术设计.程序开发.测试发布的手机应 ...

  8. java 英文求职信_【精华】英文求职信范文10篇

    [精华]英文求职信范文10篇 时间是箭,去来迅疾,新一轮的`招聘又朝我们走来,此时是不是该好好写写求职信呢?但是求职信要写什么内容才是恰当的呢?以下是小编帮大家整理的英文求职信10篇,希望对大家有所帮 ...

  9. java le下载安装_跟老杨学java系列(五) JDK的安装与配置

    跟老杨学java系列(五) JDK的安装与配置 提示:本节内容对于java入门是非常关键的,对于刚接触java的同学一定要认真学习,欢迎大家留言探讨技术问题.其他问题概不回复. (书接上回)上节课程我 ...

最新文章

  1. 软件测试理论你知道多少?
  2. 清华男女图鉴 | 有电车会拍照,我在清华还是找不到女朋友
  3. php输入密码才能浏览,使用php为网页设置访问密码 - 小俊学习网
  4. Unable to establish a connection to Redis Cluster at [RedisURI
  5. dart基础之异步编程
  6. 一个神奇的???whatever~~
  7. ascii码与键盘代码的区别
  8. nexus配置第三方库文件
  9. Linux内核部件分析 设备驱动模型的基石kobject
  10. ue 新建html,第四课 开发uehtml官网响应式静态页面(示例代码)
  11. 硬件算法与软件算法实现区别通俗易懂
  12. java自动洗扑克牌算法_扑克牌 洗牌算法 的java实现
  13. 什么是MIMO(多输入多输出),以及MIMO的分类和测试(一)
  14. html桂花酿网页,桂花酒的做法
  15. zblog php 源码,zblog技术导航v2.3全站源码+数据
  16. STM32F103ZE工程移植到STM32F107VC上软件调试时死循环在while((RCC-CR RCC_CR_PLL2RDY) == 0) { }
  17. python数据分析与展示--图像的手绘效果
  18. PS动作把人物照片变成炭笔素描画效果
  19. 服务器与普通电脑之间的区别是什么?
  20. X1 carbon 2015安装win7、win10后触控板驱动安装失败(双指滑动无效、多指操作无效)的另类解决之道

热门文章

  1. OpenCV MJPG格式高速读取
  2. 网页浏览器的搜索引擎及算法(包括网页,App内,后台数据等)
  3. 使用vivado2019.2和petalinux 2019.2制作带无线wifi的ultra96v2的BSP软件包
  4. Open Source Threat Intelligence
  5. 神出鬼没USO:幽灵潜艇
  6. vue + swiper 时间轴
  7. Quartz.基本使用
  8. 【Leetcode】Climbing Stairs
  9. 时序分析基本概念(一)——建立时间
  10. jmeter函数助手到底在哪