“esp8266mod模块连接机智云Arduino实现pwm调节led的亮度“+_+

news2024/11/15 11:00:48

经过几天的漫长的探索和调试,终于连上机智云了。

历经的困难:esp8266总是连接机智云app超时,连接无反应,无数据。

1、机智云开发者中心,新建数据点,生成muc代码包,具体配置可以参考其他文章。

由于使用的是arduino的analogWrite(),即PWM,所以需要配置为可写的模式,范围为0~255。标识名为英文,它会在生成的代码里出现。

 

2、下载,代码生成,这里的选择所用的单片机。

将解压的代码包放在arduino的libraries原因是arduino无法下载机智云的有关库,所以需要我们手动放置在arduino的库里面,否则编译将会报错。这里的libraries文件夹不要放错了,可以看看libraries文件夹是否有其他的库来检查是否放错。

 

 

 3、代码合成。使用Arduino IDE打开这两个机智云生成的文件。

 这里我将networkConfig的部分代码复制至simpleTry.ino中。

 红框为复制部分

 

 

 

绿色部分为我自己加的(根据自己的情况),蓝色为复制。将mySerial.begin(115200)改为Serial.begin(9600),因为我在连接esp8266时发现控制不了arduino上的led,改为Serial.begin(9600)就好了,可能是波特率过大导致的。

 改为下图:

 

这里的wifiStatusHandle(),需要将与print有关的都需要注释,这里我保留了一个,来查看WiFi连接状况,即如果WiFi正常连接,就点亮led1。

 

 ***********************该部分是功能实现的重点***********************************

1) 黄框源代码原本是注释掉的,我们这里去掉注释。它大概的意思是判断EVENT_PWM这个事件是否发生,如果发生了我就读取varR_PWM的数值上传至机智云平台。

2)蓝色为我自己所加的控制代码,将varR_PWM这个变量传入analogWrite函数来,实现PWM脉冲波的调节。

3)红色为复制部分,调用机智云定义的函数。按键函数用不到,不过我还是把它复制了,直接在app那里一键配置。

4、esp8266烧录固件和配置

 去机智云平台下载Gagent_Debugger调试软件,输入下图的key和密码

 

 选择MCU,串口、波特率。

 正常的话,esp8266上的指示灯会闪烁,界面应该出现RX、TX。如果只有TX或RX是不正常的,需要拔掉usb线,重新打开串口。(注意调试时,arduino不要与esp8266连接)

 连接手机连接WiFi,一键配置也需要连接相同的WiFi。如果以上步骤没出现,请重复。

 连接后,ESP8266与arduino的TX、RX相互接线实现命令传输,arduino的vcc、GND对应esp8266接线(给esp8266供电)。

调试效果:+

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/452773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

go破冰之旅·5·常量、变量、数据类型

成体系的、快速学通Go,就在此时,持续连载! 上一篇: https://lan6193.blog.csdn.net/article/details/123454411https://lan6193.blog.csdn.net/article/details/123454411上文熟悉了Go的基础符号、基础规则,本文我们…

前端项目代码规范

一、变量与函数的命名(变量名和函数名是最好的注释) 通常情况下函数小陀峰、类名大陀峰、变量短横线/小陀峰、const全大写单词要表达出正确的语义,如:array类型或其它集合类型用英语复数格式、其它类型不要用复数格式区分函数为功…

async/await 在 C# 语言中是如何工作的?(下)

接《async/await 在 C# 语言中是如何工作的?(上)》、《async/await 在 C# 语言中是如何工作的?(中)》,今天我们继续介绍 SynchronizationContext 和 ConfigureAwait。 ▌SynchronizationContext…

【SVN已解决】修改svn服务端地址为ip或者域名地址的方法

介绍 这里是小编成长之路的历程,也是小编的学习之路。希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。 一个人为什么要努力&a…

Vue之指令详解与自定义指令

指令 想要了解自定义指令,那肯定得先明白什么是指令。 指令的本质:语法糖,标志位。在编译阶段 render 函数里,会把指令编译成 JavaScript 代码。 常见的Vue内置指令有: v-on 即 。v-on:click”function“&#xff…

Node【Express框架【二】】

文章目录 🌟前言🌟中间件🌟中间件函数🌟什么是中间件函数🌟中间件函数可以做什么 🌟Express中间件的类型🌟应用级中间件🌟路由器级中间件🌟错误处理中间件🌟内…

人为惨案之kube-controller-manager 不断重启根因溯源

文章目录 背景问题发现排查CSI provision排查kube-controller-manager查看controller log紧急恢复求助chatgpt 背景 2023年4月21日10:38:07,在集群中测试RBAC的时候,在kuboard的界面神出鬼没的删除了几个clusterRole。练习一个CKA的练习题目. Create a…

如何实现计算机上的文件共享

文件共享 第一步:设置无线热点第二步:设置本地用户权限第三步:设置共享文件夹第四步:打开自己的移动热点,并且让对方连接自己的热点第五步:让对方的电脑进行连接自己共享的文件 第一步:设置无线…

React-Redux详解

React-Redux详解 前言 React-Redux是一个用于在React应用中管理状态的第三方库。它是基于Redux架构的,提供了一种在React应用中高效管理状态的方式。React-Redux通过将Redux的核心概念和React组件相结合,使得在React应用中使用Redux变得更加简单和方便。…

从WebGL到Babylonjs

从WebGL到Babylonjs 一、关于WebGL 前世今生 OpenGL > OpenGL ES > WebGL本质:通过js代码去调用OpenGL的一系列Api 二、WebGL程序的构成 1、一个简单的webgl程序 const canvas document.querySelector(canvas); const gl canvas.getContext(webgl2); c…

llama.cpp一种在本地CPU上部署的量化模型(超低配推理llama)

0x00 背景 前不久,Meta前脚发布完开源大语言模型LLaMA, 随后就被网友“泄漏”,直接放了一个磁力链接下载链接。 然而那些手头没有顶级显卡的朋友们,就只能看看而已了 但是 Georgi Gerganov 开源了一个项目llama.cpp ggergano…

HBase高可用

一、HBase高可用简介 HBase集群如果只有一个master,一旦master出现故障,将导致整个集群无法使用,所以在实际的生产环境中,需要搭建HBase的高可用,也就是让HMaster高可用,也就是需要再选择一个或多个节点也…

【C语言】那些 “虾仁猪心“ 的坑题

本章介绍 最近翻笔记,整理了下那些日子里面掉过的坑题,说多都是泪!!也许是自己的储备知识不足,才造成的大坑,今天把题拿出来给大家溜溜,看大家做时候有没有踩坑! 文章目录 1:第一题2…

项目笔记-瑞吉外卖

文章目录 1.业务开发day011.软件开发整体介绍2.项目整体介绍:star:3.开发环境搭建4.登录功能:star4.1代码实现 5.退出功能6.页面效果出现 1.业务开发 day01 1.软件开发整体介绍 2.项目整体介绍⭐️ 后端:管理菜品和员工信息前台:通过手机端…

根据cadence设计图学习硬件知识 day03 了解 一些芯片 和 数据手册下载的地方

1. MT53D512M32D2DS 芯片(动态随机存取存储器)的技术指标 1.1 16n Prefetch (预加载) (n --芯片位宽) DDR 体系 链接:DDR扫盲—-关于Prefetch(预取)与Burst(突发)的深入讨论_ddr prefetch_qq_25814297-npl的博客-CSDN博客 1.2 每个通…

网络层重点协议之【IP协议】

0. IP地址组成 IP地址分为两个部分,网络号和主机号 网络号:标识网段,保证相互连接的两个网段具有不同的标识主机号:标识主机,同一网段内,主机之间具有相同的网络号,但是必须有不同的主机号 一…

浅谈: 计算机—JVM—线程

计算机存储模型(CPU、寄存器、高速缓存、内存、外存) 现代计算机系统CPU和内存之间其实是有一个cache的层级结构的。比内存速度更快的存储介质(SRAM),普通内存一般是DRAM,这种读写速度更快的介质充当CPU和内存之间的Cache,这就是缓存。当CPU…

医学图像分割之TransUNet

目录 一、背景 二、提出问题 三、解决问题 四、网络结构详解 CNN部分(ResNet50的前三层) transformer部分 U-Net的decoder部分 五、模型性能 开头处先说明下TransUNet的地位:它是第一个将transformer用于U型结构的网络。 一、背景 医…

【Java|golang】1105. 填充书架---动态规划

给定一个数组 books ,其中 books[i] [thicknessi, heighti] 表示第 i 本书的厚度和高度。你也会得到一个整数 shelfWidth 。 按顺序 将这些书摆放到总宽度为 shelfWidth 的书架上。 先选几本书放在书架上(它们的厚度之和小于等于书架的宽度 shelfWidt…

PCL点云库(1) — 简介与数据类型

目录 1.1 简介 1.2 PCL安装 1.2.1 安装方法 1.2.2 测试程序 1.3 PCL数据类型 1.4 PCL中自定义point类型 1.4.1 增加自定义point的步骤 1.4.2 完整代码 1.1 简介 来源:PCL(点云库)_百度百科 PCL(Point Cloud Library&…