基于ARM的GPRS无线数据终端设计0-- 源程序.doc

基于ARM的GPRS无线数据终端设计0-- 源程序.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于ARM的GPRS无线数据终端设计0-- 源程序

附录1 原理图 附录2 主程序 #include byshj.h uchar or_At[]=AT\r\n; uchar or_Anum[]=AT+ZPNUM=\CMNET\,\\,\\\r\n; //设置APN uchar or_Aopen[]=AT+ZPPPOPEN\r\n;//激活APN uchar or_Aipset[40]=AT+ZIPSETUP=1,60.208.26.237,3030\r\n; // 建立连接 uchar or_Asend[]=AT+ZIPSEND=1,10\r\n; //要发送的数据及长度 uchar or_Aipstatus[]=AT+ZIPSTATUS=\r\n; //连接状态查询 uchar or_Ate0[]=ATE0\r\n; uchar or_A0send[]=AT+ZIPSEND=1,1\r\n; uchar or_re0[MAXL]=123456789; //串口0接受的数据 uchar or_re1[MAXL]=123456789; //串口1接受的数据 uchar eror[]=TCP Connected Fail!; uchar config[]=Please input IPPort\r\n ; //22 uchar affirm[]=Please affirm IPPort, Right:input 0 Error:input 1 \r\n ; uchar def_ip[]=Choose IPPort defult!; uchar cg_s[]=Successful\r\n; uchar cg=1; uchar set_len=34; extern uint mnum; //串口1接收数据长度 extern uint nnum; //串口0接收数据长度 extern uint Hbt; extern uchar Up_d; extern uint re0m; //串口1接收数据标志 extern uint re1m; //串口0接收数据标志 void Zhpinit(void) { PLLCON=0x03; PLLCFG=0x23; PLLFEED=0xAA; PLLFEED=0x55; VPBDIV=0X00; } void delay_n (uint n) //10ms延时程序 { uint32 i; while(n--) { for(i=0;i110592;i++); //避免未连接时进行心跳包发送 } } void Wait_cg(void) { nnum=0; Hbt=0; sendnchar(config,22); while(cg) { while(nnum18Hbt100)delay_n (1); if(Hbt=100)break; set_len=nnum+16; Ipconfig(or_re0); sendnchar(or_Aipset,set_len); sendnchar(affirm,53); nnum=0; while(nnum1); cg=or_re0[0]-0x30; if(cg==0) sendnchar(cg_s,12); else { sendnchar(config,22); nnum=0; Hbt=0; } } sendnchar(or_Aipset,set_len); } int main(void) { Irq0Init(); IOInit(); Zhpinit(); Timer0Init(); Uart0Init(); Uart1Init(); read485() ; I2C_Init(200000); Fm_read(0xa1, 0x0000, set_len,1); Fm_read(0xa1, 0x0000, or_Aipset, set_len); Wait_cg(); Fm_write(0xa0, 0x0000, set_len,1); Fm_write(0xa0, 0x0000, or_Aipset,set_len); delay_n(1000); Hbt=0; Tcp_fun();//TCP连接 while(1) { if(Up_d) //用标志位检测 有数据传输 { Hbt=0; //有数据传输 心跳标志清零

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档