Arduino uno esp01s 硬串口通信
参考资料:
esp 烧录固件 和 烧录程序
esp 通信测试程序
ili9341 tft显示屏使用
零件:
Arduino uno
ili9341 tft
esp01s
usb 烧录器
最初的想法是, 弄一个BTC 和 ETH 价格显示的小电视,找了找手上有的硬件就这几样,于是就开始了折腾。
首先声明我是菜鸡一个, C++ 也就学了半桶水,硬件更是十分业余,我的方法也许你不一定能直接套用。
一开始就有个很严重的问题, 就是 Arduino 插上 我这块屏幕就没有多余的接口,来给esp做软串口通信了, 所以我只能使用 硬串口即 Arduino 上的 RX 和 TX 口, 网上有些文章说可以互相通信的,反正我是没弄成功,我的方法是,直接使用 esp 读取网站 json 获取BTC 的价格,通过串口发送到 Arduino 经过数据处理显示到屏幕上。
esp01 升级 和 烧录 参考上面的 esp 烧录固件 和 烧录程序 文章。
arduino ide 写入 esp01 的程序:
/*This sketch demonstrates how to scan WiFi networks.The API is almost the same as with the WiFi Shield library,the most obvious difference being the different file you need to include:
*/#include <ESP8266WiFi.h>void setup() {Serial.begin(9600);Serial.println(F("\nESP8266 WiFi scan example"));// Set WiFi to station modeWiFi.mode(WIFI_STA);// Disconnect from an AP if it was previously connectedWiFi.disconnect();delay(100);
}void loop() {String ssid;int32_t rssi;uint8_t encryptionType;uint8_t* bssid;int32_t channel;bool hidden;int scanResult;Serial.println(F("Starting WiFi scan..."));scanResult = WiFi.scanNetworks(/*async=*/false, /*hidden=*/true);if (scanResult == 0) {Serial.println(F("No networks found"));} else if (scanResult > 0) {Serial.printf(PSTR("%d networks found:\n"), scanResult);// Print unsorted scan resultsfor (int8_t i = 0; i < scanResult; i++) {WiFi.getNetworkInfo(i, ssid, encryptionType, rssi, bssid, channel, hidden);Serial.printf(PSTR(" %02d: [CH %02d] [%02X:%02X:%02X:%02X:%02X:%02X] %ddBm %c %c %s\n"),i,channel,bssid[0], bssid[1], bssid[2],bssid[3], bssid[4], bssid[5],rssi,(encryptionType == ENC_TYPE_NONE) ? ' ' : '*',hidden ? 'H' : 'V',ssid.c_str());delay(0);}} else {Serial.printf(PSTR("WiFi scan error %d"), scanResult);}// Wait a bit before scanning againdelay(5000);
}
Arduino uno 的程序:
void setup()
{//波特率务必与要通讯的模块保持一致,否则通讯失败Serial.begin(9600);
}
void loop()
{//因为串口是一位一位的发送所以在这里缓存完再发送if (Serial.available()) //判断串口缓存区是否有数据{size_t counti = Serial.available();uint8_t sbuf[counti];Serial.readBytes(sbuf, counti); //读取串口数据Serial.write(sbuf, counti); //将读到的数据通过TX引脚发出去}
}
程序弄好把 Arduino 与 esp01 连接
esp01 -------- Arduino
RX -------- TX
TX -------- RX
v3.3 -------- v3.3
VCC -------- VCC
打开 Arduino IDE 串口监视器,成功的话显示如下
这说明esp01 已经通过串口发送信息到 Arduino uno 了, 剩下的的就自己去折腾吧。。。。。
Arduino uno esp01s 硬串口通信相关推荐
- Arduino Rx、Tx硬串口通信Serial屡败屡战记录-将数值重新转换成字符串-重复多次读怎么办??
介绍 Arduino最简单的串口通信之TTL协议,转RS485的后面再写,还有SPI,IIC的慢慢学习.... Rx.Tx硬串口基本在一些模块上都能用到,比如DHT温湿度模块... FAQ 发出去的无 ...
- arduino 与java通信_在Java应用程序与Arduino Uno之间建立串口连接
在本篇文章中,我们将主要演示如何在Java应用程序和Arduino Uno之间建立串口连接.本文分为两个部分:在第一部分中,说明了如何从Java应用程序向Arduino发送文本(数字).此外,Ardu ...
- 【Arduino】双主板串口通信并将光敏传感器信息上传到阿里云
[Arduino]双主板串口通信并将光敏传感器信息上传到阿里云 文章目录 [Arduino]双主板串口通信并将光敏传感器信息上传到阿里云 前言 一.所需材料 二.掌控板部分 1.引入库 2.配置WiF ...
- Arduino UNO与ESP8266串口连接
Arduino UNO与ESP8266串口连接 1. ESP8266烧录AT固件 1.1 烧录软件下载 1.2 烧录AT固件 2. ESP8266 AT指令 3. Arduino UNO 串口连接方式 ...
- 使用Arduino完成STM32的串口通信
目录 一.Arduino 1.Arduino下载 2.Arduino实验示例 a.开发板设置 b.Arduino编译烧录 二.基于STM32两种库 标准库函数 HAL库函数 三.Stduino 一.A ...
- Arduino学习笔记⑥ 硬件串口通信
文章目录 1.前言 2.常用串口函数 2.1 begin -- 启用串口 2.2 end -- 停用串口 2.3 print.println.printF -- 打印输出数据 2.4 read -- ...
- Arduino MEGA2560与蓝牙的通信(玄学)问题
使用Arduino UNO和HC05进行通信的时候,会用到一个语句 SoftwareSerial BT(10, 11); 这是定义一个SoftwareSerial对象:BT,并初始化了RX和TX的引脚 ...
- arduino UNO通过AT指令控制esp8266连接WiFi及onenet云平台
写下这篇文章是为了记录我学习使用esp8266的过程.在本文中我们会使用AT指令通过MQTT协议连接onenet云平台 开篇必看 1)关于onenet MQTT设备创建 在设备连接onenet平台中, ...
- arduino uno r3单片机封装图_Arduino和单片机区别,及Arduino入门教程
关注.星标公众号,不错过精彩内容 素材来源:DF创客社区编辑整理:strongerHuang 搞单片机的读者都应该听说过Arduino,或者用过Arduino,但很多小伙伴还是不清楚究竟什么是Ardu ...
最新文章
- 深度学习100例 | 第34天:如何进行数据增强?
- 【POJ 2503】Babelfish(水题)stl map存取即可
- c语言源程序要求每行只能书写一条语句,C语言章节习题集(全)
- java compareandset 包_Java AtomicReferenceArray compareAndSet()用法及代码示例
- leetcode 二进制求和 addBinary
- MATLAB GUI的CreateFcn如何创建
- 测试iis后台webservice服务_C#的WebService完全教程(之五)
- paip.自适应网页设计 跟 响应式 设计方法与工具补充(2)o54
- 零基础多久能学会python_零基础小白多久能学会python
- lzg_ad:XPE中的EWF分区设置说明
- Smartbi:用Excel制作移动端的九型人格测试
- python用lda主题_python下进行lda主题挖掘(二)——利用gensim训练LDA模型
- 图层php,ps图层怎么用
- FME转换CAD填充块文件为SHP,并正确显示颜色符号。
- 《中国程序化广告技术生态图》2015年三月号更新发布
- IDEA使用插件SequenceDiagram、RestfulToolkit
- WIN10计算机用户怎么改名,win10怎么改名字_win10怎么改用户名字
- 水印去除(基于nosie2noise优化 代码+模型)
- 【北京迅为iMX6ULL】嵌入式学习之Linux系统编程视频教程
- 影院活动管理系统需求分析报告