C#与.NET技术
实践与教程

专注分享C#、ASP.NET Core、Azure、Blazor等微软技术栈的开发教程、架构设计和最佳实践

85
技术文章
42
教程系列
2.8k
月访问量
328
活跃读者
Arduino-Ide安装第三方库
嵌入式
2021-01-21 0k

Arduino-Ide安装第三方库

用温湿度传感器DHT11/DHT22库DHT为例 方法一 【项目】 –》 【加载库】 –》【管理库】 安装 弹出窗口后,搜索、安装即可 查看示例代码 安装之后, 【文件】 –》【示例】 ,就可以查看库带的示例代码,大多数库都有,这个示例代码是很好的教程。 方法二 直接下载库第三方库,下载的库放在库文件夹即可。通过 【文件】 –> 【首选项】 –> 【项目文件夹位置】 查看库文件夹位置

Arduino 库安装 第三方库
阅读更多
CP2102版和CH340版两种NodeMcu的区别和HW-628有什么不同
2021-01-21 0k

CP2102版和CH340版两种NodeMcu的区别和HW-628有什么不同

NodeMcu 常见的有两个版本,一般用通讯模块区分 CP2102版 : NodeMcu V1.0 ,作者是amica CH340版 : NodeMcu v3,作者是Lolin v3不是V1.0的升级版,可能是两个分支。 区别: 1、外观上v3比V1.0 大一些。 2、CP2102版 A0附近两个RSV引脚,在CH340版上是GND和VU(可以输出5v电压)。 3、usb供电时v1.0版vin引脚可以5V电压输出,v3版vin引脚没有5V输出,v3版5v电压输出在VU引脚上。 看网上有说ch340版在烧写时需按flash -> reset。我在操作的时候,没按也是可以烧写的,烧写后也正常工作。 新款 除了上面两款常见版本外,发现某宝上有一款“新款NodeMcu”挺多的,看上面标有 HW-628字样,暂且称他是HW-628。 有额外32M flash,价格很划算。 在引脚、外观尺寸上完全兼容NodeMcu V1.0 (CP2102)版,有人说信号弱一些,我简单测了一下,不影响使用。而且vin引脚也可以5v电压输出,也就是说,除了外观长的不一样,应该可以替代cp2012版NodeMcu。 下面是三款的合影: 引脚原理图: 注意事项 1、NodeMcu的IIC(I2C)管脚是GOIO04和GPIO05,就是上面丝印的D1和D2。

esp8266 NodeMcu CH340
阅读更多
DHT11温湿度传感器 - Arduino开发ESP8266(NodeMcu)学习记录
嵌入式
2021-01-18 0k

DHT11温湿度传感器 - Arduino开发ESP8266(NodeMcu)学习记录

所需硬件 ESP8266 开发板(NodeMcu) x1 DHT11温湿度传感器 x1 面包板 x1 杜邦线 若干 第三方库 DHT 可以直接安装 项目–>加载库–>管理库–> 搜索"DHT"安装 或者手动下载 下载地址:https://github.com/adafruit/DHT-sensor-library 线路图 实物图 代码 /** 作者: Raikay (raikay.cn) 时间: 2021/01/18 说明: ESP8266接收DHT11温湿度传感器数据 NodeMcu DHT11 3V3 - 正极 D5 - out GND - 负极 **/ #include <DHT.h>#define DHTPIN 14 //GPIO14 即NodeMcu D5 #define DHTTYPE DHT11 // 定义你DHT11 DHT dht(DHTPIN, DHTTYPE); //读取DHT的温度值 String readDHTTemperature() { float t = dht.readTemperature(); if (isnan(t)) { Serial.println("Failed to read from DHT sensor!

esp8266 Arduino NodeMcu
阅读更多
发射红外信号控制美的空调 - Arduino开发ESP8266(NodeMcu)学习记录
嵌入式
2021-01-17 0k

发射红外信号控制美的空调 - Arduino开发ESP8266(NodeMcu)学习记录

所需硬件 ESP8266 开发板(NodeMcu) x1 红外信号发射管Led x1 按键开关 x2 面包板 x1 杜邦线 若干 第三方库 IRremoteESP8266 下载地址:https://github.com/crankyoldgit/IRremoteESP8266 线路图 红外发射管 长的是正极,短的是负极。 实物图 按D3按键关闭空调,按D4开启空调 代码 红外信号原数据是从美的空调遥控器接收的 /** 作者: Raikay (raikay.cn) 时间: 2021/01/17 说明: 红外发射管控制美的空调 NodeMcu 红外发射管 GND - 负极 D2 - 正极 **/ #include <Arduino.h>#include <IRremoteESP8266.h>#include <IRsend.h> const uint16_t kIrLed = 4; // NodeMcu D2 const uint16_t On1 = 0; // d3 const uint16_t On2 = 2; // d4 IRsend irsend(kIrLed); // Set the GPIO to be used to sending the message.

esp8266 Arduino NodeMcu
阅读更多
接收红外信号VS1838B - Arduino开发ESP8266(NodeMcu)学习记录
嵌入式
2021-01-17 0k

接收红外信号VS1838B - Arduino开发ESP8266(NodeMcu)学习记录

所需硬件 VS1838B 红外接收头 ESP8266 开发板 (NodeMcu) 红外信号遥控器 杜邦线 x3 第三方库 IRremoteESP8266 下载地址:https://github.com/crankyoldgit/IRremoteESP8266 红外接收头图片 线路图 实物图 代码 /** 作者: Raikay (raikay.cn) 时间: 2021/01/17 说明: NodeMcu使用红外接收头接收红外信号 NodeMcu - VS1838B 3v3 - VCC GND - GND D5 - OUT **/ #include <Arduino.h>#include <IRrecv.h>#include <IRremoteESP8266.h>#include <IRac.h>//#include <IRtext.h> #include <IRutils.h> // 定义接收信号的引脚GPIO14,即NodeMcu的D5 const uint16_t kRecvPin = 14; // (接收引脚,接收信号大小,超时时间) IRrecv irrecv(kRecvPin, 1024, 50, true); // 存储结果 decode_results results; void setup() { Serial.begin(115200); #if DECODE_HASH // 过滤未知信号值 irrecv.

esp8266 Arduino NodeMcu
阅读更多
控制继电器 - Arduino开发ESP8266(NodeMcu)学习记录
嵌入式
2021-01-16 0k

控制继电器 - Arduino开发ESP8266(NodeMcu)学习记录

示例代码: 通过D5引脚(GPIO14输出高低电平)控制继电器开合 /** 作者: Raikay (raikay.cn) 时间: 2021/01/16 说明: 控制继电器 NodeMcu - 继电器 VU - VCC D5 - OUT GND - GND **/ //定义引脚GPIO14,即Nodemcu D5引脚 int relay = 14; void setup() { //设置引脚输出 pinMode(relay, OUTPUT); } void loop() { //程序灯带1秒(1000毫秒) delay(1000); //设置高电平 digitalWrite(relay, LOW); delay(1000); //设置低电平 digitalWrite(relay, HIGH); } 继电器 线路图 继电器是5v供电,NodeMcu两个版本输出5v的引脚不同。 CP2102版 :Vin引脚输出5v CH340版:VU引脚输出5v 也可以单独5v电源供电。 下图是CH340版 实物图 效果视频

esp8266 Arduino NodeMcu
阅读更多
git命令备忘系列(八) - 使用技巧集合
2021-01-15 0k

git命令备忘系列(八) - 使用技巧集合

一、Git彻底删除一次提交 这样删除之后,在历史记录中也查不到 git rebase --onto SHA^ SHA SHA是错误的提交。 例如,删除cbe8527这次提交: git rebase --onto cbe8527^ cbe8527 这条记录就从历史记录中消失了 二、git stash 工作状态保存 解决方案1 将当前工作状态保存 git stash save "保存说明" 恢复保存内容 git stash pop 如果有冲突, pop恢复时会失败,需要处理冲突 查看当前所有stash #查看命令 $ git stash list #结果如下: stash@{0}: On stu_git_1: bug8 stash@{1}: On stu_git_1: bug3 stash@{2}: On stu_git_1: bug2 stash@{3}: On stu_git_1: bug1 恢复指定stash,恢复之后不删除stash $ git stash apply stash@{1} 恢复指定stash,恢复冰删除stash $ git stash pop stash@{1} 三、git cherry-pick用法 重演commit 场景: 如果应用已经发布了一个版本2.

git git技巧 git stash
阅读更多
串口调试 - Arduino开发ESP8266(NodeMcu)学习记录
嵌入式
2021-01-15 0k

串口调试 - Arduino开发ESP8266(NodeMcu)学习记录

示例代码: void setup() { //初始化串口设置 Serial.begin(9600); } void loop() { //获取程序开始运行的毫秒数 long time = millis(); //输出调试日志 Serial.println(time); } 选择开发板 选择端口 这个端口 一般可能是 3、5、6根据设备和电脑环境不同有所区别,可以到电脑的设备管理器查看一下 (我机器插了两个板子,所以是下面这种情况,一般只会是COM3或COM5一个) 上传代码 查看串口调试窗口 【工具】–> 【串口调试】 说一下这个9600波特率,和代码上的一致就可以一般是9600、115200 我也可能会用esp8266系列的其他开发板,其实所有esp8266的板子代码是通用(比如 Wemos D1 R1、Wemos D1 R3 Uno、D1 mini、Wifiduino、ESPduino、WiFinfo),只要对照一下引脚图稍微改动一下差异的引脚就可以。

esp8266 Arduino NodeMcu
阅读更多
快速开始- Arduino开发ESP8266(NodeMcu)学习记录
嵌入式
2021-01-14 0k

快速开始- Arduino开发ESP8266(NodeMcu)学习记录

环境安装 下载Arduino-IDE 官网:https://www.arduino.cc/ 下载地址:https://www.arduino.cc/en/software 下载时不是一定要付费,选择JUST DOWNLOAD 免费下载 解压后双击EXE就可以打开了 安装驱动 驱动下载地址:https://gitee.com/raikay/elefiles/tree/main/tools/驱动 下载ESP8266库 文件–>首选项 把这个网址填到 【附加开发版管理器】 http://arduino.esp8266.com/stable/package_esp8266com_index.json 工具–> 开发板–>开发板管理器 如果没有梯子下载可能会非常慢,可以用下面的直接安装工具 工具下载地址:https://gitee.com/raikay/elefiles/tree/main/开发板/esp8266 点亮LED 新建项目 代码 //定义引脚GPIO14,即Nodemcu D5引脚 int led = 14; void setup() { //设置led引脚输出 pinMode(led, OUTPUT); } void loop() { //程序等待1秒(1000毫秒) delay(1000); //设置led引脚高电平 digitalWrite(led, LOW); delay(1000); //设置led引脚低电平 digitalWrite(led, HIGH); } 线路图 实物图 选择开发板 选择端口 这个端口 一般可能是 3、5、6根据设备和电脑环境不同有所区别,可以到电脑的设备管理器查看一下 (我机器插了两个板子,所以是下面这种情况,一般只会是COM3或COM5一个) 上传代码 运行效果 我也可能会用esp8266系列的其他开发板,其实所有esp8266的板子代码是通用(比如 Wemos D1 R1、Wemos D1 R3 Uno、D1 mini、Wifiduino、ESPduino、WiFinfo),只要对照一下引脚图稍微改动一下差异的引脚就可以。

esp8266 Arduino NodeMcu
阅读更多
git命令备忘系列(七) - 标签操作(tag)
2021-01-13 0k

git命令备忘系列(七) - 标签操作(tag)

对于某些提交,我们可以为它打上Tag,表示这次提交很重要, 比如为一些正式发布大版本的 commit,打上TAG,当某个版本出问题了,通过TAG可以快速找到此次提交对应的Hash值, 直接切换到此次版本的代码去查找问题,比起一个个commit找省事多了。 git tag #列出git中现有的所有标签 git tag -r #查看远程标签 git tag [name] #创建标签 git tag -d [name] #删除本地标签 git push origin [name] # 推送标签到远程仓库 git push origin --tags # 删除所有本地仓库中不存在的标签 git push origin --delete tag [name] #删除远程标签 在 git 中有两种最主要的标签–轻量级标签(lightweight)和带注释的标签(annotated)。轻量级标签跟分枝一样,不会改变。它就是针对某个特定提交的指针。然而,带注释的标签是git仓库中的对象。它是一组校验和,包含标签名、email、日期,标签信息,GPG签名和验证。一般情况下,建议创建带注释的标签,这样就会保留这些信息,但是如果你只是需要临时性标签或者某些原因你不想在标签中附带上面说的这些信息,lightweight标签更合适些。 带注释的标签 在git中创建带注释的标签非常简单,在运行’tag’命令时加上-a就可以了。 # 提交 $ git tag -a v1.4 -m ‘version 1.4′ #查看 $ git tag v0.1 v1.3 v1.4 ‘-m’指明标签信息,跟标签一起存储。如果你不使用-m指明标签信息,git会自动启动文本编辑器让你输入。 可以使用 git show 命令查看相应标签的版本信息,并连同显示打标签时的提交对象。 $ git show v1.4

git git tag 标签管理
阅读更多