目录

调试

32控制

硬件连接

百度网盘源码


调试

首先用串转USB模块调试。

TEST(UCS2)模式下发送中英文短息,短消息储存至SIM卡中。

AT+CMGF=1 AT+CSCS="UCS2” AT+CSCA?

AT+CSMP=17,167,0,25

AT+CMGS="要发送电话号码转UNICON编码"

>要发送的内容转UNICON编码

最后以十六进制的方式发送1A。

32控制

用stm32控制SIM900A的几个重要函数;

同样的指令编写成函数;


u8 sim900a_send_chmessage_zc(u8*number,u8*content)
{u8 cmd[100];sprintf((char*)cmd,"AT+CMGS=\"%s\"",number);if(sim900a_send_cmd((u8 *)"AT+CMGF=1",(u8 *)"OK",100)) return SIM_CMGF_ERR;if(sim900a_send_cmd((u8 *)"AT+CSCS=\"UCS2\"",(u8 *)"OK",100))   return SIM_CSCS_ERR;if(sim900a_send_cmd((u8 *)"AT+CSCA?",(u8 *)"OK",100))  return SIM_CSCA_ERR;if(sim900a_send_cmd((u8 *)"AT+CSMP=17,167,0,25",(u8 *)"OK",100))  return SIM_CSMP_ERR;if(sim900a_send_cmd(cmd,(u8 *)">",100))    return SIM_CMGS_ERR;UART2SendString(content,strlen((char*)content));//u2_printf("%s",content);if(sim900a_send_cmd((u8 *)0x1A,(u8 *)"+CMGS:",1500)) return SIM_CMGS_SEND_FAIL;return SIM_OK;
}

发送的代码

u8 sim900a_send_cmd(u8 *cmd,u8 *ack,u16 waittime)
{u8 res=0; USART2_RX_STA=0;USART2_RX_REC_ATCOMMAD=1;if((u32)cmd<=0XFF){while(DMA1_Channel7->CNDTR!=0);   //等待通道7传输完成   USART2->DR=(u32)cmd;}else u2_printf("%s\r\n",cmd);//发送命令if(ack&&waittime)       //需要等待应答{while(--waittime)  //等待倒计时{delay_ms(10);if(USART2_RX_STA&0X8000)//接收到期待的应答结果{if(sim900a_check_cmd(ack))break;//得到有效数据 USART2_RX_STA=0;} }if(waittime==0)res=1; }USART2_RX_STA=0;USART2_RX_REC_ATCOMMAD=0;return res;
} 

主函数

while(res)   //只需要修改电话号和内容即可{res=sim900a_send_chmessage_zc((u8*)"电话号码",(u8*)"内容");}

硬件连接

模块RX接PA2 TX接PA3。

串口2发送给模块,串口3只是用来打印。

由于GSM模块发射信号功率较大,电脑的USB供电电流较小,板子供电不足问题这里我需要外接一个电源供电。

代码烧录后用充电宝给板子供电,串转USB接串口3调试打开串口调试助手更直观。

百度网盘源码

最后附上整个工程源码,只需要在主函数转修改UNICON编码的电话号码和内容即可。            (仅供学习使用)

链接:https://pan.baidu.com/s/1z6PluDTkZXngFkTuBAYTUw 
提取码:9438

STM32学习记录——SIM900A实现中英文短信发送相关推荐

  1. 考勤情况记录数据表、短信发送记录表设计

    考勤管理数据表设计 1.刷卡记录表 字段 类型 约束 说明 work_id varchar(64) not null 工号 username varchar(64) not null 姓名 depar ...

  2. (六)Linux 4G模块Text格式和PDU格式实现中英文短信发送

    文章目录 一.前言 二.Text格式发送英文 三.PDU格式发送中文 (1)获取短信中心号 (2)发送PDU短信 四.程序流程图 五.主程序 六.运行结果 七.问题解决 一.前言 在上一篇:(五)Li ...

  3. 通过STC15F2K60S2控制SIM900A发中英文短信,打电话

    本文通过串口通信,使用STC15系列单片机实现发短信打电话功能. 一. 注意事项 1. 首先要确定手机卡已经注册到网络,具备打电话发短信功能 2. 正确的硬件连接: P3.0-----STXD或者5V ...

  4. 如何使用 ATK-SIM900A 模块进行中英文的短信发送

    常见的at指令集 AT+CNMI,用于设置新消息指示.发送:AT+CNMI=2,1,设置新消息提示,当收到新 消息,且 SIM 卡未满的时候,SIM900A 模块会返回数据给串口,如:+CMTI: & ...

  5. 基于STM32与GSM模块发送中英文短信

    基于STM32与GSM模块发送中英文短信 最近在做毕业设计有用到GSM模块进行短信报警,模块的功能比较多这里就不介绍了,一般的拨打电话都很简单就只需要一条指令即可,发送英文短信也很简单也只要几条命令也 ...

  6. STM32使用GSM模块发送中英文短信(TEXT模式到PDU模式的转换)

    STM32使用GSM模块发送中英文短信(TEXT模式到PDU模式的转换) 目的是按下按键,短信发送 PDU转换网站 链接: PDU转换网站. 使用硬件: ··· 开发板:正点原子战舰V3 GSM模块: ...

  7. STM32老人防跌倒报警GSM短信GPS定位设计(程序+原理图+PCB)

    本设计: 基于STM32老人防跌倒报警GSM短信GPS定位设计(程序+原理图+PCB) 编号C0025 下载链接 C0025 网盘链接 功能描述: 本系统由基于STM32单片机的核心板.ADXL345 ...

  8. Linux 串口 gprs at,linux下GPRS模块使用AT命令实现拨接电话,发中英文短信

    开发板           :fl2440 cpu                :  s3c2440(arm9) 开发模块       :A7(GPRS/GPS) 远程登陆软件:PUTTY **** ...

  9. 【日常记录】接入短信发送功能,为实现完整的注册功能做准备

    接入阿里短信发送接口: 1.直接去阿里云[云市场]搜索[短信]随便选一个试用测试就行 打开后有相应的api说明 调用地址以及请求参数,可以自己去postman调试或者使用自带的[调试工具:去调试]. ...

  10. sms+cmgs+pdu+java_实现sms短信发送+pdu模式(支持中英文发送)

    以下部分资料是从网上各个博客收集到的: 1.目前,发送短消息常用Text和PDU(Protocol Data Unit,协议数据单元)模式. 1>使用Text模式收发短信代码简单,实现起来十分容 ...

最新文章

  1. 2021年大数据ELK(十二):Elasticsearch编程(环境准备)
  2. 【C++】Google C++编码规范(二):类
  3. mysql 账户管理_如何用MySQL 命令来实现账户管理
  4. 用Golang写一个搜索引擎(0x05)--- 文本相关性排序
  5. java 动态多态性_java4 动态多态性
  6. 恶意软件 自动化规则提取工具 yargen 原理分析
  7. Java学习小程序(8)求数组元素的最大值并放在最后一位
  8. 无需羡慕,今后.NET开发想拿30k也可以毫不费劲!
  9. drools6.5_Drools 6.5.0.Final可用
  10. 网络上常用的一些网站
  11. VC中将bmp作为资源文件写入EXE或DLL,然后内部调用(转)
  12. opengl笔记—— glMultMatrixf() 区别 glLoadMatrixf()
  13. mysql 初始化_MySQL安装与初始化
  14. mac 字幕生成工具
  15. 为什么Word 里表格文字无法垂直居中?明明已经设置垂直居中了
  16. 北大计算机研究生有多神仙,北大考研成绩公布,还上“热搜”,这都是些什么“神仙分数”?...
  17. Redis实现好友关注 | 黑马点评
  18. w13scan 扫描器的安装及应用
  19. 段码液晶屏怎么焊接?
  20. 【3D视觉创新应用竞赛作品系列​】轻量化、松耦合的手持RGB-D室内环境实时重建系统

热门文章

  1. 京东数科主导的首个Apache基金会项目ShardingSphere进入孵化器
  2. Android Studio中修改APP图标和APP名称
  3. Drools7.5.0教程-目录
  4. AFLGO插桩代码分析记录
  5. 百度贴吧诱导用户操作CPA项目
  6. sketchup草图家具拆单软件 有屋 衣柜橱柜 全屋定制 设计渲染生产一体化SU
  7. 使用el-tree-transfer不显示label的坑
  8. ArcGIS空间数据的拓扑处理
  9. MySQL的连接字符串 concat、concat_ws、group_concat、repeat()函数用法
  10. 组建局域网_局域网组建常用的网线种类解读