esp8266+micropython+irsend红外发射调试记录

在网上搜索esp8266+micropython的红外发射库,没找到,发现

接收库是有的,可以参考:基于MicroPython的ESP8266连接外设IO(二)_micropython 红外接收-CSDN博客

可惜没有发射,很不方便。

这里都有介绍,最大1KHZ:

https://www.cnblogs.com/iBoundary/p/11987436.html

PWM(12, freq=500, duty=512)这种方式控制的PWM 频率最高也只能到1KHZ,到这很多人就放弃了使用这种方式控制红外发射了,这个频率只能用来控制舵机和电调啥的了,根本不能用于红外发射啊,或者换开发板使用pico或STM32,无奈手上esp8266开发板太多,只能硬头皮上了,还在闲鱼上买了个示波器(真是为了一盘醋包饺子啊)。又是花钱的一天。造孽啊!

先上代码,有几种加快esp8266程序执行的方法(当然是在micropython上)一种是改时钟频率,machine.freq(160000000),试了没效。

还有测试esp8266速度的帖子:https://www.cnblogs.com/yafengabc/p/11197001.html

这个逻辑分析仪都用上了,刚开始准备买逻辑分析仪的,最后买了个示波器(捂脸)。

最后终于找到了这篇帖子(MicroPython入坑记(三)板子上的Python到底有多快?),给了灵感:https://www.cnblogs.com/yafengabc/p/8681713.html

感谢作者!

最后我的代码:

import irsend_hx
from machine import Pin
import time

irsend = irsend_hx.IRSEND(Pin(14))#对应nodemcu引脚D5

if __name__ == "__main__":
    cmdlist=[8880,4470, 530,570, 530,570, 530,1670, 530,620, 480,620, 530,570, 530,1670, 530,570, 530,1720, 480,1720, 530,570, 530,1670, 530,1670, 530,1720, 530,570, 530,1670, 530,1670, 530,1720, 480,620, 530,570, 530,570, 530,570, 530,1670, 530,620, 480,620, 530,570, 530,1670, 530,1670, 530,1720, 480,1720, 530,570, 530,1670, 530]
    while True:
        # time.sleep(1)
        # irsend.send_hexstr("22DDC23D")
        # time.sleep(1)
        # irsend.send_bitstr("00100010110111011100001000111101")
        time.sleep(1)
        irsend.send_raw(cmdlist)
        print("send ok")

最后记录一下示波器调试的过程:

端口输出红外控制频率35KHZ,勉强可以被红外接收头识别到,会存在概率接收失败的情况

9ms+4.5ms引导码,+32bit NEC数据:

最后的测试库和 源码下载地址:https://download.csdn.net/download/es15071848238/89529369

演示代码里用的是Pin14,对应nodemcu端口是D5,可以自行更改

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP财务记账管理系统小程序源码

理财小能手必备!揭秘财务记账管理系统的魔力✨ 🌟 引入篇:告别糊涂账,拥抱财务自由 你是否曾为月底的账单头疼不已?是否觉得自己的钱总是莫名其妙地消失?别担心,财务记账管理系统来拯救你的钱…

【机器学习】必会数学知识:一文掌握数据科学核心数学知识点(下),收藏~

核心数学知识点 1、引言2、数据科学必会数学知识2.13 K均值聚类2.14 决策树2.15 随机森林2.16 梯度下降2.17 随机梯度下降(SGD)2.18 卷积2.19 拉普拉斯变换2.20 傅里叶变换2.21 信息论2.22 时间序列分析2.23 生成模型与判别模型2.24 支持向量机&#xff…

git merge 分支回退

1. 使用git merge --abort(如果合并正在进行中) git merge --abort2. 使用git reset(合并已经提交) 硬重置(--hard)会丢弃所有合并后的更改,并将HEAD指向合并前的提交。这是最彻底的方式&…

DDOS 攻击原理

DDoS攻击的基本原理 资源耗尽:攻击者通过发送大量的请求或数据包,耗尽目标系统的资源(如带宽、CPU、内存等),使其无法处理正常的用户请求。 分布式攻击:与传统的DoS(拒绝服务)攻击不…

Java-面向对象基础

在面向对象编程(Object-Oriented Programming, OOP)中,类(Class)是一种用来描述对象共同特征的蓝图或模板。它是创建对象的原型,定义了对象可以有的属性(字段)和行为(方法…

物联网应用,了解一点 WWAN全球网络标准

WWAN/蜂窝无线电认证,对跨地区应用场景,特别重要。跟随全球业务的脚步,我们像大唐先辈一样走遍全球业务的时候,了解一点全球化的 知识信息,就显得有那么点意义。 NA (北美):美国和加…

OpenSSH漏洞(CVE-2024-6387)

漏洞信息 请参考:OpenSSH远程代码执行漏洞 (CVE-2024-6387) 影响范围 8.5p1 <= OpenSSH < 9.8p1 参考链接中内容补充 利用方式 关于OpenSSH漏洞CVE-2024-6387,攻击者可以利用一个有用的代码路径并在正确的时间点上被SIGALRM信号打断,从而导致sshd(OpenSSH守护…

基于Python的哔哩哔哩数据分析系统设计实现过程,技术使用flask、MySQL、echarts,前端使用Layui

背景和意义 随着互联网和数字媒体行业的快速发展&#xff0c;视频网站作为重要的内容传播平台之一&#xff0c;用户量和内容丰富度呈现爆发式增长。本研究旨在设计并实现一种基于Python的哔哩哔哩数据分析系统&#xff0c;采用Flask框架、MySQL数据库以及echarts数据可视化技术…

工控、物联网、电力行业调试工具大全

工控、物联网、电力行业调试工具大全 文章目录 工控、物联网、电力行业调试工具大全Modbus调试工具MQTT调试工具IEC104/IEC101调试工具IEC61850 调试工具DL/T645 调试工具 Modbus调试工具 Modbus 是一种用于工业自动化系统中的通信协议&#xff0c;最早由 Modicon&#xff08;…

信号111

2、核心转储 当进程出现魔种异常的时候&#xff0c;是否有OS将当前进程在内存中的相关核心数据&#xff0c;转存到磁盘中&#xff01; 一般而言云服务器的核心转储功能是关闭的。 3、验证进程等待中的core dump标记位。 4、为什么生产环境一般都要关闭 core dump 系统调用接口…

解释器模式在金融业务中的应用及其在Spring框架中的实现

引言 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为设计模式&#xff0c;它为特定语言定义了一个解释器&#xff0c;用于解释语言中的语句。该模式用于需要解释和执行特定语言或表达式的场景&#xff0c;例如脚本引擎、规则引擎等。在金融业务中&#xff…

NSObject‘s MetaClass 的 super_class 指向谁 ?

在 Objective-C 运行时系统中&#xff0c;NSObject 是所有类的根类。为了理解 NSObject 的元类&#xff08;MetaClass&#xff09;以及它的 super_class 指针指向谁&#xff0c;我们需要理解元类的继承关系。 类和元类的关系 每个类对象都有一个 isa 指针&#xff0c;指向其元…

46、lvs集群- 博客

1、lvs集群&#xff1a; lvs&#xff1a;linux virtual server----章文嵩发起的开源项目&#xff0c;阿里。linux的内核层面实现负载均衡的软件。 主要作用&#xff1a;将多个后端服务器组成一个高可用&#xff0c;高性能的服务器集群&#xff0c;通过负载均衡的算法将客户端的…

资讯类app怎么应对DDOS攻击

资讯类app怎么应对DDOS攻击&#xff1f;在数字化时代&#xff0c;资讯类App作为信息传播的重要载体&#xff0c;其稳定运行直接关系到用户的信任与满意度。日益猖獗的DDoS攻击成为了这类应用不可忽视的威胁。为了有效抵御这一挑战&#xff0c;业界涌现出了多种创新的防护方案&a…

基于cmake为项目自动获取git分支tag的版本号和commitid

目录 1. 引言2. 实现过程2.1 工程目录规划2.2 c程序文件2.3 CMakeLists.txt2.4 GitVersion.cmake文件2.5 BuildNumber.cmake文件1. 引言 在项目构建的时候,我们经常会希望能够将git提交的分支信息和提交号(commitid)以及当前版本发布的tag信息作为版本号自动构建到程序里面,以…

留学生的作业形式有哪些???

作业是在海外求学中不可避免的一部分&#xff0c;在国外留学&#xff0c;课程种类丰富多样&#xff0c;每一门课程都有其独特的学习要求和作业形式。课业压力很大&#xff0c;不仅要应对各项quiz&#xff0c;日常各类作业也丝毫不能松懈。无论是文学、艺术&#xff0c;还是理工…

【JavaScript脚本宇宙】实时协同编辑:JavaScript 库和框架全面解析

实时协同编辑&#xff1a;探秘JavaScript实时协同编辑利器## 前言 在当今互联网时代&#xff0c;实时协同编辑成为了许多应用程序的重要功能之一。无论是团队协作办公软件&#xff0c;还是在线教育平台&#xff0c;都需要实现多人同时编辑文档的功能。为了满足这一需求&#x…

自建搜索引擎-基于美丽云

Meilisearch 是一个搜索引擎&#xff0c;主程序完全开源&#xff0c;除了使用官方提供的美丽云服务&#xff08;收费&#xff09;进行对接之外&#xff0c;还可以通过自建搜索引擎来实现完全独立的搜索服务。 由于成本问题&#xff0c;本博客采用自建的方式&#xff0c;本文就…

通过git将文件push到github 远程仓库

1.先git clone 代码地址 git clone htttp://github.com/用户名/test.git 2. 添加文件 例如&#xff1a;touch 1.txt 3.将文件添加到暂存区 git add 1.txt 4.提交 git commit -m "commit 1.txt" 5.与远程仓库建立关联 git remote add 远程仓库名 远程仓库…

(2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)

前言 本系列最初的想法就是搭建一个多项目的环境, 包含nginx, nodejs, php, html, redis, MongoDB, mysql.本文使用的PHP镜像为php:7.3.6-apache, 这里可以使用上一篇文章中生成好的镜像.LAMP或包含react或vue的前端项目, 本文就各写了一个, 可以按照实际需求, 自行添加多个容…