0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用ESP8266WiFi模块发送电子邮件

454398 来源:工程师吴畏 2019-07-29 09:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

简介

随着物联网IoT)的扩展,物联网应用的范围正在从控制设备到监控设备(如传感器)和发送电子邮件不断增长。

通过发送ESP8266模块的电子邮件,您可以了解您正在监控的任何传感器的状态,或者您可以在入室盗窃或入侵者警报时收到紧急电子邮件。

因此,请不要再拖延,让我向您展示使用ESP8266 WiFi模块发送电子邮件所需的所有步骤。

ESP8266 Board

如前所述,我将在此项目中使用DFRobot FireBeetle ESP8266电路板发送电子邮件。您可以使用任何ESP8266模块,我已经使用我的ESP-01 ESP8266板测试了这个程序,它运行得很好。

BUYNOW:DFRduino UNO R3 - Arduino兼容

由于DFRobot FireBeetle ESP8266板具有所有必需的组件,如MicroUSB端口,3.3V稳压器等。我不需要对电路板进行任何额外的连接。

我需要做的就是插件端口中的MicroUSB电缆并将其连接到计算机(已安装驱动程序并已设置Arduino IDE)。

这是选择的主要原因之一DFRobot FireBeetle ESP8266板通过我的常规ESP-01模块。

所以,我建议你仔细阅读DFRobot FireBeetle ESP8266板的连接指南,如下所述。以下项目: DFROBOT FIREBEETLE ESP8266审查和追加指南 。

SMTP服务器设置

要从ESP8266模块发送电子邮件,您需要遵循SMTP协议。因此,SMTP服务器需要发送电子邮件,ESP8266将充当SMTP客户端。

我已多次尝试使用Gmail的SMTP设置来发送电子邮件ESP8266,但它并不富有成效。所以,我决定使用第三方SMTP服务器,我发现“SMTP2GO”是一个可靠的选择。

因此,请转到 SMTP2GO 网站并注册免费帐户。创建帐户后,第一步是创建SMTP用户名和SMTP密码。事实上,当您确认电子邮件地址并首次登录SMTP2GO时,这就是您将获得的信息。

保留用户名,即电子邮件地址并根据您自己的选择更改SMTP密码。请注意,这是SMTP密码,与SMTP2GO登录密码不同。

记下两个,即SMTP用户名和SMTP密码。

现在,进入SMTP2GO应用程序的仪表板,在左侧访问栏上,单击“设置”,然后单击“用户”。

在此,您可以看到有关SMTP服务器和PORT编号的信息。通常如下:

SMTP服务器: mail.smtp2go.com

SMTP端口: 2525

记下这些信息需要在代码中使用此数据。

编码用户名和密码

您需要使用ASCII字符集将SMTP用户名和SMTP密码编码为Base64格式。为此,您可以使用Arduino库或名为 BASE64ENCODE 的网站。

分别输入您的SMTP用户名和密码,并记下编码的内容。例如,如果您的电子邮件地址为test@gmail.com,则会将其编码为dGVzdEBnbWFpbC5jb20 =。

如果您的密码为“testpassword”(不包括引号),它将被编码为dGVzdHBhc3N3b3Jk。

代码

现在,让我向您展示必要的代码,以便发送使用ESP8266发送电子邮件。

在代码中,进行必要的更改,如SSID,WiFi连接密码,发件人和收件人电子邮件地址,Base64编码SMTP用户名和SMTP密码。

代码说明

代码的初始部分非常简单,用于将ESP8266 WiFi模块连接到Internet。如果连接成功,您将获得IP地址。

接下来是发送电子邮件的实际代码。代码可以分为8个阶段。

阶段1:在阶段1中,您将连接到PORT上的SMTP服务器。这是使用命令client.connect(SMTP_SERVER,SMTP_PORT)完成的。作为回应,您将获得220个代码。

阶段2:使用EHLO命令(以前的HELO命令)问候SMTP服务器。该命令是client.println(“EHLO www.example.com”);

如果连接成功,您将获得250响应代码。

阶段3:阶段3是使用AUTH LOGIN命令授权用户。该命令是client.println(“AUTH LOGIN”);。您将获得响应334以获得成功。

阶段4:一个接一个地发送编码的SMTP用户名和密码。命令是client.println(“Base64,ASCII编码的用户名”);和client.println(“Base64,ASCII编码密码”);。

如果身份验证成功,您将获得235响应。

第5阶段:现在是时候从字符串发送邮件了,您必须使用MAIL FROM:《“+ String(from)+‘》格式输入发件人的电子邮件地址’;。

命令是client.println(“MAIL From:sender@gmail.com”);

阶段6:然后使用格式RCPT TO:《“+ String(to)+‘》’;将rcpt发送到字符串。命令是client.println(“RCPT To:receiver@gmail.com”);。

阶段7:发送“DATA”后跟随通过电子邮件的消息正文。命令是

client.println(“DATA”);

client.println(“To:receiver @ gmail .com“);

client.println(”From:sender@gmail.com“);

客户端。 println(“主题:ESP8266测试电子邮件 r n”);

client.println(“这是从ESP8266发送的测试电子邮件。 n “);

client.println(”测试电子邮件的第二行。“);

阶段8:最后,使用“。”终止邮件并发送退出命令。

client.println(“”);

client.println(“QUIT”);

所有这些命令和响应将显示在Arduino IDE的串行监视器中。

如果您按照上述所有步骤操作,您将能够成功使用ESP8266发送电子邮件。

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

    关注

    51

    文章

    966

    浏览量

    49023
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) ESP8285/ESP8266芯片案例

    【应用】国产26MHz频率晶振应用于物联网WIFI物联网模块(串口转WiFi模块),Espressif(乐鑫)ESP8285/
    的头像 发表于 11-21 15:37 4076次阅读
    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) <b class='flag-5'>ESP</b>8285/<b class='flag-5'>ESP8266</b>芯片案例

    ESP8266ESP32开发板常见的2种下载方式

    至240MHz CPU,而ESP8266是单核处理器,主频支持80MHz至160MHZ。 这些WiFi模块都带有GPIO,支持SPI,I2C,UART等各种协议。这两款芯片都有STA/AP/STA+AP的工作模式。E...
    的头像 发表于 11-10 20:30 354次阅读
    <b class='flag-5'>ESP8266</b>和<b class='flag-5'>ESP</b>32开发板常见的2种下载方式

    在蜂鸟处理器上进行RT-Thread+ESP8266 wifi模块开发

    本队伍编号CICC3042,本文介绍在蜂鸟处理器上运行RT-Thread实时操作系统,并进行ESP8266wifi模块开发。 在蜂鸟配套的sdk中提供了RT-Thread的移植 https
    发表于 10-31 09:02

    ESP8266ESP32开发板常见的2种下载方式

    协议,完整的 TCP/IP 协议栈以及蓝牙协议栈。用户可以使用这两款模块为现有的设备添加WIFI联网功能或蓝牙(ESP32),轻松的构建独立的网络控制器和远程控制监控设备。 ESP8266
    发表于 10-24 18:04

    ESP8266】进入透传模式后,数据间隔怎么调整,

    01.TCP客户端ESP8266透传模式发送数据是10ms发送一次,(连续发送) 02.TCP服务器接收到的数据是200ms左右接收一次,
    发表于 09-15 10:16

    【RA-Eco-RA6M4开发板评测】——4.使用ESP8266获取任意城市的天意预报

    _Clear();//清空接收缓存 sprintf(cmdBuf, \"AT+CIPSEND=%d\\\\r\\\\n\", len);//发送命令 if(!ESP8266
    发表于 07-23 19:50

    STM32+esp8266连接机智云,上传温湿度数据并控制继电器开关(平台配置、代码生成、代码移植)

    本教程将详细介绍如何将STM32微控制器与ESP8266Wi-Fi模块连接到机智云平台,实现温湿度数据的上传与继电器的远程控制。通过此过程,您将学会如何配置机智云平台,烧录ESP8266固件,移植
    的头像 发表于 07-15 18:54 755次阅读
    STM32+<b class='flag-5'>esp8266</b>连接机智云,上传温湿度数据并控制继电器开关(平台配置、代码生成、代码移植)

    单片机实例项目:ESP8266串口WIFI

    单片机实例项目:ESP8266串口WIFI,推荐下载!
    发表于 06-03 21:01

    【RA-Eco-RA4M2开发板评测】使用RA4M2和ESP8266实现MQTT协议上传传感器数据到云服务器并反向点灯控制

    马上就到RA4M2开发板评测的结尾了,今天给瑞萨论坛线上最具创意的一篇帖子,通过RA4M2开发板,和ESP8266 WIFI模块,然后通过手机上的MQTTOOL来实现手机控制RA4M2远程点灯,即使
    发表于 05-29 15:29

    ESP8266烧录与机智云一键配网教程

    ESP8266模块因其低成本和高性能,广泛应用于智能家居和工业自动化等领域。机智云平台提供了一键配网功能,简化了设备的联网过程。本教程将详细介绍如何使用ESP8266进行烧录,并通过机智云实现一键配
    的头像 发表于 05-24 11:04 1567次阅读
    <b class='flag-5'>ESP8266</b>烧录与机智云一键配网教程

    【RA-Eco-RA4M2开发板评测】RA4M2 + ESP8266获取城市天气预报(二)使用串口助手获取天气+破解任意类型AT指令

    :就是串口来进行透传,把串口助手上发送的AT指令通过调试串口接收来发送ESP8266模块的串口,然后
    发表于 05-04 10:07

    STM32和ESP32应该学哪个

    等等,市场占有率也很高。 ESP32相对年轻了不少,满打满算也不到 10 岁,他的前身,还得从 ESP8266 说起,都属于乐鑫科技的产品。 如果你单片机做过一些物联网产品,那多多少少应该听过
    的头像 发表于 02-18 09:52 1124次阅读

    CW32模块使用 ESP01S WIFI模块

    为现有的设备添加联网功能,也可以构建独立的网络控制器。即使在不了解其原理的情况下,只要有一定的串口知识理解,那么就可以轻松上手该模块,进而实现手机WiFi操作。功能特点:基于ESP8266芯片开发,模组集成了透传功能,即买即用,
    的头像 发表于 01-23 13:08 1180次阅读
    CW32<b class='flag-5'>模块</b>使用 <b class='flag-5'>ESP</b>01S <b class='flag-5'>WIFI</b><b class='flag-5'>模块</b>

    ESP8266笔记-07.ESP8266ESP TOUCH

    ;Esp8266 Hello world!\\\\n\"); nvs_flash_init(); //初始化wifi前先创建一个事件组 s_wifi
    发表于 12-30 10:37

    万里红电子邮件内容保密检查系统的优势

    电子邮件,作为一种更正式、专业的沟通渠道,是党政机关单位处理业务工作中必不可少的通信方式之一。电子邮件传输迅速、使用便捷、长期保存,很多机关单位建设了专有的电子邮件系统,进行公文传递、修改和审批
    的头像 发表于 12-13 10:11 1047次阅读