无线终端课程设计_第1页
无线终端课程设计_第2页
无线终端课程设计_第3页
无线终端课程设计_第4页
无线终端课程设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、武汉理工大学华夏学院信息工程 无线终端设计技术结课报告课 程 名 称 结 课 成 绩 学生姓名、学 号 学 生 专 业 班级 指 导 教 师 姓名 摘要: td标准在国内通信领域占据半个3g市场,td终端成为工业设计的不可或缺的通信平台。工业技术不断的发展,使得工业产品中模块集成度增加,模块间的耦合度减弱,通信性能加强,特别是成本比较低廉的串口使用比较广泛。通过通信技术,主控设备控制终端设备,终端设备向主控设备报告自己的状态。技术的更新要求这种通信速率越来越高。然而,工业产品在满足需求的同时,也要考虑到成本高低。1、 需求分析(功能需求、界面需求、内部功能)(1)按键图确定具体位置确定列数扫描

2、列数确定行数先扫描行(2)at指令流程图 电话卡激活到打电话取消休眠激活sim卡激活协议栈注册网络号码被叫呼叫号码ata接听ath挂断电话接通对方挂机结束结束ath挂断注销网络 关机流程sim卡注销关机(3)串口进入中断处理程序在串口通信过程中,对信号的检测非常严格。所以,接收数据时一般采用单片机串口中方式,可快速响应串口数据的接收,其程序流程如下 :是否是接收y设置标志位yn缓冲区是否满?n缓冲区下标志c信息读取到缓冲区处理程序结束2、 程序设计 主程序 #include #include uart_key.h#include lcd_12864.h#include delay.h#incl

3、ude at.h/sbit fmq=p24;void main() unsigned char a,flag1,flag2,askcalling11; unsigned char i;fmq=0;usart1_init();init_lcd();clr_scr();printstr(0,2,李欢!);td_init();/请补充初始化程序delayms(2000); td_poweron();/请补充开机delayms(2000); printstr(2,0,*);while(1) delayms(200);a=check_key();if(a0) if(a=e) printstr(4,0,拨

4、号:); flag1=1; if(i=11) i=0;flag1=0;/请补充 td_calling(askcalling); if(flag1) if(a=0) if(i0) i-;num_disp8(4,i+5, ); a=0;else if(a=c) td_poweroff(); /* if(td_detectcalling()0) td_answer();/ flag2=0;*/ 电话卡的一系列 #include #include #include uart_key.h#include delay.h#include lcd_12864.h#include at.hextern vol

5、atile unsigned char answerisok,answeriscall,answerishang,answerisno,answerisring,answerisbusy;extern unsigned char answerphonenumb12; void td_init(void)do sendstr1(atdslp=0,0rn);/请补充取消休眠功能这一步很重要clearoneline(2);printstr(2,0,初始化中.);delayms(600);clearoneline(2);if(!answerisok) printstr(2,0,初始化失败!);dela

6、yms(600);while(!answerisok);answerisok=0; printstr(2,0,初始化成功!);delayms(1000);/return 1;void td_poweron(void) /*激活sim卡*/dosendstr1(at+cfun=5rn);/请补充激活 sim/usim 卡,可以根据这条指令检测 sim/usim 卡是否在位clearoneline(2);printstr(2,0,激活sim卡.);delayms(700); printstr(2,0,激活sim卡.);delayms(700); printstr(2,0,激活sim卡.);dela

7、yms(700); printstr(2,0,激活sim卡.);delayms(700);clearoneline(2);if(!answerisok) printstr(2,0,激活失败!);delayms(700);while(!answerisok);answerisok=0; printstr(2,0,激活成功!);delayms(1000);/*开机*/dosendstr1(at+cfun=1rn);/请补充开机功能full functionality(power on)clearoneline(2);printstr(2,0,开机中.);delayms(500);printstr(

8、2,0,开机中.);delayms(500);printstr(2,0,开机中.);delayms(500);clearoneline(2);if(!answerisok) printstr(2,0,开机失败!);delayms(2000);while(!answerisok);answerisok=0; printstr(2,0,开机成功!);delayms(1000);/*开机*/do sendstr1(at+cops=0rn);/请补充注册网络 /时间稍长先返回ok,再返回数据clearoneline(2);printstr(2,0,注册网络.);delayms(500);printst

9、r(2,0,注册网络.);delayms(500);printstr(2,0,注册网络.);delayms(500);clearoneline(2);if(!answerisok) printstr(2,0,注册失败!);delayms(500);while(!answerisok);answerisok=0; printstr(2,0,注册成功!);delayms(5000);clearoneline(2);/printstr(2,0,您现在可以打电话了!);/return 1;void td_poweroff(void)/*注销网络*/do sendstr1(at+cops=2rn);/请

10、补充注销网络clearoneline(2);printstr(2,0,注销网络.);delayms(500);printstr(2,0,注销网络.);delayms(500);printstr(2,0,注销网络.);delayms(500);printstr(2,0,注销网络.);delayms(500);clearoneline(2);if(!answerisok) printstr(2,0,注销失败!);delayms(500);while(!answerisok);answerisok=0; printstr(2,0,注销成功!);delayms(1000);do sendstr1(at

11、+cfun=6rn);/请补充sim/usim 卡注销无返回值clearoneline(2);printstr(2,0,注销sim卡.);delayms(500);printstr(2,0,注销sim卡.);delayms(500);printstr(2,0,注销sim卡.);delayms(500);clearoneline(2);if(!answerisok) printstr(2,0,注销sim卡失败!);delayms(500);while(!answerisok);answerisok=0; printstr(2,0,注销sim卡成功!);delayms(1000);dosendst

12、r1(at+cfun=0rn);/请补充设置模块最小功能(关机)clearoneline(2);printstr(2,0,关机中.);delayms(700);printstr(2,0,关机中.);delayms(700);printstr(2,0,关机中.);delayms(700);clearoneline(2);if(!answerisok) printstr(2,0,关机失败!);delayms(700);while(!answerisok);answerisok=0; printstr(2,0,关机成功!);delayms(1000);clearoneline(2);printstr

13、(2,0,再见!); void td_calling(unsigned char *phonenumber) unsigned char temp18;/3+11+3memset(temp,0,sizeof(temp);memcpy(temp,atd,3);memcpy(temp+3,phonenumber,11);memcpy(temp+3+11,;rn,3);dosendstr1(temp);clearoneline(4);printstr(4,0,在连接.);delayms(500);while (!answerisok);answerisok=0;clearoneline(4);pri

14、ntstr(4,0,连接成功,等对方应答!);delayms(500);while(1)if(check_key()=c)clearoneline(4);clearoneline(6);td_hangup();break; if(answeriscall) clearoneline(4);clearoneline(6);printstr(4,0,通话中.);answeriscall=0;if(answerishang) clearoneline(4);clearoneline(6);printstr(4,0,对方已挂机!);answerishang=0;break; if(answerisno

15、) clearoneline(4);clearoneline(6);printstr(4,0,无应答!);answerisno=0;break; if(answerisbusy) clearoneline(4);clearoneline(6);printstr(4,0,用户忙!);answerisbusy=0;break; unsigned char td_detectcalling(void)unsigned char temp17;/while(answerisring)if(answerisring)fmq=1;clearoneline(4);memcpy(temp,answerphon

16、enumb,11);memcpy(temp+11,来电!,5);printstr(4,0,temp);answerisring=0;return 1;/delayms(1000);else fmq=0;return 0; void td_answer(void) while(1)if(check_key()=e)td_answercalling();clearoneline(4);printstr(4,0,通话中.);delayms(500); if(check_key()=c)td_hangup();break; if(answerishang) clearoneline(4);printstr(4,0,对方已挂机!);answerishang=0;break; void td_answercalling(void)dosendstr1(atarn);/请补充应答功能clearoneline(4); printstr(4,0,应答中.); delayms(1000); while(!answerisok) ;printstr(4,0,请通话!); answerisok=0;fmq=0;void td_hangup(void) d

温馨提示

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

评论

0/150

提交评论