659 次浏览
我们将比较 Arduino Uno 和 Arduino Mega 开发板的规格。Arduino Uno Arduino Mega 请参考下表 -尺寸 定价 I/O 引脚 Uno Mega 常规 尺寸 2.7¨ x 2.1¨ 4¨ x 2.1¨ 定价 $20-23 $36-39 连接性 I/O 引脚 14 54 PWM 引脚 6 15 模拟引脚 6 16 计算 处理器 ATMega328P ATmega2560 闪存 32 kB 256 kB SRAM 2 kB 8 kB EEPROM 1 kB 4 kB 时钟速度 16 MHz 16 MHz 电压等级 5V 5V USB 连接性 标准 A/B USB 标准 A/B USB 通信 硬件串口 1 4 SPI 支持 是 是 I2C 支持 是 是
585 次浏览
Arduino Uno 开发板的重要组件如下所示 -下表包含每个标签的描述 -标签 描述 1 7-12 V 直流电源插孔 2 电压调节器 3 16 MHz 晶体振荡器 4 USB-B 接口 5 复位按钮 6 数字引脚 7 ICSP 引脚(可在此访问 SPI) 8 ATmega328P 微控制器 9 模拟引脚 10 串口 TX RX LED 11 USB 转 UART 转换 IC 12 内置 LED(连接到 13 号引脚)
6K+ 次浏览
在本文中,我们将了解如何将 Arduino 与 MQ-2 气体传感器连接。MQ2 气体传感器用于检测烟雾和一些易燃气体,如 LPG、甲烷等。它根据气体的类型改变其电阻。此原理可用于根据气体浓度发出警报。上面给出了 MQ2 气体传感器的图像。如您所见,它有 4 个引脚。其中,Aout 引脚根据气体浓度提供模拟电压。气体浓度越高,电压越高……阅读更多
2K+ 次浏览
在本文中,我们将了解如何将 Arduino 与 LoRa 模块 E32 连接。LoRa 代表远距离。它使用免许可的亚 GHz RF 频段进行操作。这些频段在不同国家/地区有所不同。在印度,允许的频段是 865-867 MHz。由于其远距离和低功耗,LoRa 非常适合物联网应用。但是,可实现的数据速率有限(0.3 到 27 kbits/秒)。距离越远,数据速率越低。我们将使用的 E32 模块如下所示。根据频率,模块变体也会发生变化。例如,……阅读更多
10K+ 次浏览
Zigbee 是一种针对电池供电设备的无线通信协议(它具有低功耗和低成本)。它通常在 2.4GHz 范围内运行(尽管存在地域差异),并支持 20 到 250 kbits/s 的数据范围。然而,与 LoRa 相比,传输距离较小。它是 10 到 100 米,而 LoRa 可以传输几公里。需要注意的另一件事是,如果发射器和接收器之间没有视线,则 Zigbee 通信效果不佳。即使是微小的障碍物也会被观察到会显著降低通信质量。请记住这些……阅读更多
在本文中,我们将了解如何将 Arduino 与 GSM 模块连接,并使用该模块发送短信。您将需要以下内容 -Arduino 开发板 GSM 模块(SIM800C、SIM900A 是流行的示例,但您也可以使用任何其他模块)GSM (2G) SIM 卡或具有 2G 备用选项的 4G SIM 卡(Jio SIM 卡不适用于此项目)GSM 天线您也可以获得 GSM 模块开发板,如下所示(SIM 卡座位于电路板的另一侧) -GSM 模块通过 UART 与微控制器交互(参见……阅读更多
1K+ 次浏览
队列是一种数据结构,它有助于在不同任务之间或任务与中断之间交换数据。它保存有限数量的项目(在初始化时定义)并以 FIFO 模式运行。我们将逐步介绍 FreeRTOS 库中提供的一个示例,以了解队列。您可以在以下位置找到该示例:文件 → 示例 → FreeRTOS → StructQueue。在此代码中,两个任务从不同的模拟引脚读取模拟值,并将这些值传递到队列中。另一个任务从队列读取值并将它们打印到串行监视器上。有一个……阅读更多
230 次浏览
isGraph() 函数与 Arduino 中的 isPrintable() 函数非常相似。唯一的区别是 isGraph() 仅当要打印的字符包含某些内容时才返回 true。因此,isGraph() 排除了空格,但 isPrintable() 包括空格。所有普通字符、数字、特殊字符(包含某些内容)在通过 isGraph() 传递时都将返回 true。语法语法如下:isGraph(myChar)其中 myChar 是要检查的字符。一个快速的问题。制表符和换行符是否会使用 isGraph() 返回 true?示例使用如下简单的代码验证您的答案:void setup() { // 在此处放置您的设置代码,以运行一次:……阅读更多
Arduino 中的 shiftIn() 和 shiftOut() 命令,非常宽松地说,是 SPI 的软件实现。当然,SPI 要快得多,但 SPI 只能在 Arduino 的某些特定引脚上工作。shiftIn() 和 shiftOut() 可以使用 Arduino 的任何两个 GPIO(而不是像 SPI 那样的一些特定引脚)。shiftIn() 和 shiftOut() 都需要两个数字引脚,一个 dataPin 和一个 clockPin。dataPin 将一次一位地移入或移出 8 位数据字节。clockPin 同步数据传输。它通常保持低电平,并且对于每次位传输,它都会变高,然后返回……阅读更多
如果引脚上有传入脉冲,并且您需要测量脉冲的持续时间,则 pulseIn() 函数会派上用场。语法语法如下:pulseIn(pin, value)其中 pin 是您希望测量脉冲的引脚编号。该值是脉冲的电平。它可以是 HIGH 或 LOW。例如,如果将值设置为 HIGH,则意味着一旦引脚上的电压从 LOW 变为 HIGH,时间的测量就会开始。它将在引脚上的电压变为……阅读更多