ARM9和Linux下的GPRS模块C代码_第1页
ARM9和Linux下的GPRS模块C代码_第2页
ARM9和Linux下的GPRS模块C代码_第3页
ARM9和Linux下的GPRS模块C代码_第4页
ARM9和Linux下的GPRS模块C代码_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ARM9和和Linuux下的GPRSS模块C代代码/我前个个月使用实实验室的周周立功ARRM7实验验箱配套的的明基GPPRS模块块连接到我我的QQ22440VV3开发板板,/在Liinux环环境下,做做模块的初初始化、读读取模块内内的某些硬硬件信息和和拨打电话话,实现远远程无线控控制,/如果想想做更复杂杂的操作,在在这些代码码的基础上上增加少量量代码即可可实现,/下面的的代码是CC语言代码码,大部分分代码是我我个人编写写的,部分分代码参考考了一些书书籍资料,/我发现现很多网友友使用明基基GPRSS模块的过过程中出现现各种问题题,在这里里我贴出来来给大家参参考/如转载载本文章,请请注明本文文出处

2、htttp:/bloog.siina.ccom.ccn/s/blogg_5488d39ff901000bcddp.httml#incllude /标准输入入输出定义义#incllude /标准函函数库定义义#incllude /Uniix 标准准函数定义义#incllude /文件控制制定义#incllude #incllude #incllude /PPPSIX 终端控制制定义#incllude #incllude #incllude /错误号定定义#incllude myffuncttionss.h /自自定义函数数定义文件件statiic innt fdd=0;strucct teerm

3、ioos neewtioo,olddtio;/=/明基MM23 GGPRS模模块AT指指令,请参参考明基的的Dataasheeet/初始化化指令ATT+HRSST=1,关闭模块块的电源AAT$POOWEROOF,/长时间间不与M223 GPPRS模块块通讯之后后再次通讯讯时使用指指令AT$NOSLLEEP=1/在拨打打电话时,在在对方接通通电话之后后返回“OK”字符串,使使用指令AAT+COOLP=11/当有电电话进入时时,显示来来电号码,在在初始化时时需加上指指令AT+CLIPP=1/读取SSIM卡的的ID号使使用指令AAT+CIIMI/写入短短信中心号号码,使用用AT+CCSCA=短信中中

4、心的号码码,1445/从模块块读取短信信而不是从从SIM卡卡读取,使使用AT+CNMII=2,22,0,00,0/提供本本地待机提提示音,使使用AT+GDT=1,关闭闭则用ATT+GDTT=0/确定已已经找到SSIM卡,使使用AT+COPSS?,若返返回0则表表明没有找找到/数据通通讯时,如如果网络断断开了,模模块返回NNO CAARRIEER/数据通通讯时,调调整发送数数据的延时时时间ATT$TIMMEOUTT=XX,XX110055000毫毫秒/拨号指指令“ATDxxx;”,XX是是号码,号号码之后必必须带分号号/选择差差分语音通通道:M222M222A,AAT$AUUPATHH=3,11

5、;M233,AT$AUPAATH=00,1;差差分语音通通道,普通通手柄通话话/选择单单端语音通通道:M222M222A,AAT$AUUPATHH=2,11;M233,AT$AUPAATH=11,1;单单端语音通通道,免提提童话/语音通通话时,调调节发送和和接收增益益:AT$AUGAAIN=(0-2),(1-9) 其其中的(00-2)代代表:0发发送的SIIDE /TONNE,1发发送增益,22接收增益益;(1-9)代表表可选择的的增益范围围/另一条条调节接收收增益的AAT指令AAT$AUUVOL=(0-55),0则则关闭接收收,5为最最大/吉林移移动的信息息中心+88613880020005

6、000/初始化化GPRSS模块的指指令阵列/char * cmmd200= ATT, ATT, ATT$NOSSLEEPP=1, ATT+GDTT=1, ATT$AUPPATH=0,1, ATT$AUGGAIN=1,7, ATT$AUGGAIN=2,9;/=/=/int ttty_wwriteecmd(charr *buuf,innt nbbytess) int i; for(i=0; innbytees; ii+) wriite(ffd,&bbufii,1); uslleep(100); writte(fdd,rrn,2); usleeep(33000000); retuurn ttcdra

7、ain(ffd);/intt tcddrainn (innt FIILEDEES),TThe tcdrrain funnctioon waaits untiil alll quueuedd outtput to tthe ttermiinal FILEEDES has beenn traansmiittedd./=/=/int ttty_rread(charr *buuf,innt nbbytess) int r=0; r=reead(ffd,buuf,nbbytess); retuurn rr;/=/int rread_infoo(chaar *bbuf) int ir=00,irnn=0,

8、nnux=00; nux=readd(fd,buf,1); if(nnux!=0)/如果读到到非零0个个数据 whiile(bbuf00!=0) buff+; ir+; reaad(fdd,buff,1); uslleep(50); elsee priintf(读出00个数据!n); tcfllush(fd,TTCIOFFLUSHH);/清空读写写缓存/ retuurn iirn=iir+1;/=/int ttty_wwritee(chaar *bbuf,iint nnbytees) int i; for(i=0; innbytees; ii+) wriite(ffd,&bbufii,1);

9、uslleep(100); retuurn ttcdraain(ffd);/=/int ttty_eend() tccsetaattr(fd,TTCSANNOW,&oldttio); / reestorre olld moodem setiings / /int tcseetatttr (iint FFILEDDES, int WHENN, coonst struuct ttermiios *TEERMIOOS-P) /Thhis ffuncttion setss thee atttribuutes of tthe ttermiinal deviice wwith filee / deescr

10、iiptorr FILLEDESS. TThe nnew aattriibutees arre taaken fromm thee /sttructture thatt TERRMIOSS-P ppointts too/=/void gprss_iniit() int ij=00,inff=0,nnumx=0; charr rt331000; for(ij=00; ijj7; ij+) ttyy_wriitecmmd(cmmdijj, sstrleen(cmmdijj); bzeero(rrt3,ssizeoof(rtt31000); inff=reaad_innfo(rrt3); priin

11、tf(返回信信息:nn); priintf(%sn,rrt3); /=拨叫=/ void gprss_calll(chhar *numbber, int num) int i=0; tty_writte(AATD,3); /发送送拨打命令令ATD tty_writte(nuumberr,numm); tty_writte(;,1); tty_writte(rn,2); usleeep(220000000); prinntf(正在打电电话给:); for(i=0;inuum;i+) priintf(%c,nummberi); /=/int mmain(voidd) int kf=00,wr=0,

12、siimno=0,rtt2n=00,irtt2=0; charr rt100; charr rt221000; charr simm=AT+CCOPS?; charr no=113596600644*;/电话话号码 fd = opeen(/dev/s3c22410_seriial0,O_RRDWR); if(ffd0) perrror(opeen_poort eerrorr); retturn; if(kf=sset_oopt(ffd,11152000,8,N,11)00) perrror(sett_optt errror); retturn; gprss_iniit(); wr=ttty_w

13、writeecmd(sim,strllen(ssim); bzerro(rtt,sizzeof(rt1100); readd_inffo(rtt); if(rrt0=0) uslleep(500); reaad_innfo(rrt); if(rrt0!=0) priintf(获取SSIM卡n); elsee priintf(无法获获取SIMM卡n); retturn; tty_writtecmdd(ATT+CIMMI,sstrleen(AAT+CIIMI); /获取SSIM卡的的序列号/ bzerro(rtt2,siizeoff(rt221000); rt2nn=reaad_innfo(rrt

14、2); prinntf(SIM序序号:nn); prinntf(%snn,rtt2); tty_writtecmdd(ATT+CGSSN,sstrleen(AAT+CGGSN); /读取产产品的序列列号/ tty_end(); closse(fdd);/关闭设备备文件 retuurn 00; /初初始化串口口/int sset_oopt(iint ffd,innt nSSpeedd, innt nBBits, chaar nEEventt, innt nSStop) if ( tccgetaattr( fd,&olddtio) != 0) perrror(SettupSeeriall 1);

15、retturn -1; bzerro( &newttio, sizeeof( newttio ) ); newttio.cc_cfllag |= CLOCCAL | CREEAD; newttio.cc_cfllag &= CCSIZEE; swittch( nBitts ) casee 7: newwtio.c_cfflag |= CCS7; breeak; casee 8: newwtio.c_cfflag |= CCS8; breeak; swittch( nEveent ) casee O: newwtio.c_cfflag |= PPARENNB; newwtio.c_cfflag

16、|= PPARODDD; newwtio.c_ifflag |= (INPCCK | ISTRRIP); breeak; casee E: newwtio.c_ifflag |= (INPCCK | ISTRRIP); newwtio.c_cfflag |= PPARENNB; newwtio.c_cfflag &= PAROODD; breeak; casee N: newwtio.c_cfflag &= PAREENB; breeak; switcch( nnSpeeed ) casee 24000: cfssetisspeedd(&neewtioo, B22400); cfssetoss

17、peedd(&neewtioo, B22400); breeak; casee 48000: cfssetisspeedd(&neewtioo, B44800); cfssetosspeedd(&neewtioo, B44800); breeak; casee 96000: cfssetisspeedd(&neewtioo, B99600); cfssetosspeedd(&neewtioo, B99600); breeak; casee 1155200: cfssetisspeedd(&neewtioo, B11152000); cfssetosspeedd(&neewtioo, B1115

18、2000); breeak; casee 4600800: cfssetisspeedd(&neewtioo, B44608000); cfssetosspeedd(&neewtioo, B44608000); breeak; defaault: cfssetisspeedd(&neewtioo, B99600); cfssetosspeedd(&neewtioo, B99600); breeak; if( nStoop = 1 ) newwtio.c_cfflag &= CSTTOPB; elsee if ( nSStop = 22 ) newttio.cc_cfllag |= CCSTOPPB; newttio.cc_ccVTIMME = 0; newttio.cc_ccVMINN = 0; tcfllush(fd,TTCI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论