742基于51单片机GSM的手机系统模拟设计-毕设课设

摘要:

本文基于西门子公司的TC35型GSM手机模块,通过系统模型,详细阐述了单片机控制GSM模块收发短信、打电话的基本概念以及串口控制SMS的基本原理。特别针对STC12C5A32S2单片机控制GSM模块的软件实现过程进行了详细介绍,对单片机如何控制GSM模块收发短信、打电话的功能进行了深入探讨,并对程序设计的主体思想进行了细致分析。文章重点介绍了STC12C5A32S2单片机与TC35模块的接口设计、TC35的特点和主要功能,以及AT指令的应用。通过单片机的TXD/RXD与TC35模块的TXD/RXD的连接,实现了对TC35模块的初始化、短消息的数据收发以及打电话的功能。

一、引言

随着通信技术的快速发展,GSM手机模块在嵌入式系统中的应用越来越广泛。基于51单片机的GSM手机系统模拟设计,不仅有助于深入理解GSM模块的工作原理,也为实际应用提供了技术参考。本文旨在通过模拟设计,探讨C51单片机控制GSM模块实现短信收发和打电话功能的方法。

二、系统概述

本系统主要由STC12C5A32S2单片机和TC35型GSM手机模块组成。STC12C5A32S2单片机作为主控芯片,负责控制TC35模块的工作。TC35模块则负责实现短信收发和打电话功能。两者通过串口连接,实现数据的传输和指令的控制。

三、硬件设计

  1. STC12C5A32S2单片机与TC35模块接口设计

STC12C5A32S2单片机的TXD/RXD引脚分别与TC35模块的TXD/RXD引脚相连,实现串口通信。此外,还需要连接电源、地线以及必要的控制信号线。

  1. TC35模块特点与功能

TC35模块是一款高度集成的GSM模块,具有体积小、功耗低、性能稳定等特点。它支持短信收发、语音通话、数据传输等多种功能,通过AT指令集进行控制。

四、软件设计

  1. 初始化TC35模块

系统上电后,首先需要对TC35模块进行初始化。通过单片机发送AT指令,设置模块的工作参数,如波特率、短信中心地址等。

  1. 短信收发功能实现

单片机通过串口向TC35模块发送AT指令,实现短信的发送和接收。发送短信时,需要设置目标手机号码和短信内容;接收短信时,模块会将接收到的短信数据通过串口发送回单片机。

  1. 打电话功能实现

通过发送特定的AT指令,单片机可以控制TC35模块拨打电话或挂断电话。拨打电话时,需要设置目标手机号码;挂断电话时,发送挂断指令即可。

五、程序设计

程序设计采用模块化设计思想,将各个功能划分为独立的模块,便于调试和维护。主程序负责初始化单片机和TC35模块,并调用各个功能模块实现具体功能。各功能模块之间通过函数调用进行通信。

六、实验与测试

通过实际搭建硬件电路,编写并调试软件程序,验证了系统设计的可行性和有效性。实验结果表明,该系统能够稳定地实现短信收发和打电话功能。

七、结论与展望

本文基于STC12C5A32S2单片机和TC35型GSM手机模块,设计并实现了一种GSM手机系统模拟装置。通过详细阐述硬件设计、软件设计以及程序设计过程,为类似系统的设计提供了参考。未来,可以进一步研究如何优化系统性能、增加更多功能,以满足实际应用的需求。

资料包含:实物PCB,程序,论文,仿真原理图


void delayms(uint x);
void lcd_write_com(uchar lcd_com);   //送命令数据到LCD的子函数声明
void lcd_write_data(uchar lcd_data); //送显示数据到LCD的子函数声明
void lcd_int();                      //LCD初始化子函数声明

void write_sfm(uchar wz,uchar date);//在第一行写一个数函数
#define key_4x4_port P1             //定义4x4键盘使用的单片机端口
uchar key;                        //4x4键盘扫描所得的键值保存到这里
void key_4x4_scan();    //声明4x4键盘扫描子函数,得到的键值送至全局变量key

#define Phone_connection  1    //正在打电话状态标志
#define Clear_Connect     0    //电话已挂断状态标志
char Calls_State_Flag=Clear_Connect;   //电话状态  
void ScanMessage(void);
void clr_rsbuf(void);

uchar code AT[]="AT\r" ;                             //握手信号    
uchar code AT_CMGF[]= "AT+CMGF=1\r";//发送数据为TXET格式
uchar code AT_CMGS[]= "AT+CMGS=15994473659\r";  
uchar code AT_CMGR[]= "AT+CMGR=2\r"; 
uchar code AT_CSCA[]="AT+CSCA=\"+8613800771500\""; //设置服务中心号码     
uchar code AT_CNMI[]= "AT+CNMI=2,1,0,0\r";//新消息提示:设置为mode=2,mt=1
uchar code AT_CLIP[]= "AT+CLIP=1,1\r";//显示来电号码		  
uchar Sms[]="hello!";
uchar Phone_call[]="15994473659";
uchar Phone_num[12];

 【资源下载】下载地址:点击下载(742) https://docs.qq.com/doc/p/ffc421513a628b30450ae742547c0b850456d7c8

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值