OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3698|回复: 6

看了很多例程都没搞懂怎样通过手机短信操作单片机,比如说让单片机回复一条短信

[复制链接]

5

主题

12

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2016-12-13
在线时间
11 小时
发表于 2016-12-15 14:39:31 | 显示全部楼层 |阅读模式

AT指令我知道,但还是搞不懂怎样通关短信操控单片机
有没有相关的例程,或者代码看看
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

17

主题

344

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1280
金钱
1280
注册时间
2013-12-14
在线时间
567 小时
发表于 2016-12-15 15:28:10 | 显示全部楼层
大约一年之前搞过一个小东西,用的sim800l,例程的话网上应该找的到。
凭印象可以给您说一下大致的流程,sim800l是和单片机串口连接的。
手机给单片机发短信的话,sim800l会先把短信内容存到sim卡里,然后单片机可以通过发AT指令的方式,读短信,通过串口,把短信的内容再传到单片机里,然后你想怎么判断就怎么判断了,这个具体的编码格式不记得了,但是网上肯定能找到相关资料的。
单片机给手机发短信的话,也是一样,通过串口,把编码以后的数据(记得这个是可选的,我当时用的好像是unicode编码),传给sim800l,单片机给相应的AT指令,就把这条短信发出了。

由于时间太久了,可能过程有误,楼主可以去网上查找一下资料。
半导体->模拟电路->数字电路->单片机->汇编->C->操作系统->java
回复 支持 反对

使用道具 举报

10

主题

172

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1479
金钱
1479
注册时间
2016-1-25
在线时间
260 小时
发表于 2016-12-15 16:21:09 | 显示全部楼层
原子哥的例程 里面就有啊  你可以看看综合实验
回复 支持 反对

使用道具 举报

5

主题

12

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2016-12-13
在线时间
11 小时
 楼主| 发表于 2016-12-15 20:39:58 | 显示全部楼层
东北小辉辉 发表于 2016-12-15 15:28
大约一年之前搞过一个小东西,用的sim800l,例程的话网上应该找的到。
凭印象可以给您说一下大致的流程,s ...

兄弟,可以发你那个程序给我吗 592522086@qq.com,谢谢了
回复 支持 反对

使用道具 举报

17

主题

344

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1280
金钱
1280
注册时间
2013-12-14
在线时间
567 小时
发表于 2016-12-16 08:19:40 | 显示全部楼层
a360513112 发表于 2016-12-15 20:39
兄弟,可以发你那个程序给我吗 ,谢谢了

不好意思,那个是公司的项目,你可以自己尝试找找例程先写一下,遇到什么问题,来论坛讨论一下。
半导体->模拟电路->数字电路->单片机->汇编->C->操作系统->java
回复 支持 反对

使用道具 举报

13

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
188
金钱
188
注册时间
2016-11-16
在线时间
21 小时
发表于 2016-12-16 09:51:46 | 显示全部楼层
之前我做过一个风光互补的,,用的DTU,,,跟sim9000a很相似,,不过这个DTU要做的更全面些,,,短信发过去的内容可以直接给你转成串口的内容送给单片机,好像叫北京天协什么的公司,,淘宝上搜DTU就可以出来。。。操作要比SIM9000a简单很多,,就是有点贵,300块钱一个
回复 支持 反对

使用道具 举报

5

主题

12

帖子

0

精华

新手上路

积分
31
金钱
31
注册时间
2016-12-13
在线时间
11 小时
 楼主| 发表于 2016-12-17 11:07:56 | 显示全部楼层
东北小辉辉 发表于 2016-12-16 08:19
不好意思,那个是公司的项目,你可以自己尝试找找例程先写一下,遇到什么问题,来论坛讨论一下。

我自己写了个简单的实验,在单片机上先发送指令设置GSM模块为新消息提示,然后我每次用手机发送短信给GSM模块的时候,GSM模块都会向单片机发送收到新消息的数据,然后写了个串口关于RXNE位的串口中断,这样来实现短信操作单片机的功能,我自己根据自己理解的写的,其他判断方法我是真不知道,最后用个这个实验尝试控制灯的开关也成功了。
问题是:
1.每次我开机都会自动触发一次中断
2.这样的操作方法,由于这样的新消息提示触发中断是无差别的,我不能按着我的需求实现不同操作,比如有时我想开灯,有时我想开蜂鸣器
3.当我在中断函数上加入向指定手机返回一条短信的代码后,每次我打开单片机,按照(1)说的那样,他自动触发一次中断,而且短息也的确发到我手机里去了,但是程序就好像卡死在中断函数里面一样,因为我main函数里面设置了LED提示灯,如果程序一直运行下去,那个LED是会闪亮的,但实验结果是没有根本没有亮。我在中断函数中只写控制LED开关的时候,不会出现这样卡死的情况。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-26 10:25

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表