这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 高校专区 » 毕业设计专区 » 红外遥控多功能万年历

共5条 1/1 1 跳转至

红外遥控多功能万年历

专家
2013-01-31 13:31:19     打赏

作者:郑州信息科技职业技术学院 张洋洋 李文博 王明阳

指导教师:曲豪 袁正道

 

  作品简介

 

  一、开发背景:

  多媒体红外控制万年历是基于家用万年历须手动调表而设计的红外遥控万年历。突出特点是它实现了红外遥控并且多功能显示温度、湿度、光照。另加温湿度提醒。字体显示清晰、明亮。给我们带来了诸多方便。

  开发时使用keil4为开发背景吗,protues为仿真工具。

  


  二、结构说明

  (1)数码管显示部分:

  我们的这个作品的显示部分是由数码管来完成的,由于数码管过多,单片机端口不够。所以,我们用了4个74HC595来控制这12个数码管完成显示工作。

  


  (2)时钟芯片部分:

  我们的时间控制芯片选用的是DS1302。外接了一个32.768kHZ的的晶振,备用电池我们用了很普通的3.3V的电子。

  


  (3)指示灯部分:

  当温度、湿度、光照程度超过用户预设定的上限或者低于用户预设定的下限时,单片机会点亮相对应的指示灯,以提醒用户该做什么。

  


  (4)按键部分:

  板子上只有三个按键。如图

  


  (5)红外控制部分:

  我们在单片机上接了一个红外接收器,用一个红外线的遥控器就能对时间等进行设置了。

  


  (6)中央处理器部分:

  我们选用了AT89S52单片机用做控制芯片。

  


  三、功能和使用说明

  多功能万年历最大的亮点是实用性强,主要表现在时间上的调整。我们的多功能万年历主要是用红外遥控器来调整时间。在万年历上安装的还有红外接收器,用来接收由红外遥控器发出的红外信号。红外遥控的调整时间主要用于悬挂后的调整或在不方便调整的地方调整。例如在公共场所的万年历,为了更多的人看到,一般都悬挂的比较高。此时,时间上的调整是非常不方便的。这时,遥控器就起着非常重要的作用,手拿着遥控器就可以轻松的调整时间。

  红外遥控器如下图所示:

  


  使用说明:

  • MENU键:用来设置温度、湿度和光照程度的上限和下限。按MENU键切换并选择,然后输入数值来完成设置。
  • TEST键:闹钟的开关按键。按下为开,再次按下为关。
  • “+”“-”按键:当选择某个数值区域时,可以通过“+”“-”按键来更改数值。
  • 第三行第一个按键是闹钟的总控制按键,可选择是否启用闹钟功能。
  • 中间的播放按键是用来选择时间区域的某个数值,当选中是我们则可以对数值进行更改。
  • 第三行最后一个按键是12/24进制的切换按键,可以选择时间是以12进制显示还是以24禁止显示。
  • C键的功能是当选中某个显示区域的数值,可以通过C键直接清零。
  • 返回按键:在第二行的最后一个,可以返回设置模式。
  • 数字键:有0~9十个数字,可以直接输入数值来对显示进行更改,当输入数值为一位数时,十位用零来代替。

  注意:

  • 此万年历整板使用5V电源供电。

  四、制作成本

  因为我们的作品以家用为主,所以考虑到成本问题。我们的作品总花费在30至40元之间。适合平时家用。

 

  设计说明

 

  一、硬件设计方案

  1、 产品设计思路:

  本设计采用了LED数码管作为万年历显示,采用LED数码管动态扫描,LED数码管价格适中,对于显示数字最合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。本产品还采用红外遥控控制,方便实用,是家庭必备的生活小助手。

  2、 硬件模块:

  单片机89C52,红外遥控模块,控制模块,显示模块,发声模块,遮光模块,温湿度,串行通信

  3、产品设计原理及方案:

  (1)单片机通信的选择方案

  采用串行通信,串行通信时数据是一位一位顺序传送,只用很少几根通信线,占用IO口少,成本低。

  系统的硬件设计与实现

  


  数码显示设计框图

  


  主要单元电路的设计

  (2)万年历单片机主控制模块的设计

  8052 是标准的40引脚双列直插式集成电路芯片,引脚分布请参照---单片机引脚图

  




关键词: 红外     遥控     多功能     万年历     显示     我们     按键    

专家
2013-01-31 13:32:23     打赏
2楼

  光控开关模块的设计

  光控开关是由光敏电阻组成。它能够实现光对整个万年历的开关控制。无光照射时,万年历停止显示。有光时,万年历正常显示。电路如图所示。

  


  温度感应模块的设计

  温度感应模块主要是由DS18B20构成。其电路如图所示:

  


  四个74HC595模块的设计

  74HC595是具有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。 数据在SHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。 移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。电路如图所示

  


  显示模块的设计

  显示模块由9个两位一体(10引脚)的共阳数码管及3个一位(10引脚)共阴数码管组成。电路如图所示。 其中,数码管模块中,将各个数码管相对应管脚连接,再接到单片机上,由单片机编程控制。

  


  二、软件设计方案

  主函数:

  #include

  #include

  #define uchar unsigned char

  #define uint unsigned int

  extern uchar ADC_Read(uchar add0,uchar add1,uchar chl);

  extern void DAC_PCF8591(uchar add,uchar dat);

  extern void init_IIC();

  extern uchar Read_Data(uchar addr);

  extern void Write_DS1302(uchar addr,uchar dat);

  extern uchar Conver_week(bit c,uchar year,uchar month,uchar day);

  extern int Conversion(bit c,uchar year,uchar month,uchar day);

  extern int received(); //函数声明

  sbit SRCLK=P2^5; //595数据线

  sbit DS=P2^7;

  sbit STR=P2^6;

  sbit LED=P1^3; //秒闪烁

  sbit K1=P3^2; //按键

  sbit K2=P3^0;

  sbit K3=P3^1;

  sbit IR=P3^3;

  sbit SW=P0^0; //升温

  sbit JW=P0^1; //降温

  sbit GZ=P0^2; //干燥

  sbit ZS=P0^3; //除湿

  sbit ZG=P0^4; //遮光

  sbit TG=P0^5; //透光

  sbit HIGH=P2^2; //上限指示灯

  sbit LOW=P2^3; //下限指示灯

  sbit WET=P2^0; //湿度指示灯

  sbit LIGHT=P2^1; //光照强度指示灯

  sbit CLOCK=P1^4; //闹钟

  sbit CLOCK_Z=P3^5; //闹钟指示灯

  sbit AM=P3^6; //上午

  sbit PM=P3^7; //下午

  bit Y_N=0; //是否调节时间变量,未调节时间时不送入新的时间

  bit pd=1; //上午下午判断位

  bit nz=1; //闹钟判断位

  bit nzc=0; //闹钟测试与自身闹钟不冲突标志位

  int temp; //光照强度数值

  uchar sz,weekk; //遥控键值缓冲

  uchar v=0,u=0; //直接输入数字调表时十位和个位的切换

  uchar N[4]; //识别码,操作码存放

  uchar mm=1,nn=0; //闹钟变量

  uchar ser=0; //实现1秒的其安居变量

  uchar serr=0; //上下限选择位

  uchar SX[6]; //上下限值储存数组

  uchar day,month;

  char sj;

  int wettm,q=0,qq=0;

  char shuzu[10]; //时间的缓冲数组

  uchar NAO_Z[6]; //闹钟缓冲数组

  uchar code DSY_CODE[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0xbf}; //0~9字幕

  uchar code WEEK_CODE[]={0x80,0xF9,0xA4,0xB0,0x99,0x92,0x82}; //星期子模

  uchar code weima[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf};

  /***************************************************************/

  流程图如下:

  


  以上是产品的简要说明,请专家评委给予建议,谢谢!

 

  作品特色

 

  我们的作品实用性较高,使用起来也较为方便。主要考虑到时间的显示不管在任何地方都会选择高出,方便我们能够有很好的视角来知道时间。正因为如此,当我们对时间进行一系列的设置时通常会取下或站在高出,这样给我们带来诸多不便及安全隐患。而我们的作品恰恰克服了这一点。只要我们手里有一个红外线遥控器就可以对时间进行设置。这样就给我们省去了很多麻烦。

  在创新方面,体现在多功能上,我们的作品不仅有时间的显示,还有农历转换,我们还用了温湿度传感器和光敏电阻用来采集温湿度和光照的信息,并用数码管显示出来。并且可以设置上限和下限,当采集的各个信息超过预设的上限或者低于预设的下限时,相对应的指示灯就会点亮。提醒用会做相应的动作。

 

系统演示视频:http://v.eepw.com.cn/video/play/id/2794

菜鸟
2013-04-11 12:11:06     打赏
3楼

额 哥哥 要是把子程序打包分享了就更好了 真心需要啊


高工
2013-04-13 19:19:59     打赏
4楼
这个不错,先进行软件仿真,再硬件实现

高工
2013-04-14 10:42:03     打赏
5楼

参赛资料?

把软硬件资料打包传上来,就完美了……



共5条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]