EDN China > 设计实例 > 消费电子设计 > 家居智能控制系统 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) 基于NiosⅡ的学习型遥控器设计

电子设计工程 湖南城市学院 肖卫初 邓曙光 朱珍奇 谭首峰 龙卫?? 2010年12月15日 ?? 收藏0

  O 引言

  红外遥控器在家电产品中被广泛应用,但各产品的遥控器采用了不同的频率或编码方式,导致这些遥控器不能相互通用,这给人们的生活带来了诸多不便。针对这个问题,很多厂家设计和生产了一种称为万能遥控器的红外信号遥控装置,这类遥控器大多数采用复制遥控器红外波形达到学习目的,其方法简单,实现起来较方便,通过对不同普通遥控器发出的红外线编码进行学习和存储,可以对多个家用电器进行遥控,从而可以减少家庭中遥控器的数目。但是,这类遥控器通常采用专用 ASIC或单片机来实现,并且只能接收单一载波的红外信号编码,导致实际使用时有诸多局限,主要体现在:如果家用电器遥控装置的载波频率不同,万能遥控器将无能为力;不同的家用电器使用单一的遥控器界面,容易产生混淆和误操作;受存储空间的限制,能够支持的遥控器数目有限。

  因此,本文设计了一种基于NiosⅡ的红外学习型遥控器,把载波频率测量、红外信号解调、脉宽测量、调制发送IP核集中到FPGA器件上,极大地简化外围硬件电路,利用了Nios软核CPU的32位处理器,可以很好地对脉宽进行精确测量,同时提高处理速度,能够精确地对载波频率进行测量,并将原始的红外信号进行最大程度上无失真还原,解决了单片机因时钟频率低无法对载波频率进行测量的瓶颈,实现了对各种各样红外遥控的学习,真正完成了学习型遥控器的学习功能。

  1 整体设计方案

  系统主要由NiosⅡ处理器、Avalon总线、EPCS控制器、SDRAM控制器、FLASH控制器、输入输出I/O口、等精度测量载波频率IP核、红外信号解调IP核、红外编码脉宽测量IP核、红外发送调制逻辑电路、中断控制器等组成,如图1所示。上电后,系统通过EPCS调用系统配置信息,系统进行初始化。当“学习”键按下时,通过I/O口中断产生一个测量红外载波频率请求信号,此时“学习”指示灯亮。当检测到外部遥控红外信号时,处理器通过 Avalon总线调用等精度测量载波频率IP核开始测量频率,“学习”指示灯熄灭表示学习载波频率成功。接下来通过“家电”按键即可将该载波频率储存到该家电红外编码FLASH载波频率存储区域。对应的“家电”指示灯亮,表示可以进入该家电红外遥控信号学习或发送阶段。学习时,只需将家电遥控器发送窗对准学习型遥控器的接收窗,发送红外遥控信号。此时Nios软核处理器会通过Avalon总线调用红外信号解调IP核和红外编码脉宽测量IP核,完成红外信号的解调和一帧完整编码脉宽高低电平时间测量(此过程中处理的所有数据存储在SDRAM中)。当“学习”灯再次亮起,表示该信号已得到确认。按下学习型遥控器的任一功能键,即可将该信号送到指定的该家电按键FLASH存储区域;发送时,先选择“家电”选择键(即选定了载波频率),然后按下“功能键” 时,NiosⅡ处理器会自动调用FLASH存储数据,通过红外发送逻辑电路调制到载波上,完成红外信号还原。

整体设计方案

  2 硬件电路设计

  2. 1 主控制电路设计

  主控制电路主要以Altera FPGA系列Cyclone EPlCl2Q240C8器件为载体,通过SoPC技术构建嵌入式软核NiosⅡ处理器平台,运用Verilog HDL硬件描述语言设计等精度测量载波频率IP核、红外信号解调IP核、红外编码脉宽测量IP核和红外发送调制逻辑电路,以实现载波的精确测量,红外信号解调、脉宽测量和调制功能。复位电路采用了专用看门狗芯片CATl025,以避免电路的死循环,同时也可以通过手动按下复位键,使系统重新启动。时钟是采用外部时钟方式,其频率为50 MHz。主控制电路图如图2所示。

主控制电路图

  2.2 外围硬件电路设计

  2.2.1 按键与指示电路

  为了简化软件程序,结合FPGA多I/O口的优势,本设计采用独立按键方式,当按键按下时,FPGA对应的I/O口会检测到低电平;按键弹起时,FPGA 对应的I/O口会检测到高电平。对于指示电路,采用不同颜色的发光二极管来指示不同的状态或控制不同的家用电器,当其中的一个指示灯闪烁时,表示正在学习对应的家电遥控器或者是发送对应的家电遥控信号。

  2.2.2 红外接收和发送电路

  红外接收电路由红外二极管、三极管9014及电阻组成。当未检测到红外信号时,红外接收二极管电阻很大(近似于断路),三极管9014处手截止状态,此时 IR_RECEIVE端检测到高电平;当检测到红外信号时,红外接收二极管电阻较小,这时三极管9014发射极正偏,集电极反偏,三极管处于放大状态。红外信号通过共发射极电路放大后输入到FPGA的I/O口18脚,交给Nios软核进行处理。发送时,经过红外发送调制逻辑电路调制后的红外信号从FPGA I/O口16脚输出,红外信号通过三极管9014再次倒相放大后从集电极输出,驱动红外发射管辐射出红外调制信号,从而实现红外遥控信号的再生。红外发送和接收电路如图3所示。


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

NiosⅡ? 遥控器? SoPC? Cyclone?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈