硬件工程开发学习笔记
文章平均质量分 57
稚子
保持热爱,奔赴山海。
展开
-
硬件串口通信协议学习(UART、IIC、SPI、CAN)
UART是通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)的缩写,它是一种常见的串口通信接口。使用差分信号可以抑制共模噪声,可以极大的提高信号的抗干扰特性,所以一般差分信号的传输速度和传输距离都非常高。TX与RX要交叉连接当只需单向的数据传输时,可以只接一根通信线当电平标准不一致时,需要加电平转换芯片TTL电平:+3.3V或+5V表示1,0V表示0RS232电平:-3~-15V表示1,+3~+15V表示0。原创 2023-08-04 17:26:24 · 3351 阅读 · 0 评论 -
Arduino 太阳能MPPT控制器设计参考
原文参考链接:https://www.instructables.com/ARDUINO-SOLAR-CHARGE-CONTROLLER-Version-30/翻译 2023-02-19 22:43:52 · 4051 阅读 · 0 评论 -
Arduino按钮使用
Arduino内部有一个拉高的电阻,为20K,这样使用按钮时,就不需要外接上拉电阻了,然后按钮设置为按下为低。原创 2023-02-18 12:07:23 · 2256 阅读 · 0 评论 -
3D打印切片软件Cura入门
安装好之后,添加一台打印机,参数可以随便设置。Cura安装包:链接:https://pan.baidu.com/s/1T1MBcZYBCVfhtFKDBjypmQ?pwd=2022提取码:2022。原创 2022-12-11 21:11:12 · 3424 阅读 · 0 评论 -
电源防反接电路设计(重要)
在实际应用中,G极一般串联一个电阻,防止MOS管被击穿,也可以加上稳压二极管,并联在分压电阻上的电容,有一个软启动的作用。在电流开始流过的瞬间,电容充电,G极的电压逐步建立起来。对于PMOS,相比NOMS导通需要Vgs大于阈值电压,由于其开启电压可以为0,DS之间的压差不大,比NMOS更具有优势。原创 2022-11-21 10:39:47 · 9144 阅读 · 2 评论 -
12V铅酸电池充放电保护板
CN3768是PWM降压模式12V铅酸电池充电管理集成电路,具有涓流,恒流,过充和浮充电模式,非常适合12V铅酸电池的充电。在过充和浮充电模式,充电电压典型值分别为14.8V和13.55V;在恒流充电模式,充电电流通过一个外部电阻设置。①如果电池电压低于所设置的过充电压的75%,CN3768用所设置的恒流充电电流的17.5%对电池进行涓流充电。在过充电阶段,充电电流逐渐减小。②当充电电流降低到恒流充电电流的38%时,CN3768进入浮充电状态。③。原创 2022-11-21 10:24:48 · 5091 阅读 · 0 评论 -
ESP32的BLE使用学习
BLE之所以被称为低功耗蓝牙,就是需要通讯的时候才握手,数据传输完成后,就断开连接。在通讯过程中,主动方是客户端,由客户端发起连接请求、收发数据、断开连接等操作;服务器是被动的一方,随时做好了被连接的准备,并对连接请求作出相应。如果需要不断发送控制和接收数据的指令,则在控制端APP中设计中,需要加入定时器。BLE低功耗蓝牙,主要应用于少量数据的短距离传输(低带宽)。与经典蓝牙不同,BLE只在传输数据时建立连接,空闲时进入睡眠模式来节能。这使得它消耗非常低的功率,原创 2022-11-19 16:03:52 · 4998 阅读 · 2 评论 -
ESP32的AP模式使用
/设置LED引脚//设置AP热点名称//设置AP热点密码//设置AP的IP地址//设置Web端口号//开启web服务, 创建TCP SERVER,参数: 端口号,最大连接数//配置为AP模式//设置AP热点IP和子网掩码。原创 2022-11-18 15:03:08 · 4775 阅读 · 1 评论 -
Arduino读取传感器数据存进Excel中
需要的工具PLX-DAQ,其是一个带有宏定义的Excel表,通过适当的配置可以从Arduino直接读取并保存数据,功能十分的强大。可能遇到的问题无法运行,原因EXCEL中宏被禁用了解决方法1.单击Excel左上角“Office”图标,弹出菜单,单击“Excel选项”跳转至操作页面;2.“Excel选项”操作页面,选择“信任中心”,然后点击“信任中心设置”;3.“宏设置”选项下,点选“启用VBN宏(不推荐;.........原创 2022-07-19 16:39:25 · 4290 阅读 · 6 评论 -
millis()和MsTimer2库的使用方法
使用这两个函数主要是为了多任务处理,可是在ESP8266使用MsTimer2库时会出错。使用MsTimer2库函数做多件任务2 millis()使用方法经典例程:使用millis()函数控制Arduino开发板内置LED的点亮和熄灭。同时做两件事,例程...原创 2022-07-09 19:20:35 · 1061 阅读 · 1 评论 -
PlatformIO中的PlatformIO.ini配置
1. 调整监控串口的波特率2. 监视器端口设置3. 程序下载波特率设置4. 下载默认端口5. 新建项目建议添加的内容原创 2022-07-09 18:41:46 · 3016 阅读 · 0 评论 -
MPPT电源控制器设计
实物效果图Blinker显示主控芯片ESP-12F。原创 2022-07-18 20:57:41 · 1091 阅读 · 0 评论 -
ESP8266、ESP32引脚图
esp8266引脚说明图原创 2022-07-04 18:31:37 · 4135 阅读 · 0 评论 -
ESP自动下载电路设计
一、方法1二、方法二 三、也可以选择使用N沟道的MOS管代替三极管四、3.7V锂电池充电管理电路具体参数看数据手册进行修改,电源管理芯片TP4059原创 2022-06-27 09:47:39 · 376 阅读 · 0 评论 -
四足仿生机器狗设计
主控芯片:海思 Hi3861LV100传智教育Hi3861 IoT WiFi 模组是一款基于海思Hi3861LV100 芯片的系统级封装模组,可提供完整的Wi-Fi IoT 开发功能。该模组的外观尺寸仅为20 mm×18 mm×2.54 mm, 模组已将晶振、滤波电容、WiFi 天线等外围器件集成封装,只需要3.3V 供电即可正常工作。使用传智教育Hi3861 IoT WiFi 模组可以大大提升开发和管控效率,降低供应链的复杂程度。模组可以广泛应用于,智能家电、智能门锁、低功耗Camera、穿戴设备原创 2022-06-18 09:07:16 · 3369 阅读 · 0 评论 -
OLED屏显示电池电量设计
1.介绍:使用0.96寸OLED显示电池电量2.实物效果:3.程序:#include <Arduino.h>#include <U8g2lib.h>U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/14, /* data=*/2, /* reset=*/U8X8_PIN_NONE);void setup(){ pinMode(A0, INPUT); u8g2.begin()原创 2022-03-14 15:09:24 · 3565 阅读 · 2 评论 -
ESP8266使用INA226
INA在工作中进行两次测量:分流电压和总线电压,然后根据校准寄存器值将这些测量值转换为电流,计算功率。INA226是一款高精度的电流和电压监测器,它可以测量VBUS和VIN之间的电压差(Vsense)。VIN+和VIN-引脚是用来测量分流电阻两端的电压的,它们之间的电压差不能超过。INA226有一个报警限值寄存器(07h),允许对报警引脚进行编程,VBUS引脚是用来测量总线电压的,可以接到。,因为这样可以消除分流电阻两端的共模干扰。原创 2022-03-18 17:14:25 · 6077 阅读 · 13 评论 -
platformio添加外部库文件方法
方法1在这里搜索所需要的库函数进行添加到工程里方法2(常用)1.准备好所需要的库文件2.打开工程文件夹通过以上3步即可把库文件正常导入原创 2022-04-01 21:39:57 · 9130 阅读 · 1 评论 -
小爱同学接入Blinker
小爱同学控制开关灯原创 2022-04-01 14:41:59 · 352 阅读 · 0 评论 -
利用PROGMEM将数据写到闪存
参考作者:http://t.csdn.cn/xtQU4AVR存储器简介:AVR系列单片机内部有三种类型的被独立编址的存储器,他们分别为:1.Flash程序存储器(即程序存储空间、闪存)2.SRAM数据存储器3.EEPROM数据存储器单片机采用哈佛结构,将程序存储器和数据存储器分开。数据存储器RAM通常比较小,而程序存储器FLASH空间比较大,因此就需要将占用空间较大的不需要改变的数据放到Flash中。常用于:利用单片机显示图片,动画时,由于取模后的数据量比较大,放在RAM中会造成编译错误,只能放在FLASH原创 2022-06-02 09:24:32 · 450 阅读 · 2 评论 -
使用ESP8266驱动TFT显示屏
(1)TFT驱动库:TFT_eSPI原创 2022-06-01 11:48:35 · 11234 阅读 · 4 评论 -
三极管和MOS管的使用及区别
1.三极管单片机IO口输出高电平时,三极管导通单片机IO口输出低电平时,三极管截止(1)三极管是电流控制型元件三极管的BE之间可以理解为存在一个二极管的通路,当给B加高电平时,BE之间就会产生持续的电流,维持三极管打开的条件就是BE之间存在持续的电流,所有三极管称之为电流控制型元件。(2)MOS管是电压控制型元件电阻R的大小会随着GS间的电压变化而变化对于MOS管来说,GS之间不存在通路,他们之间仅仅存在一个寄生电容。当给G施加高电平时,除了一开始给电容充电的..原创 2022-05-31 09:50:04 · 3955 阅读 · 0 评论 -
冒泡排序法获取传感器最佳读数
前言主要思路:定义一个数组存储传感器读取到的值,然后去掉最小值和最大值,然后中间部分的数据取平均。//比较数组中当前数值和下一个数值的大小//如果当前值大,则交换位置for (int otter = 0; otter < size-1; ++otter) { for(int inner = 0;inner < size -1 -otter; ++inner){ if(array[inner] > array[inner + 1]) { int te原创 2022-05-27 21:49:52 · 167 阅读 · 0 评论 -
Git和Gitee的使用方法
目录1.在git官网下载git1.在git官网下载githttps://git-scm.com/2.gitee使用(1)配置公钥原创 2022-04-23 10:49:15 · 324 阅读 · 0 评论 -
IIC通信协议学习
1.IIC简介IIC:Inter-Integrated Circuit(内部集成电路)需要两个管脚:SDA、SCLSPI协议:一个主设备对多个从设备,每增加一个从设备,需要增加一个端口CS*特点:速度较快,1~100MIIC协议:可以多对多,速度分类:100K 400K 3.4M 5M,传输速度没有SPI快,所以在利用显示屏显示数据时常用SPI通讯协议来提高刷新率。(TFT用SPI,LCD OLED使用IIC协议就可以满足需求。)IIC使用时需要在SDA SCL上...原创 2022-04-22 08:15:51 · 1658 阅读 · 0 评论