C51 - 红外遥控NEC协议

news2025/1/23 7:26:59

Infrared

  • 1> 实验概述
  • 2> 红外遥控器
    • 2.1> 硬件电路
  • 3> NEC红外传输协议
    • 3.1> 5部分构成
    • 3.2> 引导码
    • 3.3> 38KHz载波长啥样?
    • 3.4> 咋表示 0 / 1;
  • 4> 红外接收
  • 5> 程序设计


1> 实验概述

通过红外遥控器,控制DAYi(51开发板),开/关灯等,并将按键信息通过串口,发送到PC端;

1


2> 红外遥控器


2.1> 硬件电路

upd6121内部框图:
2.1

参考原理图:
21
工作原理:

Step 1> 扫描键盘键盘,得到按键编码值;
Step 2> 然后,用内部产生的38KHz的载波,按照【NEC红外传输协议】键值等信息调制;
Step 3> 最后通过红外发射二极管发射出去;


3> NEC红外传输协议


3.1> 5部分构成

5部分构成:1> 引导码; 2> 客户码; 3> 客户码反码; 4> 数据码; 5> 数据码反码;
客户码,数据码, 由8bit数据组成, 先发送LSB(最低有效位);

31

时间参数:
22


3.2> 引导码

21

38KHz载波保持9ms, 低电平4.5ms;
9ms = 9000us;
9000us / 26.3 ≈ 342个载波周期;


3.3> 38KHz载波长啥样?

222


3.4> 咋表示 0 / 1;

34

通过载波间隔不同表示 0 或 1;
0: 低电平0.56ms;
1: 低电平1.69ms;
载波都是保持0.56ms = 560us;
560us / 26.3us = 21个载波周期;


4> 红外接收


5> 程序设计

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

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

相关文章

【多线程初阶五】线程池常考面试题

目录 🌟一、线程池 🌈1、线程池是什么? 🌈2、为什么要使用线程池? 🌈3、怎么使用线程池? 1、使用标准库中的线程池(6种)——>不推荐使用。 2、自定义一个线程池…

【移动端网页布局】flex 弹性布局子项目属性 ① ( flex 属性用法说明 | 代码示例 : 占有剩余布局 / 平均分成若干等份 )

文章目录 一、flex 子项目常用属性1、子项目常用属性介绍2、flex 属性用法说明 二、flex 属性代码示例1、代码示例 - 左右两侧 100 像素 / 中间元素占有所有剩余布局3、代码示例 - 平均分成三等份 一、flex 子项目常用属性 1、子项目常用属性介绍 flex 子项目 的常用属性 : fl…

FL Studio 2023年最新安装使用图文教程,FL Studio 21怎么激活解锁?

Image-Line宣布针对Win和Mac版本的数字音频工作站FL Studio的21版本更新。FL Studio2023是一个完整的软件音乐制作环境或数字音频工作站(DAW)。代表超过 25年的创新发展,它包含了您在一个包装中编排,编排,录制&#xf…

查询数据(数据库)——简单查询

目录 1.最简单的查询 (1)查询指定列 (2)查询所有列 (3)查询计算列 (4)为列起别名 (5)使用DISTINCT关键字消除重复元组 2.查询满…

Kyligence Zen产品体验--小白也能快速上手的指标平台

一、写在最前 啥是Kyligence Zen? Kyligence Zen 是基于 Kyligence 核心 OLAP能力打造的一站式指标平台。凭借集业务模型、指标管理、指标加工、数据服务等于一体的解决方案,Kyligence 协助过多家金融、零售、制造企业客户搭建企业级指标平台。Kyligence Zen 是 K…

常见八种排序实现方法

常见八种排序实现方法 前言快速排序堆排序冒泡排序代码 选择排序代码部分 插入排序思路讲解代码部分 希尔排序代码部分思路讲解 归并排序递归思路讲解代码部分 非递归梭哈代码部分思路讲解 非梭哈代码部分 计数排序代码部分 前言 这里的快速排序和堆排序博主以前都写过&#xf…

绝地求生 压枪python版

仅做学习交流,非盈利,侵联删(狗头保命) 一、概述 1.1 效果 总的来说,这种方式是通过图像识别来完成的,不侵入游戏,不读取内存,安全不被检测。 1.2 前置知识 游戏中有各种不同的枪械&#x…

算法修炼之练气篇——练气十四层

博主:命运之光 专栏:算法修炼之练气篇 前言:每天练习五道题,炼气篇大概会练习200道题左右,题目有C语言网上的题,也有洛谷上面的题,题目简单适合新手入门。(代码都是命运之光自己写的…

基于 LHS 、 BR 与K-means的风电出力场景分析研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

多线程基础总结

1. 为什么要有多线程? 线程:线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中实际运行单位。 进程:进程是程序的基本执行实体。 什么是多线程? 有了多线程,我们就可以让程序同时做…

Java学习路线【看看ChatGPT怎么说】

目录 1、介绍情况2、路线简述3、Java初学者路线4、Java高级开发路线5、安卓开发 1、介绍情况 本文主体内容是chatGPT生成的😉 先说结论:chatGPT写出来的路线,深度比较一般,但是对于初学者而言,具有不错的参考价值。…

【机器学习】XGBoost 详细解读 (集成学习_Boosting_GBM)

【机器学习】XGBoost 详细解读 (集成学习_Boosting_GBM) 文章目录 【机器学习】XGBoost 详细解读 (集成学习_Boosting_GBM)1. 介绍2. 基本原理3. 目标函数(二阶泰勒展开求解)3.1 基础的目标函数3.2 二阶泰勒…

error: LNK2001: 无法解析的外部符号 “public: virtual struct QMetaObject const * __cdecl

Qt系列文章目录 文章目录 Qt系列文章目录前言一、QtCreator中qmake命令是什么?2.解决 前言 我在代码中加入了对应的信号和槽,但编译仍然报错: #ifndef PROJECTWIN_H #define PROJECTWIN_Hnamespace Ui { class ProjectWin; }ProjectWin类声…

Google Bard使用初体验,与ChatGPT比较到底怎么样

文章目录 Google Bard 介绍如何使用Google bardbard和ChatGPT3.5的区别 本文讲述了Google bard的入门教程和使用技巧,并且与竞争对手ChatGPT进行了一个全方面的比较。这是 Google 不能输的战役,也是全面 AI 的时刻。 Google Bard 介绍 Google Bard已经于…

【数据结构】链表(C语言)

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c语言系列专栏&#xff1a;c语言之路重点知识整合 &#x…

JUC之集合类

JUC包提供了一些并发安全的集合类&#xff0c;用于在多线程环境下进行共享数据的操作&#xff0c;以解决多线程间的竞争条件和线程安全问题。 CopyOnWriteArrayList 相当于线程安全的ArrayList public class ListTest {public static void main(String[] arge){List<Strin…

【项目-前后端交互-项目】表白墙【servlet实践】

【项目—前后端交互 案例】表白墙 代码示例: 服务器版表白墙1. 准备工作2. 约定前后端交互接口3. 实现服务器端代码创建 Message 类创建 MessageServlet 类 4. 调整前端页面代码5. 数据存入文件.6. 数据存入数据库1) 在 pom.xml 中引入 mysql 的依赖2) 创建数据库, 创建 messag…

ModuleNotFoundError: No module named ‘Multiscaledeformableattention‘

在实现DINO Detection方法时&#xff0c;我们可能会遇到以上问题。因为在DeformableAttention模块&#xff0c;为了加速&#xff0c;需要自己去编译这个模块。 如果你的环境变量中能够找到cuda路径&#xff0c;使用正确的torch版本和cuda版本的话&#xff0c;这个问题很容易解…

代码随想录算法训练营第三十九天 | 不同路径(挺简单的)

62.不同路径 文档讲解&#xff1a;代码随想录 (programmercarl.com) 视频讲解&#xff1a;动态规划中如何初始化很重要&#xff01;| LeetCode&#xff1a;62.不同路径_哔哩哔哩_bilibili 状态&#xff1a;能直接做出来。 思路 机器人从(1 , 1) 位置出发&#xff0c;到(m, n)终…

对抗训练方法:保卫人工智能的盾牌

❤️觉得内容不错的话&#xff0c;欢迎点赞收藏加关注&#x1f60a;&#x1f60a;&#x1f60a;&#xff0c;后续会继续输入更多优质内容❤️ &#x1f449;有问题欢迎大家加关注私戳或者评论&#xff08;包括但不限于NLP算法相关&#xff0c;linux学习相关&#xff0c;读研读博…