作者:iotsharer
首发:Arduino通讯篇
一、Arduino与蓝牙通讯
1、DIY智能温湿度计(上)——数据获取
2、DIY智能温湿度计(下)——APP控制温湿度计
3、蓝牙串口助手使用
4、DIY智能温湿度计之升级篇
二、Arduino与Esp8266(WiFi模块)
1、Esp8266相关知识
(一)、基础篇
- ESP8266开发之旅 基础篇① 走进ESP8266的世界
- ESP8266开发之旅 基础篇② 如何安装ESP8266的Arduino开发环境
- ESP8266开发之旅 基础篇③ ESP8266与Arduino的开发说明
- ESP8266开发之旅 基础篇④ ESP8266与EEPROM
- ESP8266开发之旅 基础篇⑤ ESP8266 SPI通信和I2C通信
- ESP8266开发之旅 基础篇⑥ Ticker——ESP8266定时库
(二)、网络篇
- ESP8266开发之旅 网络篇① 认识一下Arduino Core For ESP8266
- ESP8266开发之旅 网络篇② ESP8266 工作模式与ESP8266WiFi库
- ESP8266开发之旅 网络篇③ Soft-AP——ESP8266WiFiAP库的使用
- ESP8266开发之旅 网络篇④ Station——ESP8266WiFiSTA库的使用
- ESP8266开发之旅 网络篇⑤ Scan WiFi——ESP8266WiFiScan库的使用
- ESP8266开发之旅 网络篇⑥ ESP8266WiFiGeneric——基础库
- ESP8266开发之旅 网络篇⑦ TCP Server & TCP Client
- ESP8266开发之旅 网络篇⑧ SmartConfig——一键配网
- ESP8266开发之旅 网络篇⑨ HttpClient——ESP8266HTTPClient库的使用
- ESP8266开发之旅 网络篇⑩ UDP服务
- ESP8266开发之旅 网络篇⑪ WebServer——ESP8266WebServer库的使用
- ESP8266开发之旅 网络篇⑫ 域名服务——ESP8266mDNS库
- ESP8266开发之旅 网络篇⑬ SPIFFS——ESP8266 Flash文件系统
- ESP8266开发之旅 网络篇⑭ web配网
- ESP8266开发之旅 网络篇⑮ 真正的域名服务——DNSServer
(三)、应用篇
(四)、高级篇
- ESP8266开发之旅 进阶篇① 代码优化 —— ESP8266内存管理
- ESP8266开发之旅 进阶篇② 闲聊Arduino IDE For ESP8266配置
- ESP8266开发之旅 进阶篇③ 闲聊 ESP8266 Flash
- ESP8266开发之旅 进阶篇④ 常见问题 —— 解决困扰
- ESP8266开发之旅 进阶篇⑤ 代码规范 —— 像写文章一样优美
- ESP8266开发之旅 进阶篇⑥ ESP-specific APIs说明
2、Esp8266接入常见物联网平台
(1) 贝壳物联
——贝壳物联平台通讯协议
——Arduino通过ESP8266连接贝壳物联服务,实现远程控制LED灯亮灭,并将结果反馈至控制界面。
(2)乐为物联
——乐联网-乐为物联开放平台-物联网云服务运营专家
(3)OneNet
——OneNET-开发者文档
三、Arduino与Sim900A(短信模块)
1、视频教程:
基于arduino的 GSM模块SIM900A发送短信
2、如何使用Arduino和SIM900A将数据发送到Web服务器
3、相关资料
SIM900A各功能指令详细版
4、相关代码
(1)sim900a发送短信
#include <Arduino.h>
int i;
void setup() {
Serial.begin(115200);
i = 0;//终止循环
}
void loop() {
if (i == 0) {
SendMessage();
i =2;
}
delay(15 * 1000);
}
void SendMessage() {
Serial.read();
Serial.println("AT");
delay(1000);
Serial.println("AT+CMGF=1");//设置短信模式为TEXT。
delay(2000);
Serial.println("AT+CSGA=\"+861380****500\"");//****为当地长途区号
delay(2000);
Serial.println("AT+CMGS=\"***********\"");// AT指令 +电话号码
delay(2000);
Serial.println("ABC"); // 短信的内容
delay(1000);
Serial.write(0x1A);//16进制1A
delay(1000);
}
(2)sim900a接收短信
#include <Arduino.h>
#include <String.h>
void setup()
{
Serial.begin(9600);
Scan_Message();
}
void loop() {
Read_Message();
}
void Read_Message() {
String inString = "";
while (Serial.available() > 0) {
char inChar = Serial.read();
inString += (char)inChar;
delay(2);
}
if (inString != "") //如果接收到字符不为空
{
//判断收到的短信里是否有"massage"
if (inString.indexOf( "massage") != -1) {
//这里可以添加控制语句
}
Serial.println(inString);
}
}
void Scan_Message() {
Serial.println("AT+CMGF=1\r\n");//设置短信模式为TEXT。
Serial.println("AT+CMGR=1\r\n");//读取第一条短信
// Serial.println("AT+CMGD=1\r\n");//删除第一条短信
delay(38);
}
相关阅读
定期更新,更多AIoT相关技术知识请关注动手学AIoT专栏。