Arduino 無線通信實戰:使用 RadioHead實現 315MHz 433M模塊數據傳輸

本文將介紹如何使用 Arduino 和 RadioHead 庫實現 315MHz(或 433MHz)ASK 無線通信。通過兩個 Arduino 控制板,一個作為發射端,一個作為接收端,實現“按鍵控制 → 無線發送 → LED 控制”的基礎通信功能,非常適合無線控制、遙控器替代等場景。

接收端接線,中間兩個引腳,任意接一個即可
在這里插入圖片描述
發射端接線
在這里插入圖片描述

安裝 RadioHead 庫

打開 Arduino IDE → 工具 → 管理庫

搜索 RadioHead

點擊安裝

發射端代碼如下:

#include <RH_ASK.h>
#include <SPI.h> // 必須包含,即使不用 SPIRH_ASK driver; // 默認使用 D12 發射(可改)void setup() {Serial.begin(9600);if (!driver.init()) {Serial.println("發射器初始化失敗");}
}void loop() {const char *msg = "Hello";driver.send((uint8_t *)msg, strlen(msg));driver.waitPacketSent();Serial.println("已發送:Hello");delay(1000);
}

接收端代碼如下,這里接收到信息,板載led會亮,如果沒有加裝天線的話,兩個模塊需要靠的非常近才能進行信息傳輸

#include <RH_ASK.h>
#include <SPI.h>RH_ASK driver;
const int ledPin = 13;void setup() {Serial.begin(9600);pinMode(ledPin, OUTPUT);if (!driver.init()) {Serial.println("接收器初始化失敗");}
}void loop() {uint8_t buf[12];uint8_t buflen = sizeof(buf);if (driver.recv(buf, &buflen)) {buf[buflen] = '\0'; // 添加字符串結束符Serial.print("接收到:");Serial.println((char *)buf);if (strcmp((char *)buf, "Hello") == 0) {digitalWrite(ledPin, HIGH);delay(500);digitalWrite(ledPin, LOW);}}
}

將發射端代碼上傳到 Arduino A

將接收端代碼上傳到 Arduino B

打開兩個串口監視器(波特率 9600)

發射端每秒發送一次 “Hello”

接收端成功接收后會串口輸出 “接收到: Hello”,并點亮 LED

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/88794.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/88794.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/88794.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

012_PDF處理與文檔分析

PDF處理與文檔分析 目錄 PDF支持概述支持的功能文檔限制上傳方式分析能力應用場景最佳實踐 PDF支持概述 核心能力 Claude現在可以直接處理PDF文檔&#xff0c;提供全面的文檔分析能力。這項功能支持&#xff1a; 文本內容分析&#xff1a;提取和理解PDF中的文本圖像識別&…

系規備考論文:論IT服務知識管理

論IT服務知識管理 摘要 2022年7月,我公司中標某市化工廠網絡視頻監控管理系統綜合平臺運維服務項目,并任命我為系統規劃與管理師。該項目組織結構為項目型,合同金額為115.5萬元(含稅),工期為1年。本運維服務項目的主要工作包括系統軟件和網絡設備的日常監控與維護,定期…

2025.7.12總結

最近又兩三天沒寫總結了&#xff0c;如今必須要寫一稿&#xff0c;畢竟事關賺錢認知的一次顛覆。在我原有的認知里&#xff0c;賺錢&#xff0c;就是通過出賣自己的勞動時間&#xff0c;精力&#xff0c;給他人提供價值輸出。但是&#xff0c;賺錢&#xff0c;只能通過出賣體力…

把 DNA 當 PCIe:一條 365 nt 鏈實現 64 Gbps 片上光互連——基于鏈式 F?rster 共振的分子級波分復用鏈路

作者 | Blossom.118 2025-07-13 關鍵詞&#xff1a;DNA 光子學、FRET 波分復用、分子 PCIe、零能耗光鏈路、CMOS 兼容、開源版圖 ---- 1. 為什么用 DNA 做光互連&#xff1f; ? 帶寬密度&#xff1a;硅光 1 m 波導最高 0.4 Tbps/mm&#xff1b;一條 2 nm 直徑的 DNA 雙鏈&am…

[論文閱讀]Text Compression for Efficient Language Generation

Text Compression for Efficient Language Generation [2503.11426] Text Compression for Efficient Language Generation NAACL 2025 提出了“Generative Pretrained Thoughtformer”&#xff08;GPTHF&#xff09;&#xff0c;這是一個分層 transformer 語言模型&#xf…

SwiftUI 7 新 WebView:金蛇出洞,網頁江湖換新天

概述 崇禎年間&#xff0c;華山派武學雖盛&#xff0c;卻在應對江湖新局時漸顯頹勢&#xff1b;如今 SwiftUI 江湖亦是如此 ——WWDC 25 之前&#xff0c;若要在 SwiftUI 中顯示網頁&#xff0c;開發者恰似袁承志初闖江湖&#xff0c;縱有一身本領&#xff0c;卻苦無稱手兵刃。…

LeetCode|Day9|976. 三角形的最大周長|Python刷題筆記

LeetCode&#xff5c;Day9&#xff5c;976. 三角形的最大周長&#xff5c;Python刷題筆記 &#x1f5d3;? 本文屬于【LeetCode 簡單題百日計劃】系列 &#x1f449; 點擊查看系列總目錄 >> &#x1f4cc; 題目簡介 題號&#xff1a;976. 三角形的最大周長 難度&#x…

華擎B150M Pro4S魔改bios上8代U

100、200系主板魔改bios在DIY領域當屬于歷史性事件&#xff0c;2018年左右興起。雖然現在已經是2025年&#xff0c;魔改bios已經沒有多大意義&#xff0c;但是跟著前輩的教程魔改一次&#xff0c;可以重溫下當年DIY玩家的激情。 魔改教程在SMXDIY網站&#xff0c;寫的非常詳細&…

音視頻學習(三十七):pts和dts

概念 PTS&#xff08;Presentation Time Stamp&#xff09;顯示時間戳 表示&#xff1a;該幀應該在什么時間被顯示/播放。主要用于&#xff1a;同步音頻與視頻&#xff0c;控制播放節奏。舉例&#xff1a;視頻幀 A 的 PTS 是 300ms&#xff0c;表示應在視頻播放第 300 毫秒時顯…

關于數據庫的慢查詢

1.數據庫的慢查詢慢查詢是指執行時間超過預設閾值的數據庫查詢操作。它是數據庫性能優化的一個重要指標和切入點。慢查詢的主要特點執行時間長&#xff1a;超過了數據庫系統設定的慢查詢閾值&#xff08;如MySQL默認是10秒&#xff09;資源消耗大&#xff1a;可能占用大量CPU、…

【Rust日報】 Python 核心開發者對 Rust 的期望

半月刊&#xff1a;The Embedded Rustacean Issue #49亮點&#xff1a;&#x1f4e2; 樂鑫 DevCon 2025 演講嘉賓征集&#x1f9ba; CISA 和 NSA 參與內存安全對話&#x1f510; 微軟宣布 RIFT &#xff08;Rust 惡意軟件分析工具&#xff09;&#x1f4b0;? Nordic 收購 Memf…

vue是什么

Vue簡介Vue&#xff08;Vue.js&#xff09;是一個用于構建用戶界面的漸進式JavaScript框架。它專注于視圖層&#xff0c;易于集成到現有項目中&#xff0c;也可用于開發復雜的單頁面應用&#xff08;SPA&#xff09;。Vue的核心特點是輕量、靈活和高效&#xff0c;通過數據綁定…

10分鐘掌握 Nginx 配置文件結構

在實際部署前端或后端項目時&#xff0c;Nginx 配置文件&#xff08;nginx.conf&#xff09; 是我們無法繞開的第一道門檻。 本文將帶你用10分鐘掌握 nginx.conf 的核心結構與常見配置方法&#xff0c;并提供一篇完整的實戰文檔鏈接&#xff0c;適合初學者快速掌握。 &#x1…

典型的前后端交互數據示例

提供幾種典型的前后端交互數據示例&#xff1a; 前端如何組織數據&#xff0c;以及后端如何接收數據。 文章目錄1. POST請求后端實體類接收前端js后端接收結果查看2. GET請求后端實體類接收前端js后端接收結果查看3. GET請求后端基本類型接收前端js后端接收結果查看1. POST請求…

計算機畢業設計springboot影視周邊推薦系統 基于SpringBoot的電影衍生品智能推薦平臺 JavaWeb實現的影視文化周邊個性化服務系統

計算機畢業設計springboot影視周邊推薦系統6c31q9 &#xff08;配套有源碼 程序 mysql數據庫 論文&#xff09; 本套源碼可以在文本聯xi,先看具體系統功能演示視頻領取&#xff0c;可分享源碼參考。疫情之后&#xff0c;線上娛樂需求激增&#xff0c;人們對電影及其衍生商品的關…

(4)機器學習小白入門YOLOv :圖片標注實操手冊

(1)機器學習小白入門YOLOv &#xff1a;從概念到實踐 (2)機器學習小白入門 YOLOv&#xff1a;從模塊優化到工程部署 (3)機器學習小白入門 YOLOv&#xff1a; 解鎖圖片分類新技能 (4)機器學習小白入門YOLOv &#xff1a;圖片標注實操手冊 (5)機器學習小白入門 YOLOv&#xff1a;…

【JMeter】調試方法

文章目錄取樣器&#xff1a;發送請求、接收響應>>察看結果樹斷言&#xff1a;驗證響應>>察看結果樹提取器&#xff1a;創建變量>>調試取樣器自定義斷言&#xff1a;代碼>>日志了解JMeter的內部細節&#xff0c;排查錯誤的原因。取樣器&#xff1a;發送…

Vue框架之鉤子函數詳解

Vue框架之生命周期主要鉤子函數詳解一、Vue生命周期的整體流程二、創建階段&#xff1a;初始化組件實例2.1 beforeCreate&#xff1a;實例創建前2.2 created&#xff1a;實例創建后三、掛載階段&#xff1a;組件與DOM結合3.1 beforeMount&#xff1a;掛載前3.2 mounted&#xf…

Syntax Error: TypeError: Cannot set properties of undefined (setting ‘parent‘)

Date: 2025-07-12 19:21:24 author: lijianzhan使用npm run dev運行前端項目時報錯&#xff0c;具體報錯信息如下&#xff1a; ERROR Failed to compile with 1 error …

JAVA后端開發——類命名規范

引言良好的命名規范是軟件工程的基石。它不僅能提升代碼的可讀性&#xff0c;還能降低團隊協作的溝通成本&#xff0c;使項目在長期迭代中更易于維護。本規范結合了業界主流實踐&#xff08;如阿里巴巴Java開發手冊&#xff09;以及現代Web應用分層架構的特點&#xff0c;旨在提…