自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Firmin123456的博客

Firmin123456的博客

  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 ESP32重要库示例详解(四):获取NTP时间之time库

本文介绍了如何使用Arduino的Time库和WiFi库实现精确时间管理与NTP同步。通过一个示例项目,展示了如何配置WiFi连接、设置NTP服务器参数,以及获取和显示本地时间。在项目中,设备连接到指定的WiFi网络后,使用configTime()函数同步阿里云NTP服务器的时间。主循环中,每秒更新并打印一次时间。这个方法适用于需要时间同步的物联网应用,如智能设备或自动控制系统,提高了项目的准确性和实用性。

2024-05-14 17:10:53 1532

原创 ESP32重要库示例详解(三):按键之avdweb_Switch库

avdweb_Switch库简化了Arduino中处理按钮和开关的事件。在Arduino IDE或PlatformIO中安装库后,将按钮、切换开关和蜂鸣器连接到相应引脚。库支持事件驱动,如按下、释放、长按、双击等,内置防抖功能,提供灵活的回调函数。示例代码展示了如何创建Switch对象并处理各种事件。该库适用于智能家居、教育、游戏和艺术装置等场景,简化了交互设计。

2024-05-14 00:30:29 1235

原创 ESP32重要库示例详解(二):定时器之Ticker/TickTwo库

在Arduino开发中,定时器用于按特定间隔执行任务,本文讲解如何使用Ticker库管理多个定时器。在Arduino IDE中,ESP32自带Ticker位于特定路径,而自装版本可能引发冲突。解决方法包括删除自带Ticker或使用TickTwo库。PlatformIO IDE的Ticker位置不同,但不存在名称冲突问题。示例代码创建五个Ticker对象,展示了如何调整间隔时间和处理冲突

2024-05-13 16:31:42 1090

原创 ESP32重要库示例详解(一):EEPROM之Preferences库

ESP32的EEPROM模拟功能利用闪存空间,方便地模拟传统EEPROM,提供安全、高效的存储方案。需要注意的是,EEPROM 具有一定的擦写寿命限制,在使用时需合理规划以避免过度擦写导致的寿命问题。当将前面的代码烧录到ESP32后,你会发现无论你断电,还是重新烧录上述代码,counter的值都会一起累加。库,我们可以方便地进行数据的读写。集成在芯片内部:作为 ESP32 微控制器的一部分,使用较为方便,无需额外的硬件。再重新烧录前面的重启次数统计的代码,counter的内容就会重新从零开始。

2024-05-11 19:07:07 1763

原创 ESP32引脚入门指南(七):从理论到实践(IIC)

本文介绍了ESP32的IIC总线特性,包括主机与从机模式、多功能引脚、通信速率和从机寻址。通过IIC,ESP32可与外围设备如传感器和OLED屏幕进行通信。示例代码展示了如何使用Arduino IDE和Adafruit_SSD1306库驱动SSD1306 OLED屏幕,实现文本显示,同时提醒注意引脚配置、设备地址和硬件连接。

2024-05-11 12:42:03 2679

原创 ESP32引脚入门指南(六):从理论到实践(UART)

UART 是一种全双工通信协议,允许数据同时在两个方向上传输。在ESP32中,UART0引脚连接到USB到串行转换器,用于烧录和调试。因此,不建议使用UART0引脚作其它用途。TX (发送):通常使用GPIO1(UART0_TXD)或GPIO3(UART0_TXD备用)RX (接收):通常使用GPIO3(UART0_RXD)或GPIO1(UART0_RXD备用)ESP32开发板上,UART1引脚是为集成闪存芯片保留的。TX (发送):GPIO9(UART1_TXD)

2024-05-10 18:32:53 2303

原创 ESP32引脚入门指南(五):从理论到实践(SPI)

ESP32 微控制器提供HSPI和VSPI两个独立SPI接口,用于高速串行通信。这两个接口不是SPI的不同形式,而是具有不同默认引脚的SPI主机接口。HSPI和VSPI的性能主要取决于配置参数、硬件设计和从设备能力,而非接口名称。使用时,注意选择无冲突的引脚,保持主从设备时序一致,以及正确管理片选信号。这两个接口为并行通信提供了灵活性,选择哪个取决于硬件布局和应用需求。

2024-05-10 17:00:44 3027

原创 ESP32引脚入门指南(四):从理论到实践(PWM)

ESP32作为多功能微控制器,其内置的LEDC模块支持16个可配置PWM通道,适用于LED调光、电机控制等。本文指南通过Arduino示例,详细介绍如何在ESP32的GPIO 32上实施PWM控制,调整LED亮度。内容涵盖硬件准备、软件设置、代码解析及注意事项,特别强调了限流电阻的计算与选择,确保安全高效的应用实现。掌握ESP32的PWM功能,将极大拓展你的物联网项目设计能力。

2024-05-10 14:09:16 4116

原创 ESP32引脚入门指南(三):从理论到实践(Touch Pin)

ESP32集成了多达10个(或更多,依据具体型号)可配置的Touch引脚(如下图),能够感知轻微的电容变化,从而实现非机械式的触摸控制。这些引脚可以配置为检测触摸事件,非常适合于构建低功耗、无按键的用户界面。ESP32的Touch Pin功能为开发者提供了强大的触控接口,简化了人机交互设计。通过本文的指引,你已掌握基本的触控实现方法。下一步,不妨将此技术应用于创意项目中,如智能家居控制面板、交互式艺术装置等,让设备更加智能化、人性化。

2024-05-09 23:38:00 1055

原创 ESP32引脚入门指南(二):从理论到实践(DAC)

探索ESP32的DAC功能:ESP32微控制器集成两个12位DAC通道,常用于模拟电压输出。在Arduino IDE中轻松实现,只需定义DAC引脚(如#define DAC_PIN 25),初始化串口,然后在loop()函数中利用dacWrite()逐步输出0至3.3V电压。注意电压精度受限于8位分辨率,实际应用中可能需考虑负载效应和噪声抑制。动手实践,从理论走进ESP32 DAC的奇妙世界,提升项目控制灵活性。分享你的发现,加入开发者社群,共促进步。

2024-05-09 23:16:22 1450

原创 基于FreeRTOS的ESP32环境监测系统:利用Arduino框架实现SD卡数据记录与FTP服务器集成(二)---记录文件管理

在我的上篇文章中我把所有的温湿度数据都写到一份CSV文件中,这种会造成该文件越来越大,给系统读写带来压力,还会有一次读写错误后,整份纪录丢失的风险。因此,我将记录文件根据尺寸大小进行拆分。

2024-04-28 15:41:14 924

原创 基于FreeRTOS的ESP32环境监测系统:利用Arduino框架实现SD卡数据记录与FTP服务器集成(一)

ESP32项目基于Arduino,集成FreeRTOS实现实时任务调度。创建多个任务(如环境监测、CSV记录写入与读取)并设置优先级,确保高效并发处理。采用互斥锁保护SD卡、环境数据等共享资源,防止数据竞态。利用定时器触发周期性环境数据采集。结合FreeRTOS任务管理与Arduino编程便利性,构建稳定、高效的环境监测系统,实现数据实时采集、存储、远程访问与本地显示。

2024-04-26 23:23:03 1156

原创 ESP32环境下基于SD卡与FTP实现温湿度数据采集与存储

本篇文章将介绍如何利用ESP32开发板结合SD卡与FTP服务器功能,实现温湿度数据的实时采集、存储与远程访问。

2024-04-24 12:57:08 1056

原创 ESP32与SD卡交互实现:文件读写实战与初始化详解及引脚定义

本代码实现ESP32与SD卡的交互,包括定义SPI引脚、创建自定义SPI类实例、编写WriteFile与ReadFile函数进行文件读写。setup函数初始化串口、SPI、SD卡,向“/test.txt”写入“myfirstmessage”,读取并打印其内容。loop函数留空待扩展。

2024-04-22 16:54:17 3717

原创 ESP32引脚入门指南(一):从理论到实践(ADC)---用ESP32的ADC引脚,结合分压电路测量电压

该代码基于ESP32(Arduino库)实现ADC(模拟数字转换器)数据采集。它配置ADC参数、获取校准特性,循环采样并计算平均值,将ADC读数转换为电压,考虑分压电阻影响,计算实际电压值,最后通过串口定期输出测量结果。

2024-04-19 00:32:44 2078

原创 在Arduino给自己的SSD1306 OLED显示定制Logo或者图片

我在使用Arduino上的SSD1306显示屏时,基本都用使用Adafruit的SSD1306库,但是Adafruit的开机logo实在没特色(如下图),如果在开机时,让自己的项目上显示自己的定制logo,甚至是照片(如果你自认为很帅),有点小酷吧。通过阅读本文件,你将能自己设计简易Logo,并在你的OLED屏上显示出来。

2024-01-31 16:36:47 2120

原创 Ubuntu apt update提示:GPG 缺少公钥解决方法

提示:GPG 缺少公钥以及404 Not Found,如下面所示,有mirror.bwbot.org 和ppa.launchpadcontent.net两个源出现问题。无意间在“软件和更新”里的“其它软件”的选项卡里发现了这两个源的地址。我试过之后依然无法解决我的问题。好多网友用后面的方法解决。将其去掉勾选, 重启.

2024-01-25 00:23:01 1509

原创 树莓派,mediapipe,Picamera2利用舵机云台追踪人手(PID控制)

当人手移动时,摄像头通过控制两个伺服电机(分别是偏航和俯仰)把大拇指指尖放到视界的中心位置,本文采用了PID控制伺服电机。

2023-12-25 23:35:28 1226

原创 树莓派安装mediapipe方法

MediaPipe 解决方案可跨多个平台使用。每个解决方案都包含一个或多个模型,您也可以为某些解决方案自定义模型。以下列表显示了每个受支持平台可用的解决方案以及您是否可以使用 Model Maker 来自定义模型:现在在树莓派上安装mediapipe, python可以支持几乎全部解决方案。

2023-12-24 18:28:56 2376 4

原创 树莓派,opencv,Picamera2利用舵机云台追踪人脸(PID控制)

当人脸移动时,摄像头通过控制两个伺服电机(分别是偏航和俯仰)把该人脸放到视界的中心位置,本文采用了PID控制伺服电机。

2023-12-22 00:44:32 2738 2

原创 树莓派,opencv,Picamera2利用舵机云台追踪特定颜色对象(PID控制)

当物体移动时,摄像头通过PID控制两个伺服电机(分别是偏航和俯仰)把该物体放到视界的中心位置,在这里追踪的是一支黄色的铅笔。

2023-12-21 16:41:42 1064

原创 树莓派,opencv,Picamera2利用舵机云台追踪人脸

当人脸移动时,摄像头通过控制两个伺服电机(分别是偏航和俯仰)把该人脸放到视界的中心位置。(备注:没有采用PID控制伺服电机)

2023-12-11 15:43:50 1224

原创 树莓派,opencv,Picamera2利用舵机云台追踪特定颜色对象

当物体移动时,摄像头通过控制两个伺服电机(分别是偏航和俯仰)把该物体放到视界的中心位置,我在这里追踪的是一支红色的铅笔。

2023-12-08 17:01:13 1698

原创 用numpy和PIL生成马赛克

其实生成马赛克的方法有很多种,最简单的方法是用Opencv来生成,用Opencv生成马赛克的方法会在文末列出,只有几行代码。以下是实现的代码,重要的位置用中文注释。

2023-03-23 18:52:46 316

原创 Picamera2初体验(四):延时摄影

通过使用Picamera2的set_controls()设置帧率,和capture_request()方法保存图像,来实现延时摄影的效果,具体细节见下面的代码和注释

2023-02-27 17:05:20 803

原创 Picamera2初体验(三):视频叠加时间戳文本

图像内容如下,可以通过调整cv2.putText内的参数灵活设置文字内容。通过导入OpenCV,将时间戳叠加到图像上,并保存图像。

2023-02-27 15:51:09 533

原创 Picamera2初体验(二):使用摄像头拍摄照片和视频

正如我们在上面看到的,Picamera2 具有一些高级且非常方便的功能,可用于拍照和录制视频。使用 Picamera2 时,安装其他包通常很有用。为了方便起见,我们在这里列出一些常见的。

2023-02-27 11:27:08 3048

原创 Picamera2初体验(一):简介

Picamera2 是一个 Python 库,可以方便地访问树莓派的相机系统。它适用于使用专用的扁平线直接连接到树莓派CSI连接器上的相机

2023-02-27 11:26:06 2476 3

原创 树莓派系统快速压缩备份

树莓派系统快速压缩备份,仔细阅读,特别是用U盘备份的

2023-02-17 00:31:17 605 1

原创 ubuntu 20.04/22.04下,两个显示屏设置不同缩放比例

ubuntu 20.04/22.04下,两个显示屏设置不同缩放比例

2022-10-23 00:16:32 6202 6

原创 Windows里配置WSL2、ROS2、VScode

Windows里配置WSL2、ROS2、VScode,实现用Windows下的VSCode对WSL2里Ubuntn系统中的ROS2开发

2022-10-22 20:03:24 1214

原创 VSCode Python自定义代码自动补全

VSCode Python如何自定义补全内容

2022-08-19 16:41:20 8442

原创 用手机通过蓝牙控制Processing中的坦克移动

通过App Inventor2开发一款手机控制程序,点击这个手机程序上的按键后,通过蓝牙发送命令给连接到Arduino的蓝牙模块,Arduino再将接收到的命令通过串口发送给Processing,来实现对Processing里的一个小坦克的运动控制。...

2022-06-17 19:17:06 767

原创 Arduino与Processing串口通信(split函数)

把Arduino产生的随机坐标,通过串口发送给processing,然后画出对应点

2022-06-05 11:56:56 978

原创 Arduino与Processing串口通信(match函数)

把Arduino产生的随机数通过串口发送给processing用来改变背景灰度和正方形颜色

2022-06-05 10:09:44 630

原创 platformio如何向Arduino开发板发送文本

解决VS code里platformio IDE向开发板发送文本的问题

2022-06-02 17:41:25 397 1

原创 TensorFlow 2 Object Detection API学习笔记

训练结束后,重新开始训练时,把model文件夹里的最后一个checkpoint ckpt和index文件放到pre-trained-models文件夹里,并把原model文件夹时的相应的两个文件删除configure文件里的总步数设置 total_steps: 25000,如果测试结果(精度和召回率)不理想可以重新开始一轮训练。常用命令:训练python model_main_tf2.py --model_dir=models/my_ssd_resnet50_v1_fpn --p..

2022-03-18 21:08:59 1599 1

原创 TensorFlow 2 Object Detection API 环境搭建与测试(Windows)

参照博主dy_guox的帖子:原文地址搭建环境,但是原贴是原博主一年多之前所写,我的搭建过程中有一些弯路。把更新的搭建过程记录下来。因为我的旧电脑是win7系统,无法安装最新版的cuda,因此选择和原博主一样的版本,版本虽然旧但不影响学习。系统配置Software versionsOSWindows, LinuxPython3.8TensorFlow2.2.0CUDA Toolkit10.1CuDNN7.6.5Anaconda Navi

2022-03-03 22:17:59 1810 4

原创 穷举法求最小公倍数

#暴力方法求最小公倍数i=int(input("请输入第一个整数:\n"))j=int(input("请输入第二个整数:\n"))product=i*j #求两个数的乘积commonMultiple=[] #创建公倍数列表for num in range(1,(product+1)):#暴力求出从1到乘积product的所有公倍数 if num%i==0: if num%j==0: commonMultiple.append(num)print(commonM

2021-10-23 19:06:40 1200

原创 Python求素数

#求10到1001之间的素数,from math import *for i in range(10,1001): flag=1 #旗标变量 for j in range(2,int(sqrt(i))+1): if i%j==0: flag=0 break if flag==1: print(i)

2021-10-23 18:15:56 648

App inventor2通过蓝牙控制Arduino Uno LED开关

本人文章:https://blog.csdn.net/idfengming/article/details/116379850 配套内容, 包括aia源文件和apk文件

2023-02-23

蓝牙控制App inventor2源文件

基于App inventor2的蓝牙控制源文件,可以发送“F”,“B”,“L”,“R”和“S”给蓝牙模块,分别代表让坦克向前,向后,向左,向右和停止的命令,为配合我的文章《用手机通过蓝牙控制Processing中的坦克移动》的AIA文件

2022-06-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除