宁波市网站建设_网站建设公司_Windows Server_seo优化
2026/1/9 13:47:13 网站建设 项目流程

第三章 红外遥控器硬件设计

3.1 硬件的选择
在本设计中的主要模块有,红外发射接收模块,学习模块,WiFi模块,其中所需要的装置就有,红外发射接收装置,WiFi连接装置,单片机等等。

3.2 红外接收装置
NB0038
本设计是需要将把接收到的红外信号,将其解码为单片机可以识别的信号模式,在我通过对红外接收头的了解以及研究后,以及对信号影响,成本的方面的考虑后,最后决定使用NB0038一体化红外接收头。
NB0038一体化红外接收头 特点 封装 优点
集成接收接收机的遥控信号,检测,放大,整流集于一身,38.0kHZ的中心独立PIN二极管与集成在同一封装中的前置放大器。 外包装环氧树脂 可以防止自然光的功能干扰。,NB已在抗自然光强大的性能,可避免不必要的脉冲输出,可以减少自然光的反射干涉。
3.4 单片机
单片机是一种集合了总多功能的集成电路芯片,拥有数据处理能力、随机存储、只读存储的功能,并且单片机上有多种I/O口,通过 这些I/O口与其他设备连接。基于本次设计是设计一个家用的万能遥控器。本设计使用stm8系列的单片机来完成远程遥控器的设计。

STM8系列是意法半导体公司生产的8位的单片机,STM8S系列单片机的基本结构如图所示,3.4.3 ch340
CH340是一个可以实现USB转串口的转接芯片,使得ESP8266的串口可以通过CH340转接芯片来连接主机。在红外方式下,CH340外加红外收发器即可构成USB红外线适配器,实现SIR红外线通讯。
CH340特点 全速USB设备接口,兼容USBV2.0,外围元器件只需要晶体和电容
仿真标准串口,用于升级原串口外围设备,或者通过USB增加额外串口
计算机端Windows操作系统下的串口应用程序完全兼容,无需修改
硬件全双工串口,内置收发缓冲区,支持通讯波特率50bps~2Mbps
支持常用的MODEM联络信号RTS、DTR、DCD、RI、DSR、CTS
通过外加电平转换器件,提供RS232、RS485、RS422等接口
支持IrDA规范SIR红外线通讯,支持波特率2400bps到115200bps
软件兼容CH341,可以直接使用CH341的驱动程序
支持5V电源电压和3.3V电源电压
提供SSOP-20无铅封装,兼容RoHS

第4章红外遥控器程序设计

4.1 WiFi模块程序设计
在本设计中,使用的是ESP8266 WiFi模块来完成WiFi连接。在设计过程中需要用AT指令来进行命令下达以及通过TTL信号通信来完成信息传输。

我需要使用ESP8266三种工作模式中的STA模式来完成设计,首先介绍一下ESP8266的三种工作模式。
ESP8266三种工作模式
AP模式(Wireless Access Point) STA模式(Station) STA+AP模式
无线接入点的简称。工作在AP模式下的8266就像是一个热点一样,手机、电脑等都可以连接到此“热点”,从而实现了手机、电脑等设备可以和8266进行局域网的无线通信。此模式下的8266是一个无线网络的创建者,可以理解为此时8266是被别人连接,即此时的8266是一个服务器端,为被他人连接的模式。 工作在STA模式下的8266就像是一个接收机一样,它可以接收来自无线路由器发出的信号,实现了8266通过接收路由器的信号而能够连接互联网,如果把8266安装在硬件设备上,就可以实现硬件设备的远程控制。可以理解为此时8266是主动去连接别人,即此时的8266是一个客户端,为主动去连接他人的模式。 两种模式共存,既可以通过路由器连接到互联网,也可以作为WiFi热点,使其他设备连接到这个模块,实现广域网与局域网的无缝切换。

使用ESP8266连接WiFi步骤如下:
1、添加相关头文件,从SDK中复制ip_addr.h、queue.h、spi_flash.h到新工程的根目录下的include文件夹中。
2、读取当前的工作模式,并修改

wifi_get_opmode();//读取当前的工作模式
wifi_set_opmode(0x01); //设置当前的工作模式,并保存到flash
wifi_set_opmode_current(0x01); //设置当前的工作模式,不保存到flash
3、扫描当前环境下的wifi信息,并打印出来
wifi_station_scan(NULL,scan_done);
os_memcpy(&stationConf.ssid, " xyzWiFi", 32);
os_memcpy(&stationConf.password, “123456”, 64);
其中xyzWiFi为WiFi名称,123456为WiFi密码
4、连接wifi
先定义一个结构体,用来存储家里的wifi信息
struct station_config stationConf;
os_memcpy(&stationConf.ssid, " xyzWiFi", 32);
os_memcpy(&stationConf.password, “123456”, 64);
设置wifi信息,并连接
wifi_station_set_config_current(&stationConf);
wifi_station_connect();
5、查看wifi是否已经连接
wifi_station_get_connect_status();
若返回值为“STATION_GOT_IP”,说明WiFi连接成功。

4.2 手机APP设计
本设计中的APP通过brinker中的ESP8266WiFi接入模块以及自定义页面来完成,操作步骤如下:
首先在brinker提供的ESP8266WiFi接入模块模块程序中找到如下变量,填入连接的WiFi热点名(ssid)、密码(pswd)

结束语

现在已经是2020年了,在科技如此发达的社会,无论谁的家中都有着大量的家用电器,而大量的电器有对应着许许多多的遥控器,平添了不少麻烦。然而,由于不同的红外遥控编码格式,以使各种产品不是所有遥控器兼容。本设计的ESP8266学习型遥控器,通过编码和解码红外线存储完整的红外遥控编码的芯的设计时,产生直接使用微控制器定时器38KH载波信号。遥控器可以成功记忆,学习和使用的红外遥控编码,具有体积小,功能强大、微功耗、保密性好、线路简单、成本低等优点,并且对所有家用电器都通用,非常方便。

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询