37种传感器(三十一)红外接收模块+Stduino Nano&UNO

本文转载自:http://www.stduino.com/forum.php?mod=viewthread&tid=58&extra=page%3D1=

关键词:
51、stm32、arduino、stduino单片机、stduino UNO&Nano、红外接收模块

说明:
红外遥控是一种无线,非接触控制技术,具有抗干扰能力强,信息传输可靠,可以降低,成本低,易于实现等显着优点,被众多电子设备采用。
红外接收头的工作原理为:接收内置管将红外发射管发射出来的光信号转换为微弱的电 信号,此信号经由 IC内部放大器进行放大,然后通过自动增益控制,带通滤波,解调,波形整形后还原为遥控器发射出的原始编码,通过接收头的信号输出脚输出到电器上的编码识别电路。

HS0038 是经常常用到的红外接收电子元件,几乎可以接收市面所有红外遥控器的信号,因此我们采用它作为本实验的接收装置。
红外接收发射需要数据遵守一定的规则,常见的有 NEC 协议,飞利浦RC5 协议,索尼SIRC 协议,ITT ,JVC等。以NEC 协议为例,我们可以大致了解无线通信协议的规则。
首先, NEC 协议规定,逻辑1 和逻辑0 有严格的时间与电平对应关系,如下图:逻辑1 :560 μs高电平,1690 μs低电平;逻辑0 :560 μs高电平,560 μs小号低电平。
实际上,一次传输的内容包括起始位(引导码), 8 位地址和8 位命令,其中为了保证数据的有效性,有效数据是这样构成的:地址+ 地址反码+ 命令+ 命令反码。反码即把0 置为1 ,把1 置为0 ,从而两次检验保证了数据的可靠性。因此,一次传输内容的构成如下:

其中起始位为 9ms高电平和4.5ms 低电平。
最后,当按键长按时,这样是发送一个 110ms 的重复码:

通过编写对应的程序,还可以利用红外发射可以模拟红外遥控器实现遥控功能,该部分见下分段内容。

实验目的:
在本例中,我们将利用红外接收模块,接收遥控器发出的信号,并利用窗口显示出来。

器材:
Stduino UNO / Nano;、杜邦线、红外接收(HS0038 )模块

电路连接:

代码展示:

#define IRMP_INPUT_PIN 11  //定义红外接收I/O引脚
#define IRMP_PROTOCOL_NAMES 1
#include <irmpSelectMain15Protocols.h>//使用15个主要的IR协议
#include <irmp.c.h>
IRMP_DATA irmp_data[1];//数据储存
void setup()
{Serial.begin(115200);irmp_init();//初始化红外通信irmp_irsnd_LEDFeedback(true); //开始接收红外通信irmp_print_active_protocols(&Serial);//打印支持的IR协议
}void loop() {if (irmp_get_data(&irmp_data[0])){irmp_result_print(&irmp_data[0]); //输出接收到的信息}delay(100);
}

实验效果:
如串口监视器所示,其中 P 表示采用的RC6 协议,C 表示指令为0x05 ,R 为长按重复。

Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,目前已经支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能。
IDE当前支持的功能有:

  • GDB调试
  • 封装库下载安装
  • 代码自动补全提示
  • 中英文模式
  • UTF-8\GBK编码格式
  • 代码快速格式化
  • SWD\串口程序下载&调试(已验证)
  • DFU程序下载方式(待验证)
  • USB HID程序下载方式(待验证)
  • maple DFU程序下载方式(待验证)
  • maple DFU2程序下载方式(待验证)
  • MassStorage程序下载方式(待验证)

更多功能细节请前往www.stduino.com进行了解

已经支持的芯片&板型列表:

  • Stduino UNO&Nano
  • Nucleo 144 boards
  • Nucleo 64 boards
  • Nucleo 32 boards
  • Discovery boards
  • Eval boards
  • STM32MP1 series coprocessor boards
  • Generic STM32F0 boards
  • Generic STM32F1 boards
  • Generic STM32F3 boards
  • Generic STM32F4 boards
  • Generic STM32H7 boards
  • Generic STM32L0 boards
  • 3D printer boards
  • LoRa boards
  • Electronic Speed Controller boards
  • Generic flight controllers
  • Garatronics boards
  • Midatronics boards

更多功能集成正在进行中~

【更好用的单片机】Stduino学习(三十一)红外接收模块相关推荐

  1. Java多线程学习三十一:ThreadLocal 是用来解决共享资源的多线程访问的问题吗?

    ThreadLocal 是不是用来解决共享资源的多线程访问的. 这是一个常见的面试问题,如果被问到了 ThreadLocal,则有可能在你介绍完它的作用.注意点等内容之后,再问你:ThreadLoca ...

  2. ballerina 学习 三十一 扩展开发(二)

    上篇说了使用ballerina 语言开发扩展模块,对于注解类型的我们是需要使用java 语言进行 开发的 官方提供了一个hello 的demo可以参考 https://github.com/balle ...

  3. Arduino实验三十一 红外避障传感器实验

    学习任务: 了解PCF8591数模转换传感器 组件: Arduion主板 红外避障传感器 杜邦线 面包板 USB数据线 下图是红外避障传感器 实验步骤: 1.建立电路 Arduion 红外避障传感器 ...

  4. C语言编程建议和技巧,同样适用于单片机的学习

    我们鼓励在编程时应有清晰的哲学思维,而不是给予硬性规则.我并不希望你们能认可所有的东西,因为它们只是观点,观点会随着时间的变化而变化.可是,如果不是直到现在把它们写在纸上,长久以来这些基于许多经验的观 ...

  5. 深度学习三巨头也成了大眼萌,这个一键转换动画电影形象的网站竟因「太火」而下线...

    机器之心报道 作者:魔王.杜伟 想不想在动画电影中拥有自己的角色?这个网站一键满足你的需求,不过竟因流量太大成本过高而下线. 近期热映的电影<花木兰>总是让人回想起 1998 年上映的同名 ...

  6. 2020届 AAAI Fellow名单新鲜出炉!!!深度学习三巨头终于齐聚

    点击上方"深度学习技术前沿",选择"星标"公众号 资源干货,第一时间送达 AAAI 是国际人工智能领域最权威的学术组织,Fellow 是该学会给予会员的最高荣誉 ...

  7. OpenCV学习笔记(三十一)——让demo在他人电脑跑起来 OpenCV学习笔记(三十二)——制作静态库的demo,没有dll也能hold住 OpenCV学习笔记(三十三)——用haar特征训练自己

    OpenCV学习笔记(三十一)--让demo在他人电脑跑起来 这一节的内容感觉比较土鳖.这从来就是一个老生常谈的问题.学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那 ...

  8. 【技术综述】图像与CNN发家简史,集齐深度学习三巨头

    文章首发于微信公众号<有三AI> [技术综述]图像与CNN发家简史,集齐深度学习三巨头 没有一个经典的发现会是突然之间横空出世,它总是需要一些积淀. 提起卷积神经网络,我们总会从LeNet ...

  9. 干货分享:单片机编程学习攻略!

    点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达! 阅读本文大概需要 3 分钟. 目前,一个学习与应用单片机的高潮正在工厂.学校及企事业 ...

最新文章

  1. usaco Cow Pedigrees
  2. 实验总结_小学科学实验室工作总结范文(直接复制下载)
  3. JS 实现图片的预加载(转载)
  4. 关于Matlab中符号运算的因式分解、展开与合并
  5. Interview:算法岗位面试—10.24下午—上海某软件公司(机器学习,上市)电话面试—考察SVM、逻辑回归、降低过拟合、卷积网络基础等
  6. 锦州财经学校计算机系,锦州一职高与财经学校哪个好
  7. linux上卸载kafka,kafka安装在linux上的安装
  8. 在OpenShift上将JMS与JBoss A-MQ结合使用。 从远程客户端和加密中学到的经验教训。...
  9. ajax 如何禁止 预检请求,如何跳过“选项”预检请求?
  10. python图书管理系统
  11. RabbitMq(十五)消息的追踪查看配置及查看方法
  12. java面经_作为Java后台,这些都不会的话,就别去面试了
  13. [转]Windows关机过程分析与快速关机
  14. 【实用】CSS Border使用小分享——盒模型
  15. 《Perl语言入门》学习笔记
  16. [关系图谱] 一.Gephi通过共现矩阵构建知网作者关系图谱
  17. 《企业管理学》管理理论的产生于发展知识点总结
  18. usb3.0速度测试软件,Win10系统如何测试usb3.0设备传输速度|Win10测试usb3.0设备传输速度的方法...
  19. 游戏设计---游戏中战斗力计算方法(整理)
  20. [Python知识图谱] 一.哈工大pyltp安装及中文分句、中文分词、导入词典基本用法

热门文章

  1. 点击按钮测试用例标题_输入框测试用例的思考点
  2. 多路归并问题(多个有序表合为一个有序表)
  3. Oracle Cloud Infrastructure:Oracle Cloud Marketplace提供了一个扩展的Oracle和第三方机器映像库
  4. java多线程之并行和并发
  5. 从小区宽带看ISP运营商拓扑
  6. 阿里巴巴马云:CEO的本事就是会用别人脑袋
  7. 独家丨立白推出银发个护品牌,日化巨头如何抢占银发市场?
  8. 【智慧农业】农业物联网解决方案
  9. 如何排查内存溢出问题
  10. Java在PDF中添加水印(文本/图片水印)效果import com.spire.pdf.*; import com.spire.pdf.graphics.*; import java.awt.*;