![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Arduino
内蒙肥羊
这个作者很懒,什么都没留下…
展开
-
esp8266各引脚使用时,对上拉下拉的限制,用错了会无法启动
8266gpio的使用模式原创 2024-04-29 15:45:05 · 257 阅读 · 0 评论 -
arduino 对多个led实现不同频率的呼吸灯
常见的呼吸灯代码例程,在调节亮度的时候,都是用的delay,那么对于多个led,要实现不同频率的呼吸,就要用多个delay,相互之间会干扰频率的计算,所以,我试验了一下c++的面向对象方式,创建一个led类,再创建几个led对象,对象之间不会相互干扰。源代码如下,led接在3、5端口。class LedClass{ public: int pin; void on(void); void off(void); void flash(void); unsig原创 2021-11-28 10:02:10 · 3649 阅读 · 10 评论 -
dfplayer mini 播放模块校验码的计算
产品说明如下:链接根据官方说明,可以用串口发送命令来控制模块的工作,串口指令需要两位的校验码,琢磨好久,都算不对,后来发现是文档标识错误。按图片所写,即可算出校验码。原创 2021-09-09 10:05:49 · 589 阅读 · 0 评论 -
arduino中time.h的使用方法
变量类型首先,在TimeLib.h中,定义了typedef unsigned long time_t;time_t 的取值范围0~4294967295。主要函数int hour(); // the hour now int hour(time_t t); // the hour for the given timeint hourFormat12(); // the hour now in 12 hour formatint .原创 2021-09-06 16:17:41 · 5131 阅读 · 0 评论 -
使用esp8266的webserver,网页控制ws2812的颜色变化、呼吸效果
手机效果#include <ESP8266WiFi.h>#include <ESP8266WebServer.h>#include <Adafruit_NeoPixel.h>#define PIN 4 //ws2812的控制脚#define NUMPIXELS 7 //ws2812的灯珠数量,后面要通过循环遍历#define ssid "ESP8266"//名称#define pssd "123456789"//密码#defin原创 2021-03-23 16:15:26 · 1493 阅读 · 6 评论 -
旋转编码器不使用中断实现加减
旋转编码器外观上看起来很像电位器,在一些数码设备上经常遇到,比如汽车音响的旋钮。它的功能相当于三个按键,加、减、按压,按压和普通微动开关没区别,加和减相当于两个微动开关,优于微动开关的是,你可以迅速旋转很多角度,相当于连续按压很多次微动开关,效率很高。比如要调节一个参数,范围值是100,如果是用微动开关,需要按100次,当然也可以设置成长按开关快速变化,但是也比较麻烦。用旋钮就可以快速调整参数变化了。常用的旋转编码器ec11如下:这种编码器一共有五个针脚,两个是按压的微动开关使用,和其他功能毫无关系。剩原创 2021-01-21 20:06:13 · 1434 阅读 · 0 评论 -
arduino 串口输出16进制数据的方法
折腾了一个上午,终于弄清楚了serial.write 和serial.print的区别,前者是机器之间传输数据使用,后者是给人观看的,所以传输的是字符。unsigned char testcode[236] = {0XFD,0XFD,0X30,0X3,... Serial.write(testcode,236);...原创 2020-08-09 11:09:10 · 13649 阅读 · 1 评论 -
esp32 使用Adafruit_SSD1331.h驱动1331 oled
esp32 使用Adafruit_SSD1331.h驱动1331 oledAdafruit_SSD1331.h、Adafruit_GFX.h源文件里列出了所有的函数,要实现基本的文字显示,需要先定义Adafruit_SSD1331 oled = Adafruit_SSD1331( OLED_pin_cs_ss, OLED_pin_dc_rs, OLED_pin_sda_mosi, OLED_pin_scl_sck, OLED_pin_res_rst );原创 2020-07-20 10:44:50 · 876 阅读 · 0 评论 -
arduino 列出sd卡文件名遇到的大坑--中文文件名
sd卡上临时放了一个文件,文件名包含中文,结果用Arduino遍历文件名的时候总是出错,不能完整的列出所有文件,又从SD.h折腾到sdfat.h,还是不行,最终发现卡上不知什么时候放了这么个文件,改名后终于运行正常。这真的是一个大坑,我可以接受乱码,可以接受文件名变短,但是你不能遇到这个文件就终止,导致后面的文件都无法遍历啊!!!核心代码如下:int i=0;while (1) { File logFile = root.openNextFile(); if (!logFile) {原创 2020-07-11 15:28:27 · 1278 阅读 · 0 评论 -
nodeMCU esp8266连接128*64OLED屏幕
代码很简单,用u8g2自带的例程即可,屏幕是I2C的,选择对应的参数,针脚我定义到了D5和D6。屏幕一共四个端子,其中2个是电源,scl接D5,sda接D6。#include <Arduino.h>#include <U8g2lib.h>#include <Wire.h>U8G2_SSD1306_128X64_NONAME_1_SW_I2C u8g2(U8G2_R0, /* clock=*/ D5, /* data=*/ D6, /* reset=*/ U8原创 2020-07-04 15:33:21 · 1924 阅读 · 0 评论 -
nodeMCU使用旋转编码器
旋转编码器从外观上来看很接近旋转电位器,但是旋转编码器没有终点,随便转多少圈。我是淘宝上随便买了一个,一共5个端子,其中2个是电源,1个是按压开关,按下的状态为LOW,剩余两个端子是比较时序使用的。网上找来的例程是给arduino uno使用的,移植到nodeMCU上需要略做改动。一、重新定义接入针脚,两个测时序的端子分别接D1和D2,按钮端子接D0二、重新绑定中断attachInterrupt(4, updateEncoder, CHANGE),当电平改变时触发中断三、ICACHE_RAM_AT原创 2020-07-04 14:52:21 · 826 阅读 · 0 评论 -
零知开发板连接sd、tf卡模块,针脚定义 spi总线的连接方式
零知开发板的例程也是有点坑,代码里面没有写明接线方式。找到开发板的针脚定义,按如下方式接线:SCK 13MISO 12MOSI 11CS 10上传例程代码,成功。原创 2020-07-02 16:55:38 · 775 阅读 · 1 评论 -
nodeMcu esp8266连接sd、tf卡模块,修改针脚定义 spi总线的连接方式
esp8266的自带的例程相当的不走心,里面的针脚是这样写的:** MOSI - pin 11** MISO - pin 12** CLK - pin 13** CS - pin 4这个定义是完全照抄arduino,并不适合esp8266。根据针脚定义图可以看到,esp8266的spi总线是D5,D6,D7(针脚对应的右边绿色方框),cs是选取设备的时候通电,所以cs针脚可以随便选择,但是例程里面用的是SD.begin(4),也就是gpio4,对应的是D2,如果不想修改例程,那就把cs线插到D2原创 2020-07-02 14:49:22 · 6716 阅读 · 8 评论 -
nodeMcu esp8266上手初体验,搭建arduino环境,烧录闪灯程序
搭建arduino环境,烧录闪灯程序说起来也是很简单,但是前前后后折腾了好几个小时,主要还是因为网络不给力。1、打开arduino ide2、首选项–附加开发板管理器网址,粘贴http://arduino.esp8266.com/stable/package_esp8266com_index.json3、工具–开发板–开发板管理4、找到esp8266,选择最高的版本,开始自动下载5、由于vpn不太给力,这段下载来来回回折腾很久很久。6、自动更新完毕后,插入开发板,选中端口,再问问卖家应该选哪个规原创 2020-06-29 10:24:42 · 1029 阅读 · 0 评论 -
Arduino 制作gps轨迹记录仪 最详细的制作过程、代码
现售的专业记录轨迹的设备有很多,从几百元到几千元不等,智能手机也可以记录轨迹,自己做轨迹记录仪的好处在哪里呢?1、智能手机的待机时间是痛点,如果设置不当,自动管理后台应用的程序会让地图软件休眠,导致熄屏的时候没有记录数据。自制设备开机即记录。2、现售的设备存储空间不是很理想,且操作需要主机菜单点击,存储路点不方便。自制设备一键记录路点。3、买来的东西没有自己做的东西好玩。设想的功能:1、没有屏幕,不显示时间等信息,调试的时候可以使用屏幕,最后成品打包的时候,拿掉屏幕。2、tf卡读卡器,取数据的时原创 2020-06-20 11:55:38 · 3602 阅读 · 3 评论 -
Arduino中的字符串基本操作
Arduino中的字符串基本操作字符串与数值的转换数值转字符串插入链接与图片如何插入一段漂亮的代码片字符串与数值的转换数值转字符串c#代码int i=10;string s=i.ToString();Arduino代码char s[5];int i=10;itoa(i,s,20);引用文本插入链接与图片链接: link.图片: 带尺寸的图片: 居中的图片: ...原创 2019-05-22 20:54:36 · 12108 阅读 · 0 评论 -
arduino中String的用法全解
string是c语言中自带的变量类型,等同于char[]。String是需要使用扩展库实现的变量类型,可以相对方便的操作。String stringOne = "Hello String"; // using a constant StringString stringOne = String('a'); //...原创 2019-06-29 19:32:37 · 18665 阅读 · 5 评论