该程序使用BASCOM-AVR高级语言编写,其中PRINT语句的功能是通过URAT串行口发送字符串,Chr(34)代表ASCII字符(“),Chr(26) 代表ASCII字符(Ctrl-Z)。第一行语句设置短信息服务中心号码,即通过串口发送以下字符串: AT+CSCA= "+8613800210500",其中+8613800210500为上海地区中国移动的短信息服务中心号码。第二行语句设置短信息发送格式:AT+CMGF=1,其中1表示采用Text模式。第三和第四行语句发送一条短信息到控制中心,AT命令的格式为:AT+CMGS= "13500123456"This is a test SMS,其中控制中心的号码为13500123456,短信息内容为“This is a test SMS”,确认控制字符为Ctrl-Z。第五行语句为读取一条收到的短信息内容:AT+CMGR=1,其中1表示收到的(在SIM卡中)第一条短信息。该指令发出后,如果GSM模块中有接收到的短信息,则从UART接口返回如下信息(具体AT命令格式请参考GSM 07.05): +CMGR: "REC UNREAD","+8613508485560",,"02/10/16,15:37:28+32" xxxxxxxxxxxxxxxxxx (收到短信息的文本内容) 5 基于PDU模式的中文短信息接收 发送和接收中文或中/英文混合的短信息必须采用PDU模式。根据GSM 07.05的定义,只要控制器通过UART接口向GSM模块下发AT命令,就可以直接读取收到的PDU模式的短信息: PRINT "AT+CMGF=0" ‘设置为PDU模式 PRINT "AT+CMGR=1"‘读取接收的一条短信 ‘息 在PDU模式下,GSM通信模块的回答格式为: +CMGR: ,, 其中: stat表示该条短信息的状态,通常为0(未读过,新的短信息)或1(已读过); Length为十进制数,表示pdu数据长度减去短信息服务中心地址长度,单位为字节; 为回车换行;