AT指令即将完成历史使命

了解 GPRS 模块的同学都知道,AT指令就是模块的交互界面, 相当于手机的 MMI。AT 指令几乎就是模块的代名词。另外, 申明一点,下文中提到的 GSM 模块和 GPRS 模块,说的是一个东西,只是书写习惯不同而已。

为什么会有 AT 指令呢? AT 指令是在早期,还是通过电话线拨号上网的时候(上网速率只有可怜的 14.4kbps),电脑和modem之间交互的一个界面。电脑通过串口发送 AT 字符开头的指令, 去配置 modem 的上网参数,然后通过AT指令拨号连接网络服务商(ISP)的服务器,达到计费上网的目的。

GSM 无线网络出现之后,无线的 modem 基本上都是用 GPRS 模块作为核心部件做成的。因为使用方法和电话线的modem类似,也是用PPP协议拨号上网的方式,因此 AT 指令的形式延续了下来。并且,AT 指令还被写入了 GSM 规范,这就是大名鼎鼎的 GSM 07.05 和 07.07,以及 07.10 协议。

我国第一代的 GSM 手机,无论是波导, 熊猫,科健,还是 TCL,刚开始的几款机型,因为缺乏通信产品的开发经验,都是采购国外的 GSM 模块,配上一个 MCU的系统架构,用 MCU 控制屏幕来显示人机界面(MMI),网络部分由MCU发送 AT 指令给GSM模块,去调用电话,短信,电话本等服务。

从2004年开始,中国出现了一种叫做无线固话的产品形态,也是采用上述的MCU+GSM模块的架构,利用无线网络,用座机电话机的产品形态,实现手机的无线通话功能。这个产品非常受消费者尤其是老年人和小商贩的欢迎,因此中国移动集中采购的量极大。厂家为了降低成本,同时提高产品稳定性,逐步把电话机的MMI软件移植到了GSM模块内部,省掉了外围的MCU,这是 GSM 模块的一次技术革命。值得一提的是,把无线固话的MMI软件移植到模块内部的都是国产模块厂家, 正是通过这个革新,国产品牌的市场份额得到了质的飞跃。有代表性的厂家按照时间顺序分别是Simcom,龙尚和艾特维,其中,Simcom 和龙尚主要靠GSM模块奠定地位,艾特维则基本上垄断了 TD 无线座机模块市场。比较有趣的是,艾特维的英文名字是ATWin,意思是模块的赢家,因为AT就是模块。但是艾特维出货的模块,大多是当做带有MMI软件的单模块来用,AT指令反而用的很少。这个现象已经值得模块行业深思。

当然,在手机行业,随着中国厂家的实力增强,用模块做手机的架构很快就消失了,手机的软件也是越来越绚丽多彩,这都是Soc架构的功劳,用MCU+GSM模块的架构,是无论如何做不出来如此丰富多彩的功能机的。

再来看看波澜壮阔的物联网应用的发展,直到今天,涉及到 GPRS 模块的使用场景,AT 指令仍然扮演了相当主流的角色。尽管各个模块厂家都推出了OpenCPU 的单模块应用的软件架构,但是单模块的应用比例仍然不高,大多数研发物联网设备的用户,仍然是在用 MCU发送 AT 指令给 GPRS 模块的方式来进行通信,这是为什么呢?

第一个原因,开发物联网设备的软件工程师,大多数都有自己熟悉的单片机(MCU), 这些 MCU 大多是 ARM 架构,开发工具和编程习惯是类似的,这么多年得到了比较稳固的延续;

第二个原因, GPRS 模块的软件架构,因为涉及了复杂的无线通信环境,就相对比较复杂,让 MCU 工程师去熟悉模块的软件架构,再开发应用,大多数工程师不愿意花费太多的时间和精力,宁愿去把产品做到尽快量产出货,才是更高性价比的做法。

第三个原因,因为 GPRS 的模块价格相对比较高,从2000年初的1000多元,下降到了这些年的几十元左右。但是一个MCU可能只需要几块钱 RMB,所以把主控权放在 MCU, 模块的选择就会比较灵活,哪一款模块性价比高就用哪一款模块,反正都支持 AT 指令,切换起来不是很困难。

但是,时间来到了今天,已经有越来越多的工程师和企业家意识到,随着国内物联网应用的爆发,单模块开发应用势在必行,并且 GPRS 模块的价格,今年已经是 20 元左右,市场需要提供极简软件架构的 GPRS 模块,来实现比 MCU 更加快速的应用开发,做出更好体验的产品,提供中国制造的口碑。

还好, Luat 来了。

Luat 是合宙研发团队使用了十余年的软件架构,从2017年初开始,无偿开放出来回报社会。使用 Luat 的 GPRS 模块的软件架构,只需要1个小时,就可以完成你的应用开发。Luat让你聚焦在产品的用户体验本身,无需再去熟悉艰深的软件代码。

上次更新 2021-01-28