极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: eagler8

【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)

[复制链接]
 楼主| 发表于 2019-9-6 07:04:52 | 显示全部楼层
模块特点:
超再生接收模块采用LC振荡电路,内含放大整形,输出的数据信号为解码后的高电平信号,使用极为方便,并且价格低廉,所以被广泛使用。带四路解码输出(同时也可改为六路点动或互锁输出),使用方便;频点调试容易,供货周期短;产品质量一致性好,性价比高。接收模块有较宽的接收带宽,一般为±10MHz,出厂时一般调在315MHz或433.92MHZ(如有特殊要求可调整频率,频率的调整范围为266MHz~433MHz。)。接收模块一般采用DC5V供电,如有特殊要求可调整电压范围。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 07:07:06 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 07:08:47 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 07:13:43 | 显示全部楼层


接收模块一共有八个外部接口,上面有英文表示。“5V”表示接电源正极,“ D0、D1、D2、D" 3”表示输出,“GND”表示接电源负极,“ANT”表示接天线端。

应用环境(应用领域)
无线遥控开关、遥控插座、数据传输、遥控玩具、防盗报警主机、车库门、卷闸门、道闸门、伸缩门等门控业及其遥控音响领域等。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 07:26:06 | 显示全部楼层




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 10:49:39 | 显示全部楼层
  1. /*
  2. 【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
  3. 实验一百零七: 2262/2272四路无线遥控套件M4非锁接收板 配四键无线遥控器模组
  4. 安装库:IDE-工具-管理库-搜索RCSwitch-安装
  5. 示例一:Example for receiving
  6. */

  7. #include <RCSwitch.h>

  8. RCSwitch mySwitch = RCSwitch();

  9. void setup() {
  10.   Serial.begin(9600);
  11.   mySwitch.enableReceive(0);  // Receiver on interrupt 0 => that is pin #2
  12. }

  13. void loop() {
  14.   if (mySwitch.available()) {
  15.     output(mySwitch.getReceivedValue(), mySwitch.getReceivedBitlength(), mySwitch.getReceivedDelay(), mySwitch.getReceivedRawdata(),mySwitch.getReceivedProtocol());
  16.     mySwitch.resetAvailable();
  17.   }
  18. }
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 10:55:57 | 显示全部楼层
  1. /*
  2. 【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
  3. 实验一百零七: 2262/2272四路无线遥控套件M4非锁接收板 配四键无线遥控器模组
  4. 安装库:IDE-工具-管理库-搜索RCSwitch-安装
  5. 示例二:Simple example for receiving
  6. */

  7. #include <RCSwitch.h>

  8. RCSwitch mySwitch = RCSwitch();

  9. void setup() {
  10.   Serial.begin(9600);
  11.   mySwitch.enableReceive(0);  // Receiver on interrupt 0 => that is pin #2
  12. }

  13. void loop() {
  14.   if (mySwitch.available()) {
  15.    
  16.     int value = mySwitch.getReceivedValue();
  17.    
  18.     if (value == 0) {
  19.       Serial.print("Unknown encoding");
  20.     } else {
  21.       Serial.print("Received ");
  22.       Serial.print( mySwitch.getReceivedValue() );
  23.       Serial.print(" / ");
  24.       Serial.print( mySwitch.getReceivedBitlength() );
  25.       Serial.print("bit ");
  26.       Serial.print("Protocol: ");
  27.       Serial.println( mySwitch.getReceivedProtocol() );
  28.     }

  29.     mySwitch.resetAvailable();
  30.   }
  31. }
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 11:36:43 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 11:38:13 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 11:40:50 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 11:42:25 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 11:55:06 | 显示全部楼层

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。

实验一百零八: 16X16点阵LED汉字显示屏模块UART接口





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 14:57:50 | 显示全部楼层


LED点阵屏
通过LED(发光二极管)组成,以灯珠亮灭来显示文字、图片、动画、视频等,是各部分组件都模块化的显示器件,通常由显示模块、控制系统及电源系统组成。LED点阵显示屏制作简单,安装方便,被广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 15:08:44 | 显示全部楼层

显示原理
以简单的8X8点阵为例,它共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一行置1电平,某一列置0电平,则相应的二极管就亮;如要将第一个点点亮,则9脚接高电平13脚接低电平,则第一个点就亮了;如果要将第一行点亮,则第9脚要接高电平,而(13、3、4、10、6、11、15、16)这些引脚接低电平,那么第一行就会点亮;如要将第一列点亮,则第13脚接低电平,而(9、14、8、12、1、7、2、5)接高电平,那么第一列就会点亮。

一般我们使用点阵显示汉字是用的16*16的点阵宋体字库,所谓16*16,是每一个汉字在纵、横各16点的区域内显示的。也就是说用四个8*8点阵组合成一个16*16的点阵。比如要显示“你”则相应的点要点亮,由于点阵在列线上是低电平有效,而在行线上是高电平有效,所以要显示“你”字,则它的位代码信息要取反,即所有列(13~16脚)送(0xF7,0x7F),而第一行(9脚)送1信号,然后第一行送0。再送第二行要显示的数据(13~16脚)送(0xF7,0x7F),而第二行(14脚)送1信号。依此类推,只要每行数据显示时间间隔够短,利用人眼的视觉暂停作用,这样送16次数据扫描完16行后就会看到一个“你”字;第二种送数据的方法是字模信号送到行线上再扫描列线也是同样的道理。同样以“你”字来说明,16行(9、14、8、12、1、7、2、5)上送(,0x00,0x00)而第一列(13脚)送、“0”。同理扫描第二列。当行线上送了16次数据而列线扫描了16次后一个“你”字也就显示出来了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-9-6 15:31:11 | 显示全部楼层
点阵屏驱动
由LED点阵显示器的内部结构可知,器件宜采用动态扫描驱动方式工作,由于LED管芯大多为高型,因此某行或某列的单体 LED驱动电流可选用窄脉冲,但其平均电流应限制在20mA内.多数点阵显示器的单体LED的正向压降约在2V左右.但大亮点∮10的点阵显示器单体 LED的正向压降约为6V。大屏幕显示系统一般是将由多个LED点阵组成的小模块以搭积木的方式组合而成的,每一个小模块都有自己的独立的控制系统,组合在一起后只要引入一个总控制器控制各模块的命令和数据即可,这种方法既简单而且具有易装、易维修的特点。LED点阵显示系统中各模块的显示方式有静态和动态显示两种。静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的脉冲信号,反复循环以上操作,就可显示各种图形或文字信息。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-11 02:03 , Processed in 0.044619 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表