基于STM32控制的万能学习型红外遥控器
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本系统采用STM32F103C8作为主控芯片,以多个发光二极管做为指示灯,分别用来提示系统工作的模式、红外信号输入输出指示及其电源指示,以独立键盘作为系统操作的键盘,高可靠性的VS1838B红外一体化接收头组成的红外接收模块和红外发射管组成的红外发射模块等构成。不仅能实现一个遥控器控制多个智能家电,真正实现万能遥控的功能,而且系统具有性能高,功耗低,成本价低等优势。
人们常常会浪费过多时间来寻找控制各种各样家用智能电器遥控器。为了解决人们同时使用众多遥控器Baidu Nhomakorabea烦恼,于是越来越多的自学习型遥控器也就诞生了。不过现在市场上的红外遥控器,基于成本的考量,绝大部分都是采用455KHz的陶振[2]来驱动,选择以12分频系数,其载波频率约为38KHz,此设计方法也使学习型遥控器的设计变得更加简单。但是现在市面上许多常见的遥控器大多都只能控制几种产品,并不是真正实现“万能”红外遥控器[3]功能。
1概述
1.1设计背景
红外遥控器是一种应用较为广泛的遥控。它具有功耗低,体积小,成本低廉等特点。
在目前的家用电器应用领域中,大部分的智能电器都是使用红外遥控器来操作控制家用电器设备,红外遥控器的应用可以说是无处不在[1]。但是随着科技的发展,形色各异的智能家电出现在人们的日常生活中,致使遥控器的种类越来越多。据调查数据表明,每户居民家中至少有3个以上的遥控器,而在这些遥控器中,有极大部分的遥控器是属于红外遥控器。然而随着经济的快速增长,智能家用电器越来越多,各式各样遥控器的数量也随之增长,红外遥控器的数量也在不断增长,各种不便也随之而来。
1.4.2方案二:用STM32F103C8嵌入式芯片其红外发射接收模块电路构成学习型红外遥控器
STM32系列芯片具有低成本,功耗低,芯片内部资源丰富、高性能等优点。STM32F103C8芯片是ARM Cortex-M3内核的工作频率最高可达72MHz,芯片内部集成了高速嵌入式存储器(高达20KByte的SRAM存储器,和128KByte的FLASH存储器)。STM32功能强大,本方案采用它作为主控芯片,红外接收一体头[7]、红外发射管组成的红外发射接收模块、独立式键盘和复位电路组成的本系统。通过此硬件平台并结合c语言编程使本系统实现所需功能。
1.2设计目的
红外通信技术是利用红外线信号来传输数据的,红外通信技术更多的是应用与短距离无线传输的领域中,是一种高可靠、低功耗的无线传输技术。红外通信无需用实体连接线路,并且简单易用、实现成本低,而且从功率方面来考量,相对于其他无线遥控器来说,红外传输它的功耗低于其他无线遥控,因此现已广泛应用在微型的移动设备间的数据交换和家用电器设备的控制。例如智能电视、空调、智能家电、电动窗帘等。
④当学习型遥控器处于学习模式时,再按学习键退出学习模式,进入非学习模式状态。
⑤在非学习模式下按下红外发射键,还原红外编码并发送红外信号,实现控制其红外遥控的智能家电。
⑥在此硬件设计时,要尽力做到硬件模块简单方便、性能稳定且易于实现,促使整个系统电路简化。
⑦软件设计流程清晰,且软件程序思维清晰,要做到以最为简单的程序实现系统所需功能。
1.4.3方案的比较和选择
方案一,以单片机(AT89C51)为主控搭建硬件平台系统,所需外围芯片和元器件较为繁多,成本较高。实现所需功能的原理和方法也较为复杂,需有单片机产生38KHz的载波信号,使得单片机的负荷繁重,同时单片机的主板低,捕捉红外信号时由于单片机主频低,误差较大。该方案成本高,编程算法和电路搭建较为复杂,可靠性和后期的扩展性低,所以方案一不适合该设计。方案二,采用ARM架构ARM Cortex-M3的STM32系列的芯片STM32F103C8为该系统的主控,主控内部集成了丰富的资源,且功能强大,搭建后可用ARM内核芯片推出的仿真器J-Link进行在线联调,使得编程更为方便,大大降低了系统软件编程的难度,而且具有成本低、可扩展性强、功耗低、高性能[7]等特点。显而易见选用方案二对系统的后期扩展较为有益,故本设计选用方案二作为系统的设计方案。
红外技术现已广泛应用于各种智能家用电器和形色各异的娱乐设施中,所以也突出了万能学习型遥控器设计的重要性[4]。但是由于红外遥控领域在全球并无一个统一通信协议标准,在不同地区,不同公司采用的编码格式也都不一样。因此,智能化学习型万能遥控器的产品也倍受人们的喜好,青睐。本设计首先对红外线遥控器编码原理进行了全面的分析,并结合市面上出售的随着智能家电的增长,红外遥控设备也越来越多,因此也决定了学习型遥控器的重大意义。
1.3设计要求
设计一个万能学习型遥控器,其具体设计指标要求如下:
①用红外发射管作为系统的红外发射模块。
②用按键来切换学习型红外遥控的学习模式与非学习模式。当用户操作进入非学习模式下是,通过按下发射信号的按钮来控制红外编码信号的发射。
③当用户按下学习键,系统处于学习模式,此时将被学习的红外遥控器对准红外接收头,按下被学习遥控器的按键发射红外信号,系统完成红外编码的捕捉和记录。
基于STM32控制的万能学习型红外遥控器
红外遥控技术在目前市场上众多应用领域得到了较为广泛的运用。红外遥控技术现已广泛的应用于在家用智能化家电的领域和工业化控制方面。本系统设计采用嵌入式主控芯片来设计万能学习型红外遥控器,采用ARM Cortex-M3内核的STM32系列的芯片为核心部分,结合红外发射、接收模块电路、信号调制电路,独立键盘构成本系统。从红外的发射与接收两个方面详细地介绍了红外无线传输原理,红外信号的编码解析、信号调制、信号发射与接收、解调与解码的原理。本系统实现对不同编码方式(PWM\PPM)的红外信号的捕捉,解码、再生原红外信号,载波并发送红外信号,实现自学习型红外遥控器。本系统所需功能的实现应用到多种电子产品研发技术,其中主要包含C语言高级语言编程技术、单片机开发应用技术和电子线路板设计技术等相关电子应用技术。综合多种设计方案考量及其各个方面的因素,最终决定采用高性能、低成本、低功耗的ARM Cortex-M3内核的嵌入式芯片为系统的核心STM32主控芯片来设计,真正实现能对各种红外遥控信号进行捕捉和再生,真正实现万能学习型红外遥控器。
1.4设计方案选型
1.4.1方案一:采用单片机(AT89C51)设计学习型红外遥控器
学习型红外遥控器采用单片机(AT89C51)、一体化红外接收头、红外发射管、红外接收发射驱动电路、串行I2C总线的EEPROM(可擦写编程存储器)24c02及其独立键盘组成学习型遥控器[5]的控制电路。通过按键来切换学习模式、非学习模式、控制发射红外遥控信号。切换至学习模式状态时,将红外信号捕捉并记录到单片机RAM,再存储到存储器。发射红外信号时,从EEPROM取出记录的红外信号数据,再由单片机(AT89C51)定时器产生38KHz频率的载波信号[6],通过红外发射管发射出红外信号。
人们常常会浪费过多时间来寻找控制各种各样家用智能电器遥控器。为了解决人们同时使用众多遥控器Baidu Nhomakorabea烦恼,于是越来越多的自学习型遥控器也就诞生了。不过现在市场上的红外遥控器,基于成本的考量,绝大部分都是采用455KHz的陶振[2]来驱动,选择以12分频系数,其载波频率约为38KHz,此设计方法也使学习型遥控器的设计变得更加简单。但是现在市面上许多常见的遥控器大多都只能控制几种产品,并不是真正实现“万能”红外遥控器[3]功能。
1概述
1.1设计背景
红外遥控器是一种应用较为广泛的遥控。它具有功耗低,体积小,成本低廉等特点。
在目前的家用电器应用领域中,大部分的智能电器都是使用红外遥控器来操作控制家用电器设备,红外遥控器的应用可以说是无处不在[1]。但是随着科技的发展,形色各异的智能家电出现在人们的日常生活中,致使遥控器的种类越来越多。据调查数据表明,每户居民家中至少有3个以上的遥控器,而在这些遥控器中,有极大部分的遥控器是属于红外遥控器。然而随着经济的快速增长,智能家用电器越来越多,各式各样遥控器的数量也随之增长,红外遥控器的数量也在不断增长,各种不便也随之而来。
1.4.2方案二:用STM32F103C8嵌入式芯片其红外发射接收模块电路构成学习型红外遥控器
STM32系列芯片具有低成本,功耗低,芯片内部资源丰富、高性能等优点。STM32F103C8芯片是ARM Cortex-M3内核的工作频率最高可达72MHz,芯片内部集成了高速嵌入式存储器(高达20KByte的SRAM存储器,和128KByte的FLASH存储器)。STM32功能强大,本方案采用它作为主控芯片,红外接收一体头[7]、红外发射管组成的红外发射接收模块、独立式键盘和复位电路组成的本系统。通过此硬件平台并结合c语言编程使本系统实现所需功能。
1.2设计目的
红外通信技术是利用红外线信号来传输数据的,红外通信技术更多的是应用与短距离无线传输的领域中,是一种高可靠、低功耗的无线传输技术。红外通信无需用实体连接线路,并且简单易用、实现成本低,而且从功率方面来考量,相对于其他无线遥控器来说,红外传输它的功耗低于其他无线遥控,因此现已广泛应用在微型的移动设备间的数据交换和家用电器设备的控制。例如智能电视、空调、智能家电、电动窗帘等。
④当学习型遥控器处于学习模式时,再按学习键退出学习模式,进入非学习模式状态。
⑤在非学习模式下按下红外发射键,还原红外编码并发送红外信号,实现控制其红外遥控的智能家电。
⑥在此硬件设计时,要尽力做到硬件模块简单方便、性能稳定且易于实现,促使整个系统电路简化。
⑦软件设计流程清晰,且软件程序思维清晰,要做到以最为简单的程序实现系统所需功能。
1.4.3方案的比较和选择
方案一,以单片机(AT89C51)为主控搭建硬件平台系统,所需外围芯片和元器件较为繁多,成本较高。实现所需功能的原理和方法也较为复杂,需有单片机产生38KHz的载波信号,使得单片机的负荷繁重,同时单片机的主板低,捕捉红外信号时由于单片机主频低,误差较大。该方案成本高,编程算法和电路搭建较为复杂,可靠性和后期的扩展性低,所以方案一不适合该设计。方案二,采用ARM架构ARM Cortex-M3的STM32系列的芯片STM32F103C8为该系统的主控,主控内部集成了丰富的资源,且功能强大,搭建后可用ARM内核芯片推出的仿真器J-Link进行在线联调,使得编程更为方便,大大降低了系统软件编程的难度,而且具有成本低、可扩展性强、功耗低、高性能[7]等特点。显而易见选用方案二对系统的后期扩展较为有益,故本设计选用方案二作为系统的设计方案。
红外技术现已广泛应用于各种智能家用电器和形色各异的娱乐设施中,所以也突出了万能学习型遥控器设计的重要性[4]。但是由于红外遥控领域在全球并无一个统一通信协议标准,在不同地区,不同公司采用的编码格式也都不一样。因此,智能化学习型万能遥控器的产品也倍受人们的喜好,青睐。本设计首先对红外线遥控器编码原理进行了全面的分析,并结合市面上出售的随着智能家电的增长,红外遥控设备也越来越多,因此也决定了学习型遥控器的重大意义。
1.3设计要求
设计一个万能学习型遥控器,其具体设计指标要求如下:
①用红外发射管作为系统的红外发射模块。
②用按键来切换学习型红外遥控的学习模式与非学习模式。当用户操作进入非学习模式下是,通过按下发射信号的按钮来控制红外编码信号的发射。
③当用户按下学习键,系统处于学习模式,此时将被学习的红外遥控器对准红外接收头,按下被学习遥控器的按键发射红外信号,系统完成红外编码的捕捉和记录。
基于STM32控制的万能学习型红外遥控器
红外遥控技术在目前市场上众多应用领域得到了较为广泛的运用。红外遥控技术现已广泛的应用于在家用智能化家电的领域和工业化控制方面。本系统设计采用嵌入式主控芯片来设计万能学习型红外遥控器,采用ARM Cortex-M3内核的STM32系列的芯片为核心部分,结合红外发射、接收模块电路、信号调制电路,独立键盘构成本系统。从红外的发射与接收两个方面详细地介绍了红外无线传输原理,红外信号的编码解析、信号调制、信号发射与接收、解调与解码的原理。本系统实现对不同编码方式(PWM\PPM)的红外信号的捕捉,解码、再生原红外信号,载波并发送红外信号,实现自学习型红外遥控器。本系统所需功能的实现应用到多种电子产品研发技术,其中主要包含C语言高级语言编程技术、单片机开发应用技术和电子线路板设计技术等相关电子应用技术。综合多种设计方案考量及其各个方面的因素,最终决定采用高性能、低成本、低功耗的ARM Cortex-M3内核的嵌入式芯片为系统的核心STM32主控芯片来设计,真正实现能对各种红外遥控信号进行捕捉和再生,真正实现万能学习型红外遥控器。
1.4设计方案选型
1.4.1方案一:采用单片机(AT89C51)设计学习型红外遥控器
学习型红外遥控器采用单片机(AT89C51)、一体化红外接收头、红外发射管、红外接收发射驱动电路、串行I2C总线的EEPROM(可擦写编程存储器)24c02及其独立键盘组成学习型遥控器[5]的控制电路。通过按键来切换学习模式、非学习模式、控制发射红外遥控信号。切换至学习模式状态时,将红外信号捕捉并记录到单片机RAM,再存储到存储器。发射红外信号时,从EEPROM取出记录的红外信号数据,再由单片机(AT89C51)定时器产生38KHz频率的载波信号[6],通过红外发射管发射出红外信号。