Arduino指纹锁踩坑记
本文记录了arduino制作指纹锁时遇到的舵机问题、串口问题、继电器问题、接线问题以及具体解决方法 目录前言踩到的坑硬件方面软件方面前言相信很多电子爱好者刚开始都想搞一些电子开发板之类的东西。开发板平台有很多:STM32系列,ESP系...
2024-01-10计算Arduino中的操作时间
通常,您需要测量微控制器执行特定任务所需的时间。您可以使用millis()Arduino的功能来测量时间。此函数返回自您的电路板开始运行当前程序以来经过的毫秒数。因此,要计算操作所花费的时间,您可以millis()在操作前后调用,并取两个值的差值。下面给出了一个示例实现 -示例void setup() { // 把你...
2024-01-10在 Arduino 中添加延迟
为了在 Arduino 中添加时间延迟,您可以使用该delay()功能。它将以毫秒为单位的延迟值作为参数。下面给出了一个示例执行 -示例void setup() { // 把你的设置代码放在这里,运行一次: Serial.begin(9600);}void loop() { // 把你的主要代码放在这里,重复运行: Serial.print("Hello!"); delay(2000);...
2024-01-10Arduino - 处理串行通信
我需要从arduino板上获取串行信号进入处理草图。我发送像“R12”“S40”“T80”这样的字符串格式的值,当我从处理中捕获那些字符串时会垂直打印(每个字符都有新行),谁能告诉我如何将它作为字符串我们发送。我需要一个可以放入处理的serialEvent方法的代码。Arduino - 处理串行通信的Arduino代码:vo...
2024-01-10命令行Arduino编译和上传?
如何在Mac和Linux上从命令行编译和上传Arduino草图?我已经安装了Arduino编程环境。哪里有一些示例makefile?回答:从1.5.0开始,通过标志直接支持在arduino可执行文件上直接在命令行(在Windows,Mac和Linux上)编译和上传草图(与C / C++源代码有关)。一个ino可以被编译和上传 arduino --upload [sketch.ino]文献资...
2024-01-10Arduino 中的看门狗定时器
看门狗定时器是任何微控制器的重要组成部分。如果程序卡在任何地方,它会重置程序。非常简单,这就是看门狗定时器的工作原理 -计时器不断增加。程序必须确保它不断重置定时器,即不允许它溢出。如果计时器溢出,则意味着程序卡在某处,因此无法重置计时器。定时器溢出时产生中断,复位微...
2024-01-10基于arduino的气象站
bmp180的简介:• 压力范围:300~1100hPa(海拔 9000 米~-500 米)• 电源电压:1.8V~3.6V(VDDA), 1.62V~3.6V(VDDD)• 尺寸:3.6mmx3.8x0.93mm• 低功耗:5μA,在标准模式• 高精度:低功耗模式下,分辨率为 0.06hPa(0.5 米)• 高线性模式下,分辨率为 0.03hPa(0.25 米)• 含温度输出• I2C 接口• 温度补...
2024-01-10Arduino Uno 中的计时器
如前所述,Arduino Uno 有 3 个定时器:Timer0、Timer1 和 Timer2。Timer0 和 Timer2 是 8 位计数器(从 0 到 255 计数),而 Timer1 是一个 16 位计数器(从 0 到 65535 计数)。在内部,Timer0 用于该millis()功能,因此,建议不要乱用它。您可以使用Timer1和Timer2来满足您的自定义要求。请注意,Arduino Uno 的时钟频率为 16 MHz...
2024-01-10在 Arduino 中启用和禁用中断
如果您希望禁用中断(在执行某些关键代码时,尤其是应该在给定时间段内完成的代码时),您可以在该noInterrupts()函数的帮助下做到这一点。一旦您的关键代码执行完毕并且您希望重新启用中断,您可以使用interrupts()函数来做到这一点。请注意,Arduino 中默认启用中断,因此interrupts()无需初始调用即...
2024-01-10如何用Arduino清除EEPROM?
Arduino Uno 具有 1 kB 的 EEPROM 存储空间。EEPROM 是一种非易失性存储器,即掉电后其内容仍会保留。因此,它可用于存储您希望跨电源循环保持不变的数据。配置或设置是此类数据的示例。在本文中,我们将了解如何清除 EEPROM,即,将其所有字节设置为 0。我们将通过 Arduino 中的内置示例进行演示。可以从...
2024-01-10Arduino 中的 AVR 库——介绍
AVR 库由Atmel开发。您可能知道大多数 Arduino 板中使用的微控制器是 Atmel 微控制器(ATmega328P、ATmega2560 等)。一些特定操作(睡眠、时间等)的 AVR 库已经存在,因此,如果我们能够在 Arduino 中导入 AVR 库,我们可能会受益匪浅。好消息是我们可以!根据 Arduino 的网站,“AVR 库具有极大扩展 Arduino 语言的...
2024-01-10的Arduino PROGMEM字节数组
考虑这个片段中,与Arduino的IDE编译:的Arduino PROGMEM字节数组PROGMEM char charSet[] = { 0x0, 0x8, 0x4, 0xc, 0x2, 0xA , 0x6, 0xE, 0x1, 0x9,0x5, 0xD, 0x3,0xB,0x7,0xF }; char reversed[] = { 0x0, 0x8, 0x4, 0xc, 0x2, 0xA , 0x6, 0xE, 0x1, 0x9,0x5, 0xD, 0x3,0xB,0x7,0xF }; char f...
2024-01-10维护Arduino与Java程序之间的通信
我在学校得到一个项目,该项目由可通过WiFi控制的遥控车组成。它可以正常工作几秒钟,但随后它会停止连接并尝试重新连接。问题是,如果我制造的汽车依赖于这种不稳定的连接,可能会导致事故。本身或一个人。也许我做错了什么?我的问题是,我如何始终保持该连接处于活动状态?到目前为止...
2024-01-10Arduino和8051微控制器之间的区别
使用微处理器的产品通常分为两大类。第一类属于高性能微处理器,例如在系统性能至关重要的应用中的奔腾。在第二类中,性能是次要的,此类微处理器通常称为微控制器。微控制器只不过是一个带有大多数必要支持芯片的计算机。8051 是一种广泛使用的微控制器,它从设备获取输入它通过向设备中的不同组件发送信号来控制和控制设备。它就像一个像处理器一样工作的单元,可以解决现实世界的问题。Arduino是一个开源开发板...
2024-02-27了解 Arduino Uno 中的内存类型
Arduino Uno 或任何其他与此相关的微控制器,通常具有 3 种类型的内存 -闪存(Flash)这是存储 Arduino 草图的地方。使用 PROGMEM 或F()宏定义的任何变量也存储在此处。请注意,默认情况下此类变量是不可变的,即它们的值不能在运行时更改。闪存是非易失性的(即,即使断电,存储的内容也不会丢失)访问速...
2024-01-10WiFi 与 Arduino – 扫描网络
为了将 WiFi 与 Arduino Uno 或任何其他开发板一起使用,您可能需要一个 WiFi 扩展板(除非您使用的是具有内置 WiFi 功能的开发板,例如 Arduino Uno WiFi)。WiFi 扩展板与任何其他扩展板一样,堆叠在您的板上,并提供对扩展板本身上 Arduino 引脚的访问。您可以在此处阅读有关 WiFi 屏蔽的更多信息 -https://www.ar...
2024-01-10Arduino 数据类型转换(单机片)详细介绍
Arduino 数据类型转换 如何轻松玩转Arduino单片机,当我在进行数据转换的时候,遇到了问题,尝试了C语言和C++中的好多函数,都没有达到将float型数据转换为char型的目的。苦苦查阅资料后,终于找到了一个大神级函数!!!dtostrf(),可以轻松实现数据类型from float to char . ...
2024-01-10如何从Arduino中的EEPROM读取数据?
Arduino Uno 具有 1 kB 的 EEPROM 存储空间。EEPROM 是一种非易失性存储器,即掉电后其内容仍会保留。因此,它可用于存储您希望跨电源循环保持不变的数据。配置或设置是此类数据的示例。示例在这个例子中,我们将看到如何从 EEPROM 中读取数据。我们将介绍 Arduino 中的一个内置示例。可以从 -文件 → 示例...
2024-01-10Elegoo和Arduino的比较,哪个更适合你
如果您曾经购买过 Arduino 板,您可能见过带有更便宜入门套件的 Elegoo 板。两者都是不错的选择。那么Elegoo和Arduino有什么区别呢?Arduino 作为通用微控制器平台,在制造商和电子爱好者中非常受欢迎。然而,您经常会遇到像 Elegoo 这样的克隆板,它们与常规 Arduino 板非常相似。如果您曾经购买过 Arduino 板,您可能见过带有更便宜入门套件的 Eleg...
2024-02-08改变Arduino中analogRead的分辨率
默认情况下,Arduino 中的analogRead遵循10 位分辨率(这对于不同的板可能有所不同)。但是,有时,您可能不需要这么高的分辨率。通常,人们希望将分辨率设置为 8 位,以节省存储空间。这是因为 8 位值将只占用一个字节的存储空间,而高于此值的任何值都将占用两个字节的存储空间。幸运的是,Arduin...
2024-01-10Java / Arduino-从串行端口读取数据
我有一个Java程序,必须读取Arduino发送的信息。我从这里获取了Java代码。现在,我不太了解它是如何工作的,但是我尝试对其进行修改,并且得到了以下信息:import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.OutputStream;import gnu.io.CommPortIdentifier;import gnu.io.SerialPort;import gnu.io.SerialPortEve...
2024-01-10带有 Arduino 的 WiFi – 连接到网络
为了将 WiFi 与 Arduino Uno 或任何其他开发板一起使用,您可能需要一个 WiFi 扩展板(除非您使用的是具有内置 WiFi 功能的开发板,例如 Arduino Uno WiFi)。WiFi 扩展板与任何其他扩展板一样,堆叠在您的板上,并提供对扩展板本身上 Arduino 引脚的访问。您可以在此处阅读有关 WiFi 屏蔽的更多信息 -https://www.ar...
2024-01-10Arduino 中的tone() 和noTone()
音调功能可用于在引脚上生成特定频率的方波(50% 占空比)。语法语法是 -tone(pin, frequency)pin是生成音调的 pin 号。频率以Hz 为单位指定。此函数还可以接受第三个可选参数 - 应在引脚上生成音调的毫秒持续时间。tone(pin,frequency,duration)如果您不指定持续时间,则音调将一直持续,直到noTone()在同一引脚...
2024-01-10Arduino驱动ILI9341彩屏(一)——颜色问题
最近在淘宝的店铺上淘到了一块ILI9341的彩色液晶屏,打算研究一下如何使用。淘宝店铺购买屏幕之后有附源代码可供下载,代码质量惨不忍睹,各种缩进不规范就不说了,先拿来试一下吧。这是淘宝店铺代码的核心部分:void setup(){ Lcd_Init(); //LCD_Clear(0xf800);}void loop(){ LCD_Clear(0xf800); LCD_Cl...
2024-01-10如何在 Arduino 中使用“U”和“L”格式化程序?
在浏览 Arduino 代码时,您可能会遇到一些后跟U或L或两者(或小写字母u和l)的数字。这些是formatters,它们强制整数常量具有特定格式。U强制整数常量为无符号数据格式,而L强制整数常量为长数据格式。这些格式化程序可以在定义变量时使用,也可以在公式中直接使用一些整数值。示例int a = 33u;# d...
2024-01-10