ESP8266Arduino编程实例74HC595位移寄存驱动
ESP8266-Arduino编程实例-74HC595位移寄存驱动74HC595位移寄存驱动1、74HC595介绍74HC595 是一款高速 CMOS 器件。
74HCT595 是一个 8 位串行输入/串行或并行输出移位寄存器,带有一个存储寄存器和三态输出。移位寄存器和存储寄存器都有独立的时钟。该器件具有串行输入 (DS) 和串行输出 (Q7S) 以启用级联和异步复位
M
R
‾
\overline {MR}
MR 输入。
M
R
‾
\overline {MR}
MR 上的低电平将重置移位寄存器。数据在 SHCP 输入的低到高转换时移动。移位寄存器中的数据在 STCP 输入从低到高转换时传输到存储寄存器。如果两个时钟连接在一起,移位寄存器总是比存储寄存器快一个时钟脉冲。只要输出使能输入 (
O
E
‾
\overline {OE}
OE) 为低电平,存储寄存器中的数据就会出现在输出端。
O
E
‾
\overline {OE}
OE 上的高电平导致输出呈现高阻抗关断状态。
O
...
ESP8266Arduino编程实例MCP3008ADC转换器驱动
ESP8266-Arduino编程实例-MCP3008-ADC转换器驱动MCP3008-ADC转换器驱动1、MCP3008介绍MCP3008 10 位模数转换器 (ADC) 在小型封装中结合了高性能和低功耗,非常适合嵌入式控制应用。 MCP3008 具有逐次逼近寄存器 (SAR) 架构和行业标准 SPI 串行接口,允许将 10 位 ADC 功能添加到任何 PIC® 微控制器。 MCP3008 具有 200k 样本/秒、8 个输入通道、低功耗(典型待机 5nA,典型活动 425µA),并采用 16 引脚 PDIP 和 SOIC 封装。 MCP3008 的应用包括数据采集、仪器仪表和测量、多通道数据记录器、工业 PC、电机控制、机器人、工业自动化、智能传感器、便携式仪器仪表和家用医疗设备。
MCP3008的引脚说明如下
引脚编号
引脚名称
描述
1,2,3,4,5,6,7,8
模拟输入通道
8 个输入引脚,提供要测量的模拟电压
9
数字地
连接到电路的地线
10
片选/关断(CS`/SHDN)
此引脚连接到 GPIO 引脚或 ...
ESP8266Arduino编程实例BH1750FVI环境光传感器驱动
ESP8266-Arduino编程实例-BH1750FVI环境光传感器驱动BH1750FVI环境光传感器驱动1、BH1750FVI介绍BH1750FVI 是一款用于 I2C 总线接口的数字环境光传感器 IC。 该IC最适合获取调整手机LCD和Keypad背光功率的环境光数据。 可以在高分辨率下检测宽范围。
BH1750FVI有如下主要特性:
I2C总线接口(f/s模式支持)
光谱责任近似于人眼反应
照度数字转换器
宽范围和高分辨率。 ( 1 - 65535 lx )
通过断电功能实现低电流
50Hz / 60Hz 光噪声抑制功能
1.8V 逻辑输入接口
无需任何外部零件
光源依赖性小。 (例如白炽灯、荧光灯、卤素灯、白光 LED、太阳灯)
可以选择 2 种 I2C 从机地址。
光学窗口影响的可调测量结果(使用此功能可以检测最小 0.11 lx,最大 100000 lx。)
小的测量变化 (+/- 20%)
红外线的影响很小。
BH1750FVI的功能框图如下:
2、硬件准备
ESP8266 NodeMCU开发板一块
BH1750FVI模块一个
面 ...
ESP8266Arduino编程实例LED点阵驱动基于Max7219
ESP8266-Arduino编程实例-LED点阵驱动(基于Max7219)LED点阵驱动(基于Max7219)1、Max7219介绍MAX7219/MAX7221是紧凑型串行输入/输出共阴极显示驱动器,可将微处理器(µPs)连接到多达8位的7段数字LED显示器、条形图显示器或64个独立LED。片上包括一个 BCD 代码 B 解码器、多路扫描电路、段和数字驱动器,以及存储每个数字的 8×8 静态 RAM。只需一个外部电阻器即可设置所有 LED 的分段电流。 MAX7221 与 SPI™、QSPI™ 和 MICROWIRE™ 兼容,并具有限摆率的段驱动器以降低 EMI。
在前面的文章中,对MAX7219及LED的驱动做了详细的介绍,请参考:
Arduino与Proteus仿真实例-MAX7219级联驱动多个8x8LED点阵仿真
Arduino与Proteus仿真实例-MAX7219单个8x8LED点阵驱动仿真
Arduino与Proteus仿真实例-MAX7219驱动8位7段数码管仿真
8051单片机Proteus仿真与开发实例-MAX7219驱动8位7段数码管 ...
ESP8266Arduino编程实例MCP4725数模转换器驱动
ESP8266-Arduino编程实例-MCP4725数模转换器驱动MCP4725数模转换器驱动1、MCP4725介绍MCP4725 是一款单通道、12 位、电压输出数模转换器,具有集成 EEPROM 和 I2C 兼容串行接口。MCP4725有如下特性:
12 位分辨率
板载非易失性存储器 (EEPROM)
±0.2 LSB DNL(典型值)
外部 A0 地址引脚
正常或掉电模式
6µs(典型值)的快速建立时间
外部参考电压 (VDD)
满摆幅(Rail-to-Rail)输出
低功耗
单电源操作:2.7V 至 5.5V
I2CTM 接口:
八个可用地址
标准 (100 kbps)、快速 (400 kbps) 和高速 (3.4 Mbps) 模式
小型 6 引脚 SOT-23 封装
扩展温度范围:-40°C 至 +125°C
因为这是一个 12 位 DAC 转换器。 这意味着它将接受多达 4096 个可能的输入以提供模拟输出,其中零输出值为零,输出值 4095 为满量程。满量程由提供给 VCC 引脚的参考电压决定。 还可以从上面看到,电源电压可以在 2.7 伏到 5.5 伏之间。 ...
ESP8266Arduino编程实例APDS9930环境光和趋近感器驱动
ESP8266-Arduino编程实例-APDS-9930环境光和趋近感器驱动APDS-9930环境光和趋近感器驱动1、APDS-9930介绍APDS-9930 在单个 8 引脚封装中提供数字环境光感应 (ALS)、IR LED 和完整的接近检测系统。 接近功能提供 100 毫米的即插即用检测(无前玻璃),因此无需对终端设备或子组件进行工厂校准。 接近检测功能从明亮的阳光到黑暗的房间都能很好地工作。 宽动态范围还允许在手机等深色玻璃后面进行短距离检测。
此外,内部状态机能够在 ALS 和接近测量之间将设备置于低功耗模式,从而提供非常低的平均功耗。 ALS 在非常低的光照条件下或在深色面板后面提供对光强度的明视响应。
APDS-9930具有如下特点:
环境光感应 (ALS)
近似人眼反应
具有上限和下限阈值的可编程中断功能
高达 16 位分辨率
高灵敏度在深色玻璃后面操作
0.01 勒克斯的低勒克斯性能
2、硬件准备
ESP8266 NodeMCU开发板一块
APDS-9930模块一个
面板板一个
杜邦线若干
数据线一条
硬件接线如下:
3、软件准备
Arduino IDE或 ...
ESP8266Arduino编程实例MQ3酒精传感器驱动
ESP8266-Arduino编程实例-MQ3酒精传感器驱动MQ3酒精传感器驱动1、MQ3介绍MQ3 气体传感器模块可用于气体泄漏检测(在家庭和工业中)。 适用于检测酒精、苯、CH4、己烷、液化石油气、一氧化碳。由于灵敏度高、响应时间快,可以尽快进行测量。
2、硬件准备
ESP8266 NodeMCU开发板一块
MQ-3传感器模块一个
面板板一个
杜邦线若干
数据线一条
硬件接线如下:
3、软件准备
Arduino IDE或VSCode + PlatformIO
在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:
ESP8266-Arduino编程实例-开发环境搭建(基于Arduino IDE)
ESP8266-Arduino编程实例-开发环境搭建(基于PlatformIO)
ESP8266 NodeMCU的引脚介绍在前面的文章中做了详细的介绍,请参考:
ESP8266-Arduino编程实例-认识ESP8266
4、代码实现MQ-3气体传感器的驱动非常简单,主要通过A0引脚,采集传感器输出的数据即可。
123456789101112131415 ...
ESP8266Arduino编程实例TSL2561亮度传感器驱动
ESP8266-Arduino编程实例-TSL2561亮度传感器驱动TSL2561亮度传感器驱动1、TSL2561介绍TSL2560 和 TSL2561 是第二代环境光传感器器件。每个都包含两个集成模数转换器 (ADC),用于集成来自两个光电二极管的电流。两个通道的整合同时发生。转换周期完成后,转换结果分别传送到通道 0 和通道 1 数据寄存器。传输是双缓冲的,以确保保持数据的完整性。传输后,设备自动开始下一个集成周期。与设备的通信是通过标准的两线 SMBus 或 I2C 串行总线完成的。
因此,TSL256x 器件可以轻松连接到微控制器或嵌入式控制器。信号调节不需要外部电路,因此也节省了 PCB 空间。由于 TSL256x 器件的输出是数字的,因此与模拟信号相比,输出有效地不受噪声影响。
TSL256x 器件还支持中断功能,无需轮询传感器以获取光强度值,从而简化和提高系统效率。中断功能的主要目的是检测光强度的有意义的变化。用户可以根据光强度和时间或强度变化的持续性来定义有意义的变化的概念。 TSL256x 器件能够定义高于和低于当前光照水平的阈值。当转换值超过这些限制中的任何一个 ...
ESP8266Arduino编程实例TM1637驱动4位7段数码管
ESP8266-Arduino编程实例-TM1637-驱动4位7段数码管TM1637-驱动4位7段数码管1、TM1637介绍TM1637是一款带键盘扫描接口的LED(发光二极管显示器)驱动控制专用电路,内部集成了MCU数字接口、数据锁存、LED高压驱动、键盘扫描等功能。 TM1637使用DIP20/SOP20封装,主要适用于电磁炉、微波炉、小家电的显示驱动。
TM1637有如下特性:
显示方式(8段*6位)支持共阳极LED输出。
键盘扫描(8×2bit),带增强识别电路,带抗干扰按键
亮度调节电路(可调8个占空比)
两线串行接口(CLK、DIO)
振荡类型:内置RC振荡器
内置上电复位电路
内置自动消隐电路
在前面的文章对TM1637做了详细的介绍,请参考:
ESP32-IDF开发实例-传感器模块编程-TM1637数码管
Arduino与Proteus仿真实例-TM1637驱动4位7段数码管仿真
STM32F1与STM32CubeIDE编程实例-TM1637驱动4位7段数码管
2、硬件准备
ESP8266 NodeMCU开发板一块
TM1637 4位7段LED模块 ...
ESP8266Arduino编程实例金属触摸传感器驱动
ESP8266-Arduino编程实例-金属触摸传感器驱动金属触摸传感器驱动1、金属触摸传感器介绍KY-036金属触摸传感器模块采用KRS13达林顿NPN晶体管,其信号由电路部分控制,电路部分集成LM393,内部有两个比较器。 当触摸弯曲在晶体管上的裸线(由晶体管的基极表示)时,环境的 50 Hz 信号被注入到高增益放大器中。放大器的输出连接到比较器,然后将正弦交流信号转换为方波。
本文将演示如何在STM32CubeIDE中使用金属触摸传感器。本次使用的传感器模块,当有触摸时,输出高电平。
2、硬件准备
ESP8266 NodeMCU开发板一块
KY-06金属触摸传感器模块一个
面板板一个
杜邦线若干
数据线一条
硬件接线如下:
序号
传感器引脚
ESP8266开发板
1
AO
模拟输出– A0
2
G
GND
3
+
3v3
4
DO
数字引脚 – D0
3、软件准备
Arduino IDE或VSCode + PlatformIO
在前面的文章中,对如何搭建ESP8266开发环境做了详细的介绍,请参考:
ESP8266-Arduino编程实例- ...
