[WiFi]Esp8285开发环境搭建

一.本文目标:

当我们拿到esp8285开发版的时候,我们该如何进行代码开发呢?本文会详细介绍开发环境搭建的步骤,实现helloworld程序。

为了实现该目标,首先我们需要搭建开发环境,然后再用开发工具实现代码编写,然后硬件接入电脑以便把程序烧录进ESP8285的flash中。每次ESP8285启动时,会自动从flash中启动系统或执行程序。系统执行时,会执行到我们编写的代码,我们本文将esp8285启动后在控制台上打印一样“helloworld”,说明代码成功执行,环境搭建成功。


二本文思路:

由于esp8285是一个用usb线即可插入电脑无需做其他处理的带flash的mcu,所以我们可以把它成是一个简单版的树莓派,只是启动的系统是实时操作系统或者就是启动了一个进程,进程会调用一个固定的程序文件,我们写程序在这个文件里,即可实现程序的编写的。所以我们只需要用一根usb数据线即可连接到电脑来烧录程序(可以理解为从开发电脑的开发工具下的开发项目的部署包(本质就是一个程序段)部署到esp8285).烧录成功后,启动esp8285,程序会自动调起,程序里会打印数据到串口,我们再把串口的数据在开发工具中显示出来,就可以实现类似控制台打印日志的方式来看到我们打印的程序了。

开发工具这里我们选择Arduino IDE集成开发工具,安装一个esp8285的插件,即可进行程序烧录和控制台日志显示功能了。当然开发也是在该工具上建一个项目,然后编写代码。

实际使用会用针脚来控制外设,所以后续会用到其他调试,开发工具,但是本文做到日志回显即可。

这里需要注意:esp8285只是个通用型号,有很多生产厂商,在开发工具使用的时候,需要下载对应的正确的生产厂商,我这里的是板子上带的。

我这里是dot的,并且esp8285属于node muc的一种,这个是购买的时候问商家,给的具体型号,记下来这个具体型号,在我们下载插件之后,选择型号的时候需要指定才能找到准确的烧录基础程序。

下面的步骤会详细介绍每个步骤。

三.本文步骤

1.下载开发工具

官网地址: 搜索 arduino

保护多种方式,可单纯下载,如果选后者需要提供邮箱,具体下载方式会通过邮件发送

2.下载成功后,安装工具

点我同意

下一步

安装,如果想切换安装目录,这里切换

安装成功后,点击快捷键,或者从上面安装目录找到启动快捷图标

启动后的样子:

3. 安装插件

工具-->管理库

点开的界面

找到左上角输入框,输入esp 注意,不要输入esp8285,我们这里选择esp8266插件。为何这么选择,是因为esp8255是对esp8266的扩展,而不是改进,mcu部分就是esp8266,所以直接选择esp8266即可

这里要非常注意一点,用的线必须是正经数据线,不能是短的给一些耳机啥的充电用的数据线,因为很多数据线在不需要数据传输的情况下,会把usb的四根线用2根线替代,这样的话会识别不到串口com口,也就是不能识别esp8285设备。如果辨别线,可以用这根线把手机接到电脑上,如果手机提示是否需要进行数据传输,那么这根线确定是数据线,而非电源线。

提前连接

识别成功后长这样

2. 编写程序

文件-->示例-->esp8266-->blink

这个程序会对板子上的呼吸灯一闪一闪的。

我们在此基础上,编写串口数据输出,以便把日志信息回显到开发工具的控制台。

程序:起名blink,并选择保存。防止后面编写代码后找不到代码了,所以要好好记着文件保存后的路径。

/*

ESP8266 Blink by Simon Peter

Blink the blue LED on the ESP-01 module

This example code is in the public domain

The blue LED on the ESP-01 module is connected to GPIO1

(which is also the TXD pin; so we cannot use Serial.print() at the same time)

Note that this sketch uses LED_BUILTIN to find the pin with the internal LED

*/

void setup() {

Serial.begin(115200);

pinMode(LED_BUILTIN, OUTPUT); // Initialize the LED_BUILTIN pin as an output

}

// the loop function runs over and over again forever

void loop() {

digitalWrite(LED_BUILTIN, LOW); // Turn the LED on (Note that LOW is the voltage level

// but actually the LED is on; this is because

// it is active low on the ESP-01)

delay(1000); // Wait for a second

digitalWrite(LED_BUILTIN, HIGH); // Turn the LED off by making the voltage HIGH

delay(2000); // Wait for two seconds (to demonstrate the active low LED)

Serial.println("helloworld");

}

注意这里需要设置串口的波特率,这里使用的是115200。这个数值要和开发工具上配置的完全一致,否则日志是打印不出来的。

3. 代码调试

选择对号进行编译,选择箭头进行编译并部署(烧录)

当然前提是板子要已经在插件中配置好了,而且这里可以正常显示了才行,具体如下:

等待传输100%,表示烧录成功

烧录之后,可以这里显示串口的实时情况

4. 日志查看

找到最右侧的按钮,会显示出来 串口监视器 几个字样,点击,可以看到底下出来了一块区域,这块区域就是串口的接收回显的

选择串口的波特率为11500,这里跟代码里设置 Serial.begin(115200);这一行要保持完全一致

5. 点击烧录按钮,等待烧录成功

烧录成功之后,可以看到板子上的led绿色小灯亮起,而且日志控制台回显收到helloworld字样。

时间间隔是每2s灯亮灭各一次,同样的代码也打印helloworld字样一次。

四. 总结

通过上面的介绍,我们基本上从0开始,可以搭建好了一个esp8285的Arduinoide开发环境了,是不是很简单,其实基于Arduino ide这种集成式的开发工具,可以让我们用开发Java等类型的高级语言的方法 来开发基础硬件控制的程序,非常方便,我们用esp82585也是避免了esp8266需要集成ch340等串口转usb 的麻烦,另外可以做到通电即启动项目,非常方便。当helloworld打印出来之后,我们就具备了高级的esp8285开发能力了。接下来就可以接外设实现复杂功能了。
---------------------
作者:了了2
链接:https://bbs.21ic.com/icview-3381886-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

本项目分享的是国外开源ESP8285远程串口透传模块设计,附硬件/固件等。该WIFI模块是一个基于mqtt server的wifi远程透传串口模块(包含硬件与固件), 主要的功能为基于因特网(非局域网)的串口透传。serT 硬件设计开源,用户可以自由使用,制作,修改,发布, 遵循MIT协议. serT 固件设计提供二进制文件,用户可以自由使用,生产,反向,但暂不开源。serT 远程串口透传模块电路 PCB 3D截图: 应用模式: serT 支持两个配对使用(传统透传串口模式). 从其中一个设备上发出的串口信号, 会透传到另外一个设备串口的接收, 从而让设备看起来就像导线相连,从而简化了应用的开发. 多个设备配对使用(类似RS485总线模式). 从其中一个设备上发出的串口信号, 会透传到所有的串口(不包括自身)接收端.这种模式类似RS485总线, 这就要求用户在应用协议的实现上, 设备空闲态要处于接收状态,每个时刻只有一个设备在发送数据,否则会出现数据错乱. 单个设备连接其他高级系统. 这相当于将一个串口透传给PC(或者其他高级系统),从而和PC上的应用软件连接, 实现功能. serPrint就是一个在电脑上打印远端serT数据的应用示例, 这个应用可以实现给远程非联网设备记录日志等有用的功能. serT设备需要一个mqtt server服务器, 已经测试eclipse(及 mosquitto搭建的broker), 百度云iot hub, emq搭建的borker, 中移物联等云, 未发现不适配问题. 这些有很多是免费或者限量免费的, 用户使用成本低。 相关资料下载,或者到“相关文件”下载。 视频演示:使用serT模块远程读取MH-Z19二氧化碳模块的数据, mqtt 使用自建的服务器,属于另外一个运行商 https://v.youku.com/v_show/id_XMjUwMTg3NTg1Mg==.html serT 项目链接, 包含硬件, 固件, 3D结构, 文档等: https://github.com/coffeerr2004001/serT serPrint( Java客户端, 用于将serT终端的数据透传显示到主机上 ) https://github.com/coffeerr2004001/serPrint serProg( serT 固件下载烧写客户端) https://github.com/coffeerr2004001/serProg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值