如何通过GSM发送和接收以及怎样通过Arduino GSM发送SMS消息

电子说

1.3w人已加入

描述

步骤1:组件

一个 Arduino Mega (您可以使用其他板,但是最好使用具有2个或更多串行端口的板。可以修改项目以使用软件序列号,但建议使用硬件序列号)

一个基于 SIM900的GSM Shield 或兼容的Shield或装有SIM卡的模块(图片2 》)(我使用了Seeed Studio的1.0版GSM/GPRS Shield)

2 雌雄跳线

步骤2:将GSM Shield连接到Arduino

从 GSM盾牌的中移除 跳帽 RX和TX选择跳线(图片1 )

将 GSM屏蔽插入 顶部 Arduino Mega

连接公-母跳线的公端( 橙色导线)连接到 Arduino Mega 的 RX1 引脚(图片2和3 )

连接公-母跳线(棕线)的公端到 Arduino Mega 的 TX1 引脚(图2和3 )

连接的母端》 RX1 导线(橙色导线)连接到 GSM盾牌的 RX选择跳线的中心引脚(图片4 )

将 TX1 导线(棕色导线)的母端连接到的中心引脚 GSM Shield (图片4 )

图片5 的TX选择跳线显示已安装和已连接 GSM Shield

步骤3:启动Visuino,然后选择Arduino开发板类型

Arduino

Arduino

要开始对Arduino进行编程,您需要从以下位置安装 Arduino IDE :http://www.arduino.cc/。

请确保您安装了1.6.7或更高版本,否则此Instructable将无法使用!

Visuino :https://还需要安装www.visuino.com。

启动 Visuino ,如第一张图片所示

单击Arduino组件上的“ 工具”按钮( Visuino

中的(图片1 )),如所示,选择“ Arduino Mega 2560 ” 》图片2

步骤4:在Visuino中:将串行1通道的速度设置为19200

Arduino

Arduino

Arduino

默认情况下,GSM Shield配置为19200串行端口速度。我们需要为此配置串行端口1:

在Object Inspector中,展开“ Serial ”属性,然后展开“ Item [1]” ”子属性,然后选择其“ 速度”子属性(图片1 )

在“对象”检查器中,单击“ 速度”子属性(图片1 )

的值旁边的“ 向下箭头”按钮从下拉列表中选择“ 19200 ”(图片2 ),以更改属性值(图片3 》)

步骤5:在Visuino中:添加并连接GSM/GPRS串行组件

Arduino

Arduino

Arduino

Arduino

我们需要添加组件来控制GSM模块。该模块是通过串行通道控制的,因此我们需要连接它。 数字引脚9 用于为模块开/关供电:

在计算机中键入“ gsm ”在“组件工具箱”的“过滤器”框中,然后选择“ GSM/GPRS串行”组件(图片1 ),并将其放入设计区域(图片2 )

连接 GSM1的“ Out ”输出引脚组件添加到的“ Serial [1] ”通道的“ 在”输入引脚中“》 Arduino 组件(图片2 )

连接Arduino的“ 电源”输出引脚 GSM1 组件连接到“ Digital [9] ”输入端的“ 数字”输入引脚 Arduino 组件的通道(图片3 )。此引脚将打开 On/Off GSM模块的电源

步骤6:在Visuino中:添加,设置和连接文本值组件

Arduino

Arduino

Arduino

Arduino

GMS模块初始化需要一些时间。如果我们有迹象表明该模块已准备就绪,那就太好了。为此,我们将在模块准备就绪时将“ GSM Ready”文本发送到串行端口:

在“组件工具箱”的“过滤器”框中键入“ 文本值” ,然后选择“ 文本值”组件(图片1 ),并将其放入设计区域(图片2 )

在对象检查器中,将“ 值”属性的值设置为“ GSM就绪”(图片2 )

将 GSM1 组件的“ 就绪”输出引脚连接到“ TextValue1 组件(图片3 )

的 In “输入图钉li》将 TextValue1 组件的“ Out ”输出引脚连接到以下组件的“ In ”输入引脚 Arduino 组件的“ Serial [0] ”通道nt(图片4 )

步骤7:在Visuino中:将短消息元素添加到GSM组件中,然后发送消息元素的功能

Arduino

Arduino

Arduino

Arduino

GSM组件由执行不同任务的许多模块组成。由于我们将仅使用SMS,因此我们只需要添加“短信”模块,然后向其中添加一个“发送短信”功能:

在设计区域中,选择 GSM1 组件(图片1 )

在“对象检查器”中,单击“目标”值旁边的“ 。.. ”按钮。

GSM1 组件的“ 模块”属性(图片1 )

在“模块”编辑器中,选择“ 短消息”,然后单击“ + ”按钮(图片2 )以添加一个(图片3 )

在对象检查器中,单击“ 函数”值旁边的“ 。.. ”按钮。 “ 短消息”模块的属性(图片3 )

在“功能”编辑器中,选择“ 发送短信”,然后单击“ + ”按钮(图片2 )添加一个

步骤8:在Visuino中:配置发送SMS功能,并将接收到的消息信息连接到串行

Arduino

Arduino

Arduino

Arduino

在“对象”检查器中,设置“ 地址发送短信”元素的“ strong》”属性“ ”到要发送消息的电话号码(对于我来说,为了进行测试,我输入了我的SIM卡号卡,以便模块将接收并打印其发送的消息)(图片1 -显示虚构的数字)

在在对象检查器中,选择“ 文本”属性(图片2 )

在以下位置单击“ Pin ”按钮“ 文本”属性的前面(图片2 )

从下拉列表中,选择“ String SinkPin ”(图片3 )。这会将新的“ 文本”图钉添加到“ 发送短信”功能(图片4 )

关闭元素编辑器对话框(图片4 )

连接《 MessageInfo ”块的“ Out ”输出引脚 In “输入引脚的“通道的 GSM1 组件style =“”》 Arduino 组件(图片4 )

步骤9:在Visuino中:添加并连接字符到文本组件

Arduino

Arduino

Arduino

串行端口一次接收一个字符。要发送SMS消息,我们需要从一行中获取所有字符,从中创建一个文本,然后将其发送到GSM模块:

键入“ 字符”,然后选择“ 字符到文本”组件(图片1 ),并将其放入设计中区域(图片2 )

连接“ Serial [0]的“ Out ”输出引脚] ”通道连接到 CharToText1的“ In ”输入引脚组件(图片2 )

连接 Out ”输出销=“”》 CharToText1 组件连接到发送短信”元素的“ Text ”输入图钉》 GSM1 组件(图片3 )

步骤10:在Visuino中:添加,设置和连接延迟组件

Arduino

Arduino

Arduino

Arduino

请确保我们在文本正确更新后发送SMS。为此,我们可以使用延迟时间短的延迟组件:

在“组件工具箱”的“过滤器”框中键入“ 延迟”,然后选择“ 延迟” ”组件(图片1 ),并将其放到设计区域(图片2 )

在对象检查器中,将“ 时间间隔”属性的值设置为“ 100 ”(图片2 )

将 CharToText1 组件的“ Out ”输出引脚连接到“ In ” Delay1 组件的输入引脚(图片3 )

连接“ 输出”输出”引脚到“ 发送SMS 的“ 时钟”输入引脚 GSM1 组件(图片4 )

”元素l》

步骤11:生成,编译和上传Arduino代码

Arduino

在 Visuino ,按 F9 或单击图片1 上显示的按钮以生成Arduino代码,然后打开Arduino IDE

Arduino IDE ,单击上传按钮,以编译并上传代码(图片2 )

第12步:播放。..

Arduino

恭喜!。您已经完成了项目。

图1 显示了已连接并已打开电源的项目。

在图片2 上,您可以看到完整的 Visuino 图。

如果将串行终端连接到Arduino,则大约需要30秒您将看到“ GSM Ready”消息出现(图片3 )

消息出现后,如果您键入一些文本,然后单击“发送”(图片4 ),文本将作为SMS消息发送。

如果您已在第8步中选择了电话号码, Shield上的SIM卡电话,过一会儿您将收到消息,该消息将显示在串行终端上(图片5 )

如果已设置第8步上其他设备的编号,则消息将发送到该设备。

您可以从其他电话和设备向该电话号码发送SMS消息,也将显示在串行终端中。

责任编辑:wv 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分