跳至内容
深圳市捷比信实业有限公司 · 产品选型与采购咨询联系业务人员
模压电感捷比信 · 专业器件主题站

Nanoradar首席执行官周昆明:批量交付了24GHz毫米波雷达传感器,以服务于四个主要目标市场

SIM900A是更实用的GPRS模块。简单配置后即可用于数据传输。该配置使用AT命令进行交互。使用GPRS远程传输数据时,有两种方法。一种是普通模式,无法发送。一旦必须发送0x1a来启用数据传输,另一种方法就是透明传输模式。设置后,您始终可以将数据发送到模块,模块将自动在缓冲区中发送数据,但是最后发送+++退出透明数据模式并返回到正常模式。 SIM900A模块的主要特点:SMT封装:便于客户生产和加工;小尺寸:24 * 24 * 3mm;低功耗:待机模式电流小于18mA,睡眠模式小于2mA;宽电源电压范围:3.2〜4.8V;支持频段:GSM / GPRS 900 / 1800MHz;语音编码:支持半码率,全码率,增强码率;支持回声抑制算法,您可以通过AT命令根据不同的客户端设备调整回声抑制抵消。基于SIM900A-GPRS模块的远程文件传输示例。第一种方法是sim900a模块上有电源引脚和串行引脚。主机通过串行端口与模块进行交互。最简单的方法是使用USB到串行端口USB TTL与主机进行通信。已连接机器的USB端口,并且该模块支持中国移动和中国联通的SIM卡。该测试在linux环境中进行。您可以使用命令ls / dev / ttyUSB *来检查模块是否已正确安装。如果已安装,通常会显示ttyUSB0。发现Linux下的串行端口工具不像在window下那样易于使用。直接使用该程序来控制读写方面。在linux下,该设备将被视为文件,并且可以与设备交互,就像读取和写入文件一样容易。在使用它之前,最好使用“ AT + CSQ”。和“ AT + COPS”查询信号质量和操作员信息。如果无法识别SIM卡,则无法继续进行下一步。普通模式的配置非常简单:char c,str [BUFFSIZE]; memset(str,0,sizeof(str)); strcpy(str," AT + CLPORT =" TCP& ldquo;,& rdquo; 4000& ldquo;) = write(fd,str,strlen(str)); printf(< str =%s&rdquo ;, str);睡眠(1); memset(str,0,sizeof(str)); strcpy(str," AT + CIPSTART =" TCP& ldquo;,& rdquo; 115.28.6.76“,& rdquo; 4000& ldquo; rdquo;); // Connect到远程服务器i = write(fd,str,strlen(str)); printf(< str =%s&rdquo ;, str);睡眠(1);发送过程可以遵循普通文件方法:while((file_block_length = fread(buff,sizeof(char),BUFFSIZE,fs)))“ 0){printf(_ldquo; file_block_length = fread(buff,sizeof(char),BUFFSIZE ,fs))d& rd,file_block_length); memset(str,0,sizeof(str)); strcpy(str,& ldquo; AT + CIPSEND& rdquo;); i = write(fd,str,strlen(str));睡眠(1);睡眠(1); = write(fd,buff,strlen(buff));睡眠(1); i = write(fd,& ctemp,sizeof(ctemp)); //开始发送标志ox1a sleep(1); memset(buff,0,BUFFSIZE); }这种方法比较机械,每次发送的最大字节不能超过1300字节。串行端口速率为115200,发送速率仍然很慢。程序中的延迟是为了确保指令Finish的执行,实际上不会花费这么长时间,使用usleep()函数可以使用较短的时间延迟。第二种方法与以前的方法相比,主要的改进是可以将数据写入串行端口,并且模块将自动将数据发送到缓冲区中,但是缺点是初始配置方法有点长并且它设置好了。此后可以直接应用。此方法在测试过程中不是很稳定,并且当从数据传输模式跳回到命令模式时可能会失败。配置过程如下:char c,str [BUFFSIZE]; //透明传输模式配置过程memset(str,0,sizeof(str)); strcpy(str,< AT + IFC = 2,2”); // i = write(fd,str,strlen(str)); printf(< str =%s&rdquo ;, str); memset(str,0,sizeof(str)); strcpy(str,< AT + CIPMODE = 1& rdquo;); // i = write(fd,str,strlen(str)); printf(< str =%s&rdquo ;, str); memset(str,0,sizeof(str)); strcpy(str,< AT + CSTT =& rdquo; CMNET& ldquo;& rdquo;); i = write(fd,str,strlen(str)); printf(< str =%s&rdquo ;, str); memset(str,0,sizeof(str)); Strcpy(str,& ldquo; AT + CIICR& rdquo;); i = write(fd,str,strlen(str)); printf(< str =%s&rdquo ;, str);记忆