使用TC35i拨号源代码与GSM通信
2星 需积分: 3 200 浏览量
更新于2024-09-21
收藏 29KB DOC 举报
"TC35打电话源程序是一个用于通过TC35模块拨打电话的C语言程序,包含了必要的头文件和定义,以及与TC35通信的相关寄存器和控制位设置。程序中定义了用于发送指令的字符串常量,如拨号、短信模式设置等,并设有中断服务函数处理接收响应。"
TC35模块是一款常用的GSM/GPRS模块,适用于在嵌入式系统中实现语音通话和短信功能。在这个源程序中,可以看到开发者已经为一些关键的I/O引脚分配了位地址,如D10LED、D11LED、SW4、SW5、beeper、J1、J2和START_TC,这些都是与TC35模块交互的控制信号。START_TC被定义为启动TC35i的控制端,意味着当这个引脚被激活时,模块将开始执行相应的操作。
程序中包含的头文件 `<reg52.h>`、`<absacc.h>` 和 `<intrins.h>` 是为了支持52系列单片机(如8051)的寄存器操作和内联汇编。`<reg52.h>` 提供了52系列单片机特殊功能寄存器的定义,`<absacc.h>` 用于访问绝对地址的寄存器,而`<intrins.h>` 包含了内联汇编函数的声明。
源代码定义了一系列的字符串常量,如`PhoneCall[]`、`PhoneNum[]`、`CenterNum[]`、`TxtMode[]`、`Sms[]`和`AT[]`,它们分别对应着AT命令,用于拨打电话、设置短信中心号码、切换到PDU模式(文本模式为0,PDU模式为1)以及发送测试短信。这些AT命令是GSM通信的基础,用于控制TC35模块执行特定操作。
在中断服务函数`GSM_OK`中,处理来自TC35的响应。当RI(接收中断标志)被置位时,表明有数据到达,程序读取SBUF(串行口接收缓冲区),并将接收到的数据存入数组`ok`中。同时,`delay`和`delay_Xms`函数是简单的延时子程序,用于控制程序的执行节奏。
此外,`Print_Char`和`Print_Str`函数用于向串口发送字符和字符串,这是与TC35模块进行通信的基本方式,通过发送AT命令并等待响应来控制模块的行为。
该源程序展示了如何使用C语言控制TC35模块进行基本的通话和短信功能,涉及到了单片机编程、中断处理、AT命令交互等多个方面的知识点。通过调试和理解这个程序,可以学习到如何在实际项目中应用GSM通信技术。
133 浏览量
104 浏览量
773 浏览量
244 浏览量
354 浏览量
2015-04-16 上传
2022-01-27 上传
2023-06-01 上传
281 浏览量
guanjingxuan
- 粉丝: 0
- 资源: 1
最新资源
- robot_joint.tar.gz
- MT8-RGB程序更新 .zip
- Debouncer:Arduino的反跳库
- torch_sparse-0.6.4-cp36-cp36m-win_amd64whl.zip
- CourseSystem:C# 窗体应用程序,课程教务系统
- ngtrongtrung.github.io
- C20
- 技嘉B365M+9100F+5700XT(讯景雪狼版)
- flipendo-website:Flipendo 网站
- 智睿中小学校网站系统官方版源码 v3.3.0
- torch_sparse-0.6.7-cp37-cp37m-linux_x86_64whl.zip
- 取GB2312汉字.rar
- 纯CSS绿色下划线焦点的简洁导航
- 点文件:我的点文件
- fractals_py_p5:画出精美图片和曲线的五种方法称为分形
- 小学生噩梦--口算题卡生成器