SIM900A是由“芯讯通无线科技(上海)有限公司”生产的一款“GSM GPRS模块”。供电电压:3.4~4.5,建议使用4V。
SIM900A焊接
SIM900A可以耐受300度热风枪吹10分钟,曾经从板子上吹下来3次至今工作正常。
基本AT指令
模块默认的波特率是自适应的,使用前请先发送“AT”,模块将自动判断波特率,然后就可以正常收发了。
SIM900A版本号
使用AT指令查看,会返回如:1137B08SIM900A32_ST_DL。
AT+CGMR Revision:1137B08SIM900A32_ST_DL OK
使用GPRS传输数据
建立TCP连接
非透明模式
AT+CIPSTART="TCP","162.213.221.48","20010" OK CONNECT OK
CONNECT OK表示连接成功,接下来就可以使用AT指令发送数据了
透明模式
AT+CIPMODE=1 OK AT+CIPSTART="TCP","162.213.221.48","20010" OK CONNECT
CONNECT表示成功,连接成功后将进入透明模式,进入此模式后不能再输入AT指令了,所有输入的数据将作为数据直接发送向服务器。
发送数据
方法1:在命令模式下使用AT指令
使用AT+CIPSEND命令发送数据,可以使用0x1a标记数据结束或者使用指定发送数据的长度。
AT+CIPSEND > hello SEND OK
输入AT+CIPSEND后会返回一个“>”,这时就可以输入发送内容了,输入发送内容后面要紧跟一个0x1a表示数据输入完成。
AT+CIPSEND=5 >hello SEND OK
如果指定了内容长度,将自动根据长度完成发送。
方法2:在透明模式下直接发送
透明模式下所有的输入将作为数据直接发送,如果想要操作AT指令,就需要从透明模式切换回命令模式。
切换透明模式与命令模式
使用+++与ATO指令,在数据模式下,保证1s内没有数据输入,然后连续输入+++之间的间隔不能超过0.5s,0.5秒后进入命令模式。在命令模式下输入ATO命令回到数据模式。
还可以使用DTR引脚切换。
GPRS连接状态
方法1:可以根据DCD引脚的电平状态判断,引脚为低电平说明处于GPRS连接状态。这个判断好像不是太准确,有时引脚低电平但是GPRS已经不能发送数据。
方法2:使用AT指令,如果使透明模式需要切换到命令模式后执行,否则就会被当作数据发送
AT+CIPSTATUS OK STATE: PDP DEACT
返回的状态有:STATE: IP INITIAL、STATE: CONNECT OK、STATE: PDP DEACT、STATE: TCP CLOSED、STATE: IP CLOSE等。
方法3:使用与服务器的心跳,如果在一定时间内没有收到心跳,则重新连接,这个应该是最保险的了。呵呵。
如果连接已经异常,需要重新连接,连接前请先关闭之前的场景,然后再重新执行连接命令。
AT+CIPSHUT SHUT OK
相关内容
· SIM900A