当前位置:首页 > 单片机 > 单片机
[导读] 本文介绍了GSM无线模块在嵌入式系统的应用,系统采用基于ARM9核的AT91RM9200微处理器,GSM无线模块采用华为MG323无线模块,在嵌入式Linux系统下,通过ARM与MG323进行控制通信,实现了短消息模块的软件

本文介绍了GSM无线模块在嵌入式系统的应用,系统采用基于ARM9核AT91RM9200微处理器,GSM无线模块采用华为MG323无线模块,在嵌入式Linux系统下,通过ARM与MG323进行控制通信,实现了短消息模块的软件功能。该系统支持FDU短信模式及中文短信。

无线监控已成为工业控制中安全生产、及时收集重要数据必不可少的部分,利用现代化的信息技术手段,建设安全生产监督管理网络系统,才能将安全生产和安全监督管理工作做好,随着通讯技术的发展,移动通信覆盖的不断扩大,基于GSM网络的无线监控系统已广泛应用于工业控制、电力监控、智能楼宇和数据传输等方面,加上GSM网络具有前期投资少、不受地域限制、通信实时性高等优点使得它在无线监控领域扮演更重要的角色。利用的ARM9处理器主频高、速度快、内存容易扩展、可以运行嵌入式Linux系统设计平台等特点,通过软硬件模块的设计,在GSM无线网络上实现了短消息的发送。此系统可以应用在采油电机环境参数监控上,实时监控油管的压力和温度等参数,保证油井的安全正常工作。

1 系统总体设计
图1所示是基于AT91RM9200的短消息监控系统,该平台主要包括微处理器单元,GSM/GPRS无线模块,存储模块,串口通讯模块,网口通讯模块,USB模块和电源模块。


系统构建的嵌入式系统平台,主要用于采集数据的处理、存储、发送和监控。具体工作原理是在基于ARM920T内核的主频为180 MHz的AT91RM9200微处理器上,通过串口将下行数据传输至Flash存储,然后利用串口、USB和100 Mbit·s-1以太网3种接口方式将数据发送至目标,同时通过GSM无线通信的方式进行数据监控。
此系统在采油电机环境参数传输与通信系统存储模块的应用过程中,主要完成对采样和监测处理后的数据进行存储,并通过各种接口传送至上位机显示,以便工作人员对井下电机的环境数据进行观测和处理。无线传输模块可将存储模块接收到的数据以无线通信的方式发给油井监测人员,使监测人员可随时了解油井的采油情况。

2 系统硬件电路设计
系统中短消息收发功能的模块采用华为公司的4频GSM/CPRS模块MG323,工作频段支持4频:GSM850/900/1800/1900 MHz,接收灵敏度<-107 dBm,工作温度-30~+75℃,电源电压3.3~4.8 V,平均待机电流<3.0 mA,协议支持GSM/GPRS Phase2/2+。MG232含有丰富的对外应用接口,包括B2B连接器接口、电源接口、开/关机和RESET时序、控制信号接口、UART接口、SIM卡接口、充电接口、音频接口。


MG323与AT91RM9200的硬件电路如图2所示。ARM通过控制TERM_ON来控制MG323的开关,当TERM_ON管脚拉低≥1 s后,即可开机;开机后,如果再次将TERM_ON管脚拉低≥1 s,即可关机;控制RESET来控制MG323的硬件复位,当模块出现软件死机时,通过拉低RESET管脚≥10 ms后,模块进行硬件复位。
由于MG323模块对外提供一路异步RS-232UART1通信接口,UART1支持标准Modem握手信号控制方式,故MG323GSM模块通过RS232与AT91RM 9200的UART1相连接。其控制信号主要为:UART1_RD(模块数据发送端),UART1_TD(模块数据接收端),UART1_RING(模块振铃指示),UART1_ DSR(模块数据设备就绪),UART1_RTS(请求发送),UART1_DTS(数据终端就绪),UART1_CTS(模块清除发送),UART1_DCD(模块载波检测)。RT S/CTS为请求发送信号,RTS是发送起输出的准备好信号。接收双方准备好,送回清除发送信号CTS后,发送数据开始进行,在同一端将这两个信号短接就意味着只要发送器准备好即可发送。DCD载波检测又称接收线路信号检测,本意是Modem检测到线路中的载波信号后,通知终端准备接收数据的信号在没有接Modem的情况下,也可以和RES,CTS短接。DTR/DSR数据终端准备好时发DTR信号,在收到数据通信装置准备好DSR信号后方可通信。RING原意是在接收到电话交换机有效的拨号时有效,同时数据终端准备传送。
MG323模块通过信号SM_CLK(SIM卡时钟),VSIM(SIM卡电源),SIM_DATA(SIM卡数据),SIM_RST(SIM卡复位),GND(SIM卡地)与SIM卡相连接。
该系统还包括两片16 MB的SDRAM,两片8 MB的NOR_Flash,3个RS232,主USB,从USB和100 Mbit·s-1以太网等模块。

3 系统软件设计

系统软件的设计主要是基于Linux下C的编程,无线监控程序是依照短消息收发的原理来对于GSM模块的控制。

3.1 短消息收发的原理

短消息内容的最大长度为140 Byte。它的编码主要有7位编码,8位编码,UC2编码3种编码方式。7位编码是每Byte只使用低7位,每8 By te为一组,去掉最高位,重新编码为7 Byte,因此,7位编码实际可以表示到160 Byte。但7位编码只能发送0x00~0x7F范围内的字符,一般在发送英文短信时使用。编码原理是:每8 Byte为一组,分别用A,B,C,D,E,F,G代表8 Byte,An代表每个Byte的位,则8 Byte重新编码成如表1所示的7 Byte。




8位编码是所见即所得的编码方式,即无需编码,只要将二进制串直接发送即可。8位编码方式适用于制定各种基于短消息的通讯协议。U C2编码常用于中文或中英文混合内容发送,只能发送70个字符(1个UC2占2 Byte)。由于国内一般的编辑器多以GB编码,因此,若要发送中文,需先将中文转换为UC2编码再发送。在手机上,通常的做法是如果全部为英文及半角字符,则以7位编码发送,如果含有中文,则全部编码为UC2发送。
短消息发送方式主要分为文本模式和PDU模式。文本模式其实是针对7位编码做的一个封装,它只能用于发送ANSI范围的字符,发送方式较简单。而PDU模式中所有短消息数据发送前都必须组织成PDU的格式,在PDU模式下发送短信比较复杂,需要自行组织PDU内容,但发送方式灵活,可以发送各种数据,也可以自行设定各PDU字段的内容。
3.2 常用的短消息AT指令
GSM无线模块采用标准AT指令集通信,AT命令是用于控制TE(Terminal EQUIPment)(如PC等用户终端)和MT(Mobile Terminal)(如移动台等移动终端)之间的相互规则。AT命令类型主要分为基本命令、S寄存器命令、扩展以及厂商定义命令3类。


3.3 GSM程序的实现
ARM与GSM通信以ttyS1对应的串口为桥梁,与MG323提供的1个UART接口连接,支持短消息、电话本管理、数据业务、嵌入式TCP/UDP等功能。使用ARM发出AT指令集对GSM模块进行相应的操作,能够完成发短消息的功能。具体软件流程如图3所示。


对串口初始化的工作主要是波特率、校验位和停止位设置。配置完串口的相关属性,就可以对串口进行打井、读写操作了。在Linux系统中,所有的设备文件都位于“/dev”下,其中串口2对应的设备名为“/dev/ttyS1”,在Linux下对设备和对文件的操作方法是一样的,因此对串口读写可以使用简单的“read”,“‘write”函数完成。
对GSM模块进行初始化工作主要是发送“AT”给MT(Mobil Terminal)看起是否有回复以确定ARM与GSM的串口工作正常。在确认串口正常工作后,发送“ATE0”命令关闭MT的回显。
设置短信的通知方式、短信的格式(PDU)以及短信的编码(USC2)。如果每个功能的设定都正常,最后按照PDV格式向指定用户发送“GSM模块初始化成功”的短信。
解析数据并发送短信主要是首先按PDU格式填充发送个MT的缓冲区的前46 Byte。然后打开数据存储文件,用lseek函数将文件光标由文件结尾向前移动17 Byte。因为数据帧中的数据是以2 Byte的16进制来表示,所以首先将其合并成一个16位的短整型,然后将合并的数据与检验位相加。将数据处理后,最后发送短信并检查MT回复中是否有+CMGS的指令,若有则代表短信发送成功。

4 结束语
以AT91RM9200处理器搭建嵌入式Linux系统,利用GSM/GPRS无线通信模块实现短消息的发送。同时嵌入式系统加GSM模块的系统组成体积小巧,工作稳定,适合偏远地区或移动数据采集系统,提供了数据采集监控的新手段。随着无线通信系统的不断发展和成熟,它必将深入到生活的各个方面。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

双核心 Arm Cortex-A35、图形加速、高速连接能力,及内建硬件安全功能

关键字: 微处理器 电动车充电站 智能家居

2024年3月12日,中国 -- 服务多重电子应用领域、全球排名前列的半导体公司意法半导体(STMicroelectronics,简称ST;纽约证券交易所代码:STM)发布了新一代的STM32MP2系列工业级微处理器 (...

关键字: 微处理器 智能工厂 CPU

控制器,又称作控制单元或微处理器,是一种能够对电子设备进行控制和管理的计算机芯片。它具有很强的处理能力、高可靠性和稳定性,能够适应各种复杂的工作环境。控制器的主要特点如下:

关键字: 控制器 控制单元 微处理器

运动控制器作为自动化设备的核心部件之一,其作用和原理对于理解自动化设备的工作原理具有重要意义。本文将为您详细介绍运动控制器的工作原理。

关键字: 运动控制器 微处理器 嵌入式硬件

嵌入式控制器是一种集成了微处理器、存储器、输入输出接口以及其他外设的微型计算机系统,广泛应用于各种场合。本文将为您详细介绍嵌入式控制器的应用场合。

关键字: 嵌入式系统 嵌入式控制器 微处理器

中国上海,2023年12月20日—安富利旗下全球电子元器件产品与解决方案分销商e络盟开始发售ADI最新电源产品。这些新引进的电源管理IC和转换器采用先进的设计和封装技术,能够满足最严苛的电源要求。

关键字: 电源 转换器 微处理器

2023年12月20日,中国 - 意法半导体新软件帮助工程师把STM32微控制器应用代码移植到性能更强大的STM32MP1微处理器上,将嵌入式系统设计性能提高到一个新的水平。

关键字: 微处理器 嵌入式系统

微控制器(MCU)和微处理器(MPU)都是计算机硬件中的重要组成部分,但它们在设计、应用和功能上有一些显著的区别。以下是MCU和MPU的主要区别:

关键字: MCU MPU 微处理器 微控制器

微处理器芯片的位数是指其内部数据总线的宽度,通常以位(bit)为单位。位数越高,微处理器处理数据的能力和速度就越快。在计算机领域,常见的微处理器位数有8位、16位、32位和64位等。下面将详细介绍这些不同位数的微处理器芯...

关键字: 微处理器 芯片
关闭
关闭