ESP32 433mhz

从抖音抄了一大神的Arduino代码

# include <RCwitch.h>   ///调用RC开关函数库
RCSwitch mySwitch = RCSwitch();  //增加一个RC开关并设置名称
const int FRR =15; / 设置315MHz 无限模块的接受管脚
void setup(){
	Serial.begin(115200); //打开串口i设置波特率115200
	mySwitch.enableReceive(FRR); //设置启用接收并设置接收管脚
}

void loop(){
	if (mySwitch.available()){  //判断是否收到了数据
	Serial.print('读数据:');
	Serial.print(mySwitch.getReceiveValue()); //输出接收到的值
	Serial.print('/')
	Serial.print(mySwitch.getReceivedBitlength());//输出获取到的数据长度
	Serial.print('bit');
	Serial.print('协议:');
	Serial.printIn(mySwitch.getReceivedProtocol());//输出获取接受协议
	mySwitch.resetAvailable();//重置可用的值

	}
}


本人学了点python,故让c知道转换一下

要使用MicroPython代码实现相同的功能,你可以按照以下步骤进行操作:

  • 导入相应的库:
from machine import Pin
from machine import UART
import time
  • 初始化串口:
uart = UART(0, 115200)
uart.init(115200, bits=8, parity=None, stop=1)
uart = UART(0, 115200)

UART是一种通用异步收发传输协议,全称为Universal Asynchronous Receiver/Transmitter。它是一种常见的串行通信接口,用于在计算机和外部设备之间传输数据。在这里,"UART(0, 115200)"是一个Python代码片段,用于初始化一个UART对象。

具体来说,"UART(0, 115200)"中的第一个参数0表示UART的编号,表示使用第一个UART接口。第二个参数115200表示波特率,即数据传输的速率,这里设置为115200 bits per second(bps)。

通过初始化UART对象,可以使用相应的方法来进行数据的发送和接收。例如,可以使用UART对象的write()方法向外部设备发送数据,使用read()方法从外部设备接收数据。

uart.init(115200, bits=8, parity=None, stop=1)

uart.init(115200, bits=8, parity=None, stop=1) 是一个用于初始化UART通信的函数。它的参数含义如下:

  • 115200:波特率,表示每秒传输的位数。这里设置为115200,表示每秒传输115200位。
  • bits=8:数据位数,表示每个字节中包含的位数。这里设置为8,表示每个字节有8位。
  • parity=None:奇偶校验位,用于检测数据传输中的错误。这里设置为None,表示不使用奇偶校验。
  • stop=1:停止位,表示每个字节传输结束后的停止位数。这里设置为1,表示每个字节传输结束后有1个停止位。

通过调用uart.init()函数并传入相应的参数,可以初始化UART通信并设置通信的参数。

  • 初始化接收管脚:
receive_pin = Pin(15, Pin.IN)
  • 设置循环来接收数据:
while True:
    if receive_pin.value() == 1:
        data = uart.read()
        if data is not None:
            print('读数据:', data)
            print('协议:', uart.read())
            time.sleep_ms(100)

请注意,以上代码仅提供了一个大致的实现思路,具体的实现可能需要根据你的硬件和需求进行调整。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/496552.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何用磁力仪探测管缆的位置和埋深?

不论是航空磁测&#xff0c;还是海洋磁测&#xff0c;都是直接测量磁场总强度T&#xff0c;而后以总磁异常ΔT成图。磁异常总强度Ta是磁场总强度T与正常场T0的矢量差&#xff0c;即&#xff1a; Ta&#xff1d; T&#xff0d; T0 根据参考文献1&#xff0c;2的推导&#xff0c…

2024信息通信展览会|中国通信展览会|通讯大会

2024信息通信展览会|中国通信展览会|通讯大会 2024年中国国际信息通信展览会与同期举办的ICT.中国论坛于2024年9月25-27日在北京.国家会议中心隆重举办&#xff0c;共同奋力开启信息通信的新篇章。这是一场集交流、展示、共赢于一体的盛大盛典&#xff0c;为信息通信领域的企业…

保研线性代数机器学习基础复习2

1.什么是群&#xff08;Group&#xff09;&#xff1f; 对于一个集合 G 以及集合上的操作 &#xff0c;如果G G-> G&#xff0c;那么称&#xff08;G&#xff0c;&#xff09;为一个群&#xff0c;并且满足如下性质&#xff1a; 封闭性&#xff1a;结合性&#xff1a;中性…

一种重要却容易被我们忽略的能力

你有多久没有「发呆」过了&#xff1f; 我指的不是那种偶尔的走神和分心&#xff0c;而是那种持续一段时间&#xff0c;什么也不做、什么也不想&#xff0c;就这样静静站着或坐着&#xff0c;让大脑放空的状态。 可能有人会觉得&#xff1a;这太奢侈了&#xff0c;我们每天都恨…

【任职资格】某大型制造型企业任职资格体系项目纪实

该企业以业绩、责任、能力为导向&#xff0c;确定了分层分类的整体薪酬模式&#xff0c;但是每一名员工到底应该拿多少工资&#xff0c;同一个岗位的人员是否应该拿同样的工资是管理人员比较头疼的事情。华恒智信顾问认为&#xff0c;通过任职资格评价能实现真正的人岗匹配&…

基于Spring boot + Vue协同过滤算法的电影推荐系统

末尾获取源码作者介绍&#xff1a;大家好&#xff0c;我是墨韵&#xff0c;本人4年开发经验&#xff0c;专注定制项目开发 更多项目&#xff1a;CSDN主页YAML墨韵 学如逆水行舟&#xff0c;不进则退。学习如赶路&#xff0c;不能慢一步。 目录 一、项目简介 二、开发技术与环…

分享一下自己成功入职为AIGC工程师的经历

据外媒援引知情人士消息&#xff0c;OpenAI预计2023年收入将达到2亿美元&#xff0c;到2024年将达到10亿美元&#xff0c;全世界都看出了AIGC工程师的市场潜力。 而对于广大职场人士而言&#xff0c;则是意味着新的职场机遇出现了&#xff0c;学习好AIGC技术&#xff0c;无论是…

gemma 大模型(gemma 2B,gemma 7B)微调及基本使用

待整理… gemma介绍 Gemma是Google推出的一系列轻量级、最先进的开放模型&#xff0c;基于创建Gemini模型的相同研究和技术构建。提供了 2B 和 7B 两种不同规模的版本&#xff0c;每种都包含了预训练基础版本和经过指令优化的版本。所有版本均可在各类消费级硬件上运行&#x…

ThreadLocal和Synchronized的区别

目录 背景过程ThreadLocal什么是ThreadLocal&#xff1f;既然都是保证线程访问的安全性&#xff0c;那么和Synchronized区别是什么呢&#xff1f;ThreadLocal的使用TheadLocal使用场景原理高并发场景下ThreadLocal会造成内存泄漏吗&#xff1f;什么原因导致&#xff1f;如何避免…

aws 入门篇 01.aws学习的方法论

aws入门篇 01.aws学习的方法论 第1章 aws学习的方法论 aws的服务很多&#xff0c;现在应该有100多个服务了&#xff0c;怎么来学习aws呢&#xff1f; 这几年也使用了一些aws的服务&#xff0c;谈谈自己对学习aws的理解。 1.先横向&#xff0c;后纵深 比如说&#xff0c;aws最…

SpringCloud微服务集成Dubbo

1、Dubbo介绍 Apache Dubbo 是一款易用、高性能的 WEB 和 RPC 框架,同时为构建企业级微服务提供服务发现、流量治理、可观测、认证鉴权等能力、工具与最佳实践。用于解决微服务架构下的服务治理与通信问题,官方提供了 Java、Golang 等多语言 SDK 实现。使用 Dubbo 开发的微服…

手撕算法-最小覆盖子串

描述 分析 滑动窗口。 参考力扣官方的题解思路 本问题要求我们返回字符串 s 中包含字符串 t 的全部字符的最小窗口。我们称包含 t 的全部字母的窗口为「可行」窗口。 我们可以用滑动窗口的思想解决这个问题。在滑动窗口类型的问题中都会有两个指针&#xff0c;一个用于「延伸…

文件操作(下)(想要了解如何操作文件,那么看这一片就足够了!)

前言&#xff1a;在文件操作&#xff08;上&#xff09;中&#xff0c;我们讲到了基础的文件操作&#xff0c;包括文件的打开&#xff0c;文件的关闭&#xff0c;以及文件的基础读写&#xff0c;那么除了之前学习的读写之外&#xff0c;还有什么其他的方式对文件进行读写操作吗…

P5725 【深基4.习8】求三角形

【深基4.习8】求三角形 - 洛谷https://www.luogu.com.cn/problem/P5725 import java.util.*;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in); // 创建一个 Scanner 对象来读取用户输入int n sc.nextInt(); // 从用户输入中…

Linux根据时间删除文件或目录

《liunx根据时间删除文件》和 《Linux 根据时间删除文件或者目录》已经讲述了根据时间删除文件或目录的方法。 下面我做一些补充&#xff0c;讲述一个具体例子。以删除/home目录下的文件为例。 首先通过命令&#xff1a; ls -l --time-style"%Y-%m-%d %H:%M:%S"…

【数据结构与算法】快速排序(详解:快排的Hoare原版,挖坑法和双指针法|避免快排最坏时间复杂度的两种解决方案|小区间优化|非递归的快排)

引言 快速排序作为交换排序的一种&#xff0c;在排序界的影响力毋庸置疑&#xff0c;我们C语言中用的qsort&#xff0c;C中用的sort&#xff0c;底层的排序方式都是快速排序。相比于同为交换排序的冒泡&#xff0c;其效率和性能就要差的多了&#xff0c;本篇博客就是要重点介绍…

2024 ccfcsp认证打卡 2023 03 01 田地丈量

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in new Scanner(System.in);int n in.nextInt(); // 输入 n&#xff0c;表示矩形的数量int a in.nextInt(); // 输入 a&#xff0c;表示整个区域的长度int b in.nextInt()…

3.28学习总结

java 封装 封装体现了java的面向对象的特点,用户不用知道程序是如何运行的,只用按照所给的格式输入参数,便可得到对应的结果. 一个完整的封装需要每个实例变量都用private来修饰并拥有相应的public getter和setter方法. 代码 public class girl {private int age;public st…

C++:转义符(10)

在c中有一些字符无法被显示出来&#xff0c;所以需要使用些特殊字符加字母来展示 可以看到基本都是一个\加一个字母去只执行对应的一个效果 这里我选择几个对于当前来说比较重要的&#xff1a;\n &#xff0c;\\ &#xff0c;\t \n换行符 可以看到在c语言中他就是一个可以换行…

c++ 有名对象和匿名对象

c 有名对象和匿名对象 有名对象就是有名字的对象&#xff0c;匿名对象就是没有名字的对象。 #define _CRT_SECURE_NO_WARNINGS 1 using namespace std; #include<iostream> class score { public:score(){math 100;chinese 100;english 100;}score(int _math, int _…
最新文章