关于ESP8266-NodeMCU和onenet通信传输学习总结(二)

关于ESP8266-NodeMCU和onenet通信传输学习总结(二)

1.更新了一些功能和代码优化和注释

​ 添加了电机的网络控制(后续将用于门锁控制和窗帘控制),过程有点坎坷,本想用一块ESP8266-NodeMCU实现整体功能,结果发现这块板控制电机的同时不能干别的事,多线程也是伪多线程。不好用,便计划用两块开发板,一块负责通信连接和数据传输,另一块用来做下面的硬件控制,结果是可行的,且很容易实现,但不甘于资源的浪费,又想方设法放在一块开发板上实现,最终应该算是成功了,但似乎电机很热发烫,还待优化。ps:arduino官方的电机库放我这就直接跑飞了很奇怪,若有同样问题的博友希望留下经验分享。

这里电机用的是28BYJ-48,这里可能有人吐槽为什么不用42电机,原因在于我只有这个,还是从同学那收破烂来的。。。

说了这么多,不如直接看代码(代码规范有点辣鸡,希望不影响阅读):

/**
 * author: topthemaster
 * time: 2021.1.10
 * 
 */
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#include "AccelStepper.h"
#include <Ticker.h>
#include <ArduinoJson.h>
#define PRODUCT_ID    "396066" //产品名
#define API_KEY    "tx6WM==zmW21Z2pt4susBRlHMuY="//产品密钥
#define DEVICE_ID "666259032"//设备名
#define TOPIC     "ceshitopic1"//订阅主题
WiFiClient wifiClient;
Ticker ticker;
Ticker ticker2;
int count=0;//ticker1控制 数据上传下发的间隔时间(s)
int count2=0;//ticker2控制 电机转动的时间(s)
AccelStepper stepper1(4, D0, D2, D1, D3);//电机引脚
String door ="close";//默认检测门关闭
PubSubClient mqttClient(wifiClient);
const char* ssid = "Fishing WiFi ";//wifi名
const char* password = "zheshiyigewifi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值