资源简介
// PDU编码,用于编制、发送短消息
// 输入: pSrc - 源PDU参数指针
// 输出: pDst - 目标PDU串指针
// 返回: 目标PDU串长度
int gsmEncodePdu(const SM_PARAM* pSrc, char* pDst)
{
int nLength; // 内部用的串长度
int nDstLength; // 目标PDU串长度
unsigned char buf[256]; // 内部用的缓冲区
// SMSC地址信息段
nLength = strlen(pSrc->SCA); // SMSC地址字符串的长度
buf[0] = (char)((nLength & 1) == 0 ? nLength : nLength + 1) / 2 + 1; // SMSC地址信息长度
buf[1] = 0x91; // 固定: 用国际格式号码
nDstLength = gsmBytes2String(buf, pDst, 2); // 转换2个字节到目标PDU串
nDstLength += gsmInvertNumbers(pSrc->SCA, &pDst;[nDstLength], nLength); // 转换SMSC号码到目标PDU串
// TPDU段基本参数、目标地址等
nLength = strlen(pSrc->TPA); // TP-DA地址字符串的长度
buf[0] = 0x11; // 是发送短信(TP-MTI=01),TP-VP用相对格式(TP-VPF=10)
buf[1] = 0; // TP-MR=0
buf[2] = (char)nLength; // 目标地址数字个数(TP-DA地址字符串真实长度)
buf[3] = 0x91; // 固定: 用国际格式号码
nDstLength += gsmBytes2String(buf, &pDst;[nDstLength], 4); // 转换4个字节到目标PDU串
nDstLength += gsmInvertNumbers(pSrc->TPA, &pDst;[nDstLength], nLength); // 转换TP-DA到目标PDU串
代码片段和文件信息
相关资源
- GSM GPRS Modem USB驱动
- SIM7600CE-4G模块资料.rar
- 基于北斗/GPS双星和GSM/GPRS通信的车辆
- linux下面使用SIM300模块发送GPRS短信的
- GA6 gprs模块 51单片机 程序
- 温度、一氧化碳、二氧化碳、PM2.5以及
- STM32F单片机与SIM900A的硬件条件下读一
- HUAWEI MG323
- Air202 硬件设计手册
- gprsprotel仿真
- STM32的SIM900A的GPRS数据传输
- 灵期通讯软件
- GPRS编程DTU资料
- stm32f407 GPRS通信源码
- ucos+sim908+GPRS+GPS
- GPRS 模块 原理图
- 移远通信国网4G模块资料
- STM32实现GPRS与服务器数据传输
- GPRS数据采集上位机软件
- STM32平台GPS定位器源码
- LTE重要协议规范--3gpp TS 23.401
- stm32f1+sim800c全部代码GPRS短信电话等
- 基于STM32、SIM900A、UCOSII的GPRS DTU
- GSM网络与GPRS.pdf
- STM32F4-SIM900A模块GPRS功能使用精简例程
- GPRS GA6模块使用教程
- HT32f53252使用DHT11+光强+oled+gprs
- GPRS数据接收服务器端
- gprs远程无线抄表系统
- STM32实现GPRS与服务器数据传输 相关源
评论
共有 条评论