文档库 最新最全的文档下载
当前位置:文档库 › 红外接收程序讲解

红外接收程序讲解

红外接收程序讲解
红外接收程序讲解

红外接收程序讲解

1、红外遥控系统

通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作,如图1所示。

发射部分包括键盘矩阵、编码调制、LED红外发送器;

接收部分包括光、电转换放大器、解调、解码电路。

下面,我们将使用下面两种设备:

另外,使用51单片机进行解码。

2、原理图

从原理图看出,IR的data脚与51的PD2(P3.2)相连。

2、红外发射原理

要对红外遥控器所发的信号进行解码,必须先理解这些信号。

a) 波形

首先来看看,当我们按下遥控器时,红外发射器是发送了一个什么样的信号波形,如下图:

由上图所示,当一个键按下超过22ms,振荡器使芯片激活,将发射一组108ms的编码脉冲(由位置1所示)。如果键按下超过108ms仍未松开,接下来发射的代码(连发代

码由位置3所示)将仅由起始码(9ms)和结束码(2.5ms)组成。下面把位置1的波形放大:

由位置1的波形得知,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(用户编码)(9ms~18ms),高8位地址码(用户编码)

(9ms~18ms),8位数据码(键值数据码)(9ms~18ms)和这8位数据的反码(键值

数据码反码)(9ms~18ms)组成。

b) 编码格式

遥控器发射的信号由一串0和1的二进制代码组成.不同的芯片对0和1的编码有所不同。通常有曼彻斯特编码和脉冲宽度编码。XS-091遥控板的0和1采用PWM方法编码,即脉冲宽度调制。下图为一个发射波形对应的编码方法:

放大0和1的波形如下图:

这种编码具有以下特征:以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”。

3、红外接收原理

a) 波形

红外接收头将38K载波信号过虑,接收到的波形刚好与发射波形相反:

放大,位定义0和位定义1波形如下:

4、解码原理及算法

注:代码宽度算法:

16位地址码的最短宽度:1.12×16=18ms 16位地址码的最长宽度:2.24ms×16=36ms

可以得知8位数据代码及其8位反代码的宽度和不变:(1.12ms+2.24ms)×8=27ms

所有32位代码的宽度为(18ms+27ms)~(36ms+27ms)

对于红外线遥控对于很多电子爱好者来讲,都感觉到非常神奇,看不到,摸不着,但能实现无线遥控,其实控制的关键就是我们要用单片机芯片来识别红外线遥控器发出红外光信号,即我们通常所说的解码。单片机得知发过来的是什么信号,然后再做出相应的判断与控制,如我们按电视机遥控器的频道按钮,则单片机会控制更换电视频道,如按的是遥控器音量键,则单片机会控制增减音量。

解码的关键是如何识别“0”和“1” !!

从位的定义我们可以发现“0”、“1”均以 0.56ms的低电平开始,不同的是高电平的宽度不同!,“0”为0.56ms,“1”为1.68ms,所以必须根据高电平的宽度区别“0”和“1”。

如果从0.56ms低电平过后,开始延时,0.56ms以后,若读到的电平为低,说明该位为“0”,反之则为“1”,为了可靠起见,延时必须比0.56ms长些,但又不能超过1.12ms,否则如果该位为“0”,读到的已是下一位的高电平,因此取(1.12ms+0.56ms)/2=0.84ms 最为可靠,一般取0.84ms左右均可。根据码的格式,应该等待9ms的起始码和4.5ms 的结果码完成后才能读码。

5、实例代码:

注意一下几点:

1. 从上面“红外接收头与单片机连接原理图”来看,红外接收头的型号脚是与51的int0相连,所以需要使用INT0(外部中断0).

2. 由于解码过程中涉及到延时,为精确起见,我们选择使用定期时1来计时。

实例代码:

[C++]view plaincopy

1.#include

2.#include

3.

4.// 函数原型

5.void SystemInit(void);

6.void Delay_840us(void);

7.void Delay_2400us(void);

8.void LedDisp();

9.unsigned char GetCode(void);//获得码

10.void delay(unsigned char loop);

11.

12.// 位变量

13.sbit IRIN = P3^2;

14.sbit BEEP = P1^6;

15.sbit swch = P1^7;

16.

17.// 变量

18.unsigned char KeyValue; //机器码

19.unsigned char MaValue; //键值码;

20.unsigned char disbuf[4]; //数码管显示缓冲

21.unsigned char scan[4]={0x04,0x08,0x10,0x20}; //p2位选择

22.unsigned char code table[16] = //共陰碼

23.{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7C,0x39,0x5E,0x79,0x7

1};

25./**

26. * 延时

27. */

28.void delay(unsigned char loop)

29.{

30. unsigned char i;

31.for(i=0;i>8);

32. TR1=1;

33.while(!TF1);

34. TF1=0;

35. TR1=0;

36.}

37.

38./**

39. * 延时9ms

40. */

41.void Delay_9000us(void)

42.{

43. TL1 = 153.6;

44. TH1 = 223.6;

45. TR1 = 1;

46.while(!TF1);

47. TF1 = 0;

48. TR1 = 0;

49.}

50.

51./**

52. * 延时4.5ms

53. */

54.void Delay_4500us(void)

56. TH1 = 239.8;

57. TL1 = 204.8;

58. TR1 = 1;

59.while(!TF1);

60. TF1 = 0;

61. TR1 = 0;

62.}

63.

64./**

65. * 系统初始化

66. */

67.void SystemInit(void)

68.{

69. IRIN = 1;

70. IT0 = 1; //INT0负跳变触发

71. TMOD = 0x10; //定时器1工作在方式1

72. EA = 1;

73. EX0 = 1;

74.}

75.

76./**

77. * 读码

78. */

79.unsigned char GetCode()

80.{

81. unsigned char n;

82.

83.static temp = 0;

84.

85.for( n = 0; n < 8; n++ )

87.while(!IRIN); // 等待高电平,开始解码

88.

89. Delay_840us(); // 延时0.84ms

90.

91.if(IRIN) // 若仍然为高电平,则为1,否则为0

92. {

93. temp = (0x80|(temp>>1)); // 1

94.while(IRIN); //等待跳变成低电平

95. }

96.else {

97. temp=(0x00|(temp>>1)); // 0

98. }

99. }

100.

101.return temp;

102.}

103.

104./**

105. * 数码管显示

106. */

107.void LedDisp()

108.{

109. unsigned char i;

110.for(i=0;i<4;i++)

111. {

112. P0=table[disbuf[i]];

113. P2 = scan[i];

114. delay(50);

115. P0=0x00;

116. }

117.}

118.

119.void main(void)

120.{

121. SystemInit();

122.

123.while(1)

124. {

125. //以下是查表显示

126. disbuf[0]=(((KeyValue&0xf0)>>4)&0x0f); 127. disbuf[1]=KeyValue&0x0f;

128. disbuf[2]=(((MaValue&0xf0)>>4)&0x0f); 129. disbuf[3]=MaValue&0x0f;

130. LedDisp();

131. }

132.}

133.

134.

135.void interr_ir(void) interrupt 0

136.{

137. /**

138. * 用户码和机器码

139. */

140. unsigned char addrl,addrh,num1,num2; 141.

142. EA = 0; //先关闭外部中断0

143.

144. Delay_9000us(); // 检测9ms开始码145.

146.if (IRIN) { // 检测是否为干扰信号147. EA = 1; // 重新开启外部中断0

148.return ; // 退出解码

149. }

150.

151.while(!IRIN); // 等待跳为高电平152.

153. Delay_4500us(); // 检测4.5ms结果码154.

155.if (IRIN) { // 检测是否为干扰信号156. EA = 1; // 重新开启外部中断0 157.return ; // 退出解码

158. }

159.

160. // 读码

161. addrl=GetCode(); // 用户编码高位162. addrh=GetCode(); // 用户编码低位163. num1=GetCode(); // 机器码

164. num2=GetCode(); // 机器码反码165.

166. //校验是否为错码

167.if(num1!=~num2)

168. {

169. KeyValue=14;

170. EA=1;

171.return;

172. }

173.

174. KeyValue=num2;

175. MaValue=addrh;

176.

177. EA=1;

178.}

代码分析(只分析关键部位):

1. 系统初始化SystemInit()

系统初始化时,我们设置IRIN为高电平,同时把IT0设置成1,即下降沿(负跳变)触发中断。这是用于接收波形的引导码是从低电平开始的(如上面接收波形所示)。这样,当按下按键时,红外接收到信号,IRIN则发生从预先设置的高电平跳为低电平,从而产生中断。

2. 解码--中断程序 interr_ir(void)

首先,第一步把EX0关中断,这步至关重要,因为一个接收波形许多的下降沿,这样会产生干扰中断。

接下来,使用定期时0延时9ms,跳过开始码。注意,延时后,需要检测一下干扰信号。

下一步,while(!IRIN); 等待4.5ms高电平的到来,再延时4.5ms,跳过结果。

引导码过后,开始读码,执行GetCode():

32位数据码,分4次读取,所以执行4次GetCode(),读取一个字节数据过程如下:[C++]view plaincopy

1.unsigned char GetCode()

2.{

3. unsigned char n;

4.

5.static temp = 0;

6.

7.for( n = 0; n < 8; n++ )

8. {

9.while(!IRIN); // 等待高电平,开始解码

10.

11. Delay_840us(); // 延时0.84ms

12.

13.if(IRIN) // 若仍然为高电平,则为1,否则为0

14. {

15. temp = (0x80|(temp>>1)); // 1

16.while(IRIN); //等待跳变成低电平

17. }

18.else {

19. temp=(0x00|(temp>>1)); // 0

20. }

21. }

22.

23.return temp;

24.}

1. 从上述位定义看,位0和位1都是0.56ms的低电平过后,高电平开始延时。所以,读码的第一步while(!IRIN);是等待这个0.56ms的低电平之后的高电平。

2. 从高定平到后开始延时0.84ms

3. 判断0.84ms的波形高电平还是低电平。若仍然是高电平证明,该位为“1”,否则为“0”。

到这里读码结束。

3. 校验

由于32位数据码中,后两个字节是键数据码和健数据反码。可以通过这两个字节数来实行校验。即,把前一个字节去反判读是否等于后一字节。

红外遥控器电路(接收电路)

电子技术基础课程设计任务书2014-2015学年第一学期第18周-19周

目录 1、总体方案的设计与选择........................... 错误!未定义书签。 1.1、选题及要求 (1) 1.2、原理与方案 (1) 1.2.1、红外线与红外接收二极管 (1) 1.2.2、红外接收电路 (1) 1.2.3、电源电路 (3) 1.2.4、红外接收总电路 (3) 1.2.5、元器件的选择 (4) 1.2.3方案确定 (4) 2、总电路图,印刷图及相关说明 (5) 2.1、原理图 (5) 2.2、清单图 (5) 2.3、PCB (6) 2.4、PCB三维图 (6) 2.5、PCB板3D显示图 (7) 3、计算机仿真及相关说明 (9) 3.1、仿真电路图 (9) 3.2、仿真过程 (9) 4、电路制作与调试 (11) 4.1、元件确定 (11) 4.2、元件检测 (11) 4.3、仪表仪器 (11) 4.4、电路板制作 (11) 4.5、电路板调试 (13) 4.6、调试常见故障与处理方法 (15) 5、心得体会 (16) 6、参考文献 (17)

引言 随着时代的发展,人民的生活水平不断提高,各种家用电器设备也随之进入千家万户,一些家用电器开关在使用的时候非常麻烦,为了方便大家使用,现在社会上也设计出了各种各样的控制开关,其中包括红外遥控开关,红外遥控是目前家用电器中用的较多的遥控方式。 红外遥控有以下特点: 1、抗干扰能力强。由于其无法穿透墙壁,故不同房间的家用电器可以使用通用的遥控器而不会产生相互的干扰; 2、电路调试简单,操作简单; 3、成本低,符合大众消费观念。 由于其抗干扰能力强,操作简单等诸多有点,红外遥控已经广泛应用于彩色电视机、DVD、空调、组合音响等各种家用电器上。 基于红外遥控发射与接收原理,我们小组设计了一款简易红外遥控电路,通过这个设计,不仅可以明白红外遥控的工作原理,还能在之后自己DIY红外遥控开关。相信通过这个设计也能让其他人对红外遥控开关的工作原理有进一步的了解。

38khz红外发射与接收解析

38khz红外发射与接收 38khz红外发射与接收 红外线遥控器在家用人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红,橙,黄,绿,青,蓝,紫,如图1所示. 由图可见,红光的波长范围为0.62μm~0.76μm,比红光波长还长的光叫红外线.红外线遥控器就是利用波长0.76μm~1.5μm之间的近红外线来传送控制信号的. 红外线的特点是不干扰其他电器设备工作,也不会影响周边环境. 人们见到的红外遥控系统分为发射和接收两部分.发射部分的发射元件为红外发光二极管,它发出的是红外线而不是可见光,如图2所示. 常用的红外发光二极管发出的红外线波长为940nm左右,外形与普通φ5mm发光二极管相同,只是颜色不同.一般有透明,黑色和深蓝色等三种.判断红外发光二极管的好坏与判断普通二极管一样的方法.单只红外发光二极管的发射功率约100mW.红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定. 接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度.红外接收二极管一般有圆形和方形两种.由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路.然而现在不论是业余制作或正式的产品,大都采用成品的一体化接收头,如图3所示.红外线一体化接收头是集红外接收,放大,滤波和比较器输出等的模块,性能稳定,可靠.所以,有了一体化接收头,人们不再制作接收放大电路,这样红外接收电路不仅简单而且可靠性大大提高. 图3是常用两种红外接收头的外形,均有三只引脚,即红外接收头的主要参数如下: 工作电压:4.8~5.3V 工作电流:1.7~2.7mA 接收频率:38kHz 峰值波长:980nm 静态输出:高电平 输出低电平:≤0.4V 输出高电平:接近工作电压 3.红外线遥控发射电路 红外线遥控发射电路框图如图4所示. 框图4是目前所有红外遥控器发射电路的功能组成,其中的编码器即调制信号,按遥控器用途的编码方式可以很简单,也可以很复杂.例如用于电视机,VCD,DVD 和组合音响的遥控发射的编码器,因其控制功能多达50种以上,此时的编码器均采用专用的红外线编码协议进行严格的编程,然而对控制功能少的红外遥控器,其编码器是简单而灵活.前者编码器是由生产厂家的专业人员按红外遥控协议进行编码,而后者适用于一般图4中编码器的编码信号对38kHz的载波信号进行调制,再经红外发射管D向空间发送信号供遥控接收端一体化接收头接收,解调输出,再作处理.

红外接收头详解

红外接收电路通常由红外接收二极管与放大电路组成,放大电路通常又由一个集成块及若干电阻电容等元件组成,并且需要封装在一个金属屏蔽盒里,因而电路比较复杂,体积却很小,还不及一个7805体积大! SFH506-38与RPM-638是一种特殊的红外接收电路,它将红外接收管与放大电路集成在一体,体积小(大小与一只中功率三极管相当),密封性好,灵敏度高,并且价格低廉,市场售价只有几元钱。它仅有三条管脚,分别是电源正极、电源负极以及信号输出端,其工作电压在5V左右.只要给它接上电源即是一个完整的红外接收放大器,使用十分方便。 它的主要功能包括放大,选频,解调几大部分,要求输入信号需是已经被调制的信号。经过它的接收放大和解调会在输出端直接输出原始的信号。从而使电路达到最简化!灵敏度和抗干扰性都非常好,可以说是一个接收红外信号的理想装置。 HS0038信号电平: 38kHz红外发射接收到时:OUT低电平输出 38kHz红外发射接收不到时:OUT高电平输出 Hs0038的使用注意事项: 1: 38kHz红外发射信号在HS0038接收角度范围边沿区域时,接收信号不断振荡无法稳定,因此为保证信号质量,使用时发射接收尽力正对为好; 2: HS0038用于数据通讯时,在标准RS232下,波特率设置不要大于2400bps,否则HS0038无法区分到接收的信号(2400bps接近其带宽极限了)。 红外线一开始发送一段13.5ms的引导码,引导码由9ms的高电平和4.5ms 的低电平组成,跟着引导码是系统码,系统反码,按键码,按键反码,如果按着键不放,则遥控器则发送一段重复码,重复码由9ms的高电平,2.25ms的低电平,

红外遥控信号的解码

红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。 1 红外遥控系统 通用红外遥控系统由发射和接收两大部分组成。应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。 图1 红外线遥控系统框图 2 遥控发射器及其编码 遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理(一般家庭用的DVD、V CD、音响都使用这种编码方式)。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征: 采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,其波形如图2所示。

图2 遥控码的“0”和“1” (注:所有波形为接收端的与发射相反) 上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射,如图3所示。 图3 遥控信号编码波形图 UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6121G最多额128种不同组合的编码。 遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间,图4为发射波形图。 图4 遥控连发信号波形 当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个引导码(9ms),一个结果码(4.5ms),低8位地址码(9ms~18ms),高8位地址码(9ms~18ms),8位数据

单片机红外电视遥控器C51程序代码单片机程序

单片机红外电视遥控器C51程序代码单片机程序 //************************************************************** //名称:单片机红外电视遥控器C51程序代码() /*-------------------------------------------------------------- 描述: 一般红外电视遥控器的输出都是用编码后串行数据对38~40kHz的方波进行 脉冲幅度调制而产生的.当发射器按键按下后,即有遥控码发出,所按的键 不同遥控编码也不同。这种遥控码具有以下特征: 采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms 的组合表示二进制的“1”。上述“0”和“1”组成的32位二进制码经38kHz 的载频进行二次调制,然后再通过红外发射二极管产生红外线向空间发射。 一般电视遥控器的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16位 为8位的操作码和8位的操作反码,用于核对数据是否接收准确。 根据红外编码的格式,发送数据前需要先发送9ms的起始码和4.5ms的结果码。接收方一般使用TL0038一体化红外线接收器进行接收解码,当TL0038接收到38kHz红外信号时,输出端输出低电平,否则为高电平。 所以红外遥控器发送红外信号时,参考上面遥控串行数据编码波形图,在低 电平处发送38kHz红外信号,高电平处则不发送红外信号。 ----------------------------------------------------------------*/ //编辑: //日期: //**************************************************************** #define uchar unsigned char //定义一下方便使用 #define uint unsigned int #define ulong unsigned long #include //包括一个51标准内核的头文件 static bit OP; //红外发射管的亮灭 static unsigned int count; //延时计数器 static unsigned int endcount; //终止延时计数 static unsigned char flag; //红外发送标志 char iraddr1; //十六位地址的第一个字节 char iraddr2; //十六位地址的第二个字节 void SendIRdata(char p_irdata); void delay(); //************************************************************** void main(void) {

红外线接收控制制作

红外线接收控制制作

————————————————————————————————作者:————————————————————————————————日期:

红外线接收控制器的制作 在生活中,我们常用到红外线控制各类电器,如彩电、空调、电风扇等,为我们带来较多的方便,但有时我们仍感到不方便。如看完电视后,用遥控器只能关掉电视主电源,电视仍处于待机状态,使用者还得走到电视跟前,按下电视电源开关方能放心。若想看电视,还得动身开电视,显得很麻烦,尤其是冬天躺在床上看电视,上上下下,深感不便。本文以利用红外遥控器来遥控风扇的制作方法为例(可任选一只红外线遥控器,能调速,软件稍作改变,可增加定时功能等),来介绍红外线接收控制器的制作方法,如果制作电视交流电源的开、关控制器,可与电视共用一只遥控器,制作也较简单些。 制作思路 红外遥控发射器是利用红外线作载体传送信息的,发射周期不等的经过调制后串行码,该串行码一般由引导码、用户识别码、操作码组成。经红外接收头解码后得到一串周期不等的矩形波,如示意图1。 不同型号的遥控发射器的波形宽度不同,即周期T1、T2……不同,在不知手头遥控发射器的波形周期的情况下,首先要制作一个检测红外线周期的工具。根据测得的周期规律来制作红外线接收控制器。 制作方法 检测红外周期的器件制作,见图2。 当红外接收头没有接收到发射器发送来的红外线,其输出端输出高电平(约+5V)。当接收到红外线,输出端电平变低,送到单片机AT89C2051的外部中断1口即INT1,使其发生中断而进入中断服务:启动定时器1并开始计数,

相当于在图1的A点,1个周期后即C点,单片机第二次中断,关定时器1,记下周期T1(实际上只记下TH1的数值,TL1的值可以丢弃),然后清TH1、TL1,再启动定时器1重新计数,第二个周期完后,同样会引起单片机发生中断,再记下周期T2……,如此记下40-50个周期(一般红外编码为4字节,即32BIT,之前还有引导码,又因接收到的红外数据不一定是从引导码开始,要分析一次完整的串行码,应尽可能多记下红外矩形波周期数),接收完后,通过按轻触开关将各记下的各周期的TH1在数码管显示出来以作分析(每按一次轻触开关,显示下一个周期数)。 编程方法 #define CNT 50//预测50个红外线周期 DATA Byte value_h[CNT];//记录周期的变量(数组) DATA Byte count=0;//接收到的周期数 code Byte arr[][2]={0x90,0x6f, //0,尽可能按键0、键1……的先后顺序放,以符合习惯 0x00,0xff, //1 0x10,0xef, //9 0xd0,0x2f //power 13 }; /*在接收红外线的外部中断1函数中编写如下的键码转换语句:*/ DATA Byte arrtmp[4]; DATA Byte Keytmp; //转换后的键值寄存变量 DATA Byte Keyval=NOKEY; bit KeyOk;// 键值转换完成与否的标志 bit d_Ok;//接收到一个完整的键码标志 void int1(void) interrupt 2 { if(TH1==TL1&&TL1==0) //判断是否是第一次接收到红外数据 { TR1=1; } else { TR1=0; value_h[count]=TH1; TH1=TL1=0; TR1=1; count++; if(count==CNT) { EX1=0; count=0; }

红外接收头工作原理

红外接收头一般是接收、放大、解调一体头,一般红外信号经接收头解调后,数据“0”和“1”的区别通常体现在高低电平的时间长短或信号周期上,单片机解码时,通常将接收头输出脚连接到单片机的外部中断,结合定时器判断外部中断间隔的时间从而获取数据。重点是找到数据“0”与“1”间的波形差别。 3条腿的红外接收头一般是接收、放大、解调一体头,接收头输出的是解调后的数据信号(具体的信号格式,搜“红外信号格式”,一大把),单片机里面需要相应的读取程序。 红外通信是利用红外技术实现两点间的近距离保密通信和信息转发。它一般由红外发射和接收系统两部分组成。发射系统对一个红外辐射源进行调制后发射红外信号,而接收系统用光学装置和红外探测器进行接收,就构成红外通信系统。 先讲一讲什么是红外线。我们知道,人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光的波长范围为0.62~0.76μm;紫光的波长范围为0.38~0.46μm。比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。 常用的红外接收头有以下外形:更多… IRM38A系列???????? IRM138S系列????????? IRM38B系列?????????????? MN系列???????????????? IRM338系列 相关的规格书请到这里下载:红外接收头规格书 红外遥控系统 常用的红外遥控系统一般分发射和接收两个部分。发射部分的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。目前大量使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通发光二极管相同,只是颜色不同。红外发光二极管一般有黑色、深蓝、透明三种颜色。判断红外发光二极管好坏的办法与判断普通二极管一样:用万用表电阻挡量一下红外发光二极管的正、反向电阻即可。红外发光二极管的发光效率要用专门的仪器才能精确测定,而业余条件下只能用拉距法来粗略判定。 接收部分的红外接收管是一种光敏二极管。在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。红外接收二极管一般有圆形和方形两种。 由于红外发光二极管的发射功率一般都较小(100mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。前些年常用μPC1373H、CX20106A等红外接收专用放大电路。最近几年不论是业余制作还是正式产品,大多都采用成品红外接收头。成品红外接收头的封装大致有两种:一种采用铁皮屏蔽;一种是塑料封装。均有三只引脚,即电源正(VDD)、电源(GND)和数据输出(VO或OUT)。红外接收头的引脚排列因型号不同而不尽相同,可参考厂家的使用说明。成品红外接收头的优点是不需要复杂的调试和外壳屏蔽,使用起来如同一只三极管,非常方便。但在使用时注意成品红外接收头的载波频率。红外遥控常用的载波频率为38kHz,这是由发射端所使用的455kHz晶振来决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz÷12≈37.9 kHz≈38kHz。也有一些遥控系统采用36kHz、40kHz、56kHz等,一般由发射端晶振的振荡频率来决定。 红外遥控的特点是不影响周边环境、不干扰其它电器设备。由于其无法穿透墙壁,故不同房

c51、c52单片机红外线遥控接收解码c程序(可直接使用)

/ 亲,此程序以经过测试,可直接使用!!!/ #include #define uchar unsigned char #define uint unsigned int void delay(uchar x); sbit IRIN = P3^2; uchar IRCOM[4]; void main() { IE = 0x81; TCON = 0x01; IRIN=1; /* 此处可以根据按键码自由编写程序 /以下为3*7遥控按键码/ /(也可以应用与其他类型遥控,本程序只以3*7遥控为例)/ / 0x45 0x46 0x47 / / 0x44 0x40 0x43 / / 0x07 0x15 0x09 / / 0x16 0x19 0x0d / / 0x0c 0x18 0x5e / / 0x08 0x1c 0x5a / / 0x42 0x52 0x4a / 例如: while(1) {switch(IRCOM[2]) {case 0x45: P2=0x7f; break; case 0x44: P2=0xbf; break; case 0x07: P2=0xdf; break; case 0x16: P2=0xef; break; case 0x0c: P2=0xf7; break; case 0x08: P2=0xfb; break; case 0x42: P2=0xfd; break; case 0x52: P2=0xfe; break; case 0x4a: P2=0xff; break; case 0x5a: P2=0x00; break;} } */ while(1); } //end main /**********************************************************/ void IR_IN(void) interrupt 0 //外部中断服务程序 {unsigned char j,k,N=0; EX0 = 0; delay(15); if (IRIN==1) { EX0 =1;

红外遥控课程设计

单片机与接口技术课程设计 题目: 基于单片机红外线遥控控制 LED灯显示系统设计与制作班级:电子科学与技术1101 姓名:李婷 学号:110803025 2013年12月11日

目录 第一章设计要求 (3) 第二章硬件系统设计 (3) 2.1基于单片机红外线遥控控制LED灯显示系统框架图 (3) 2.2单片机控制系统及其基本电路 (4) 2. 2.1 单片机最小系统 (4) 2.2.2时钟电路 (5) 2.2.3复位电路 (5) 2.3基于单片机红外遥控控制LED系统的设计原理 (6) 2.3.1单片机红外遥控控制LED显示系统原理 (6) 2.3.2单片机红外遥控控制LED系统码分制原理 (7) 2.4红外遥控发射系统电路设计 (8) 2.4.1指令按键电路 (8) 2.4.2 发射电路 (9) 2.4.3 显示模块 (9) 2.5红外遥控接收系统电路设计 (11) 2.5.1接收电路 (11) 2.5.2 LED灯显示电路 (11) 2.6硬件原理图 (12) 第三章软件系统设计 (12) 3.1 红外线发射电路程序流程图设计 (13) 3.2 红外线接收电路程序流程图设计 (13) 第四章系统测试与分析 (14) 4.1 利用Proteus和keil进行仿真调试 (14) 4.2 仿真图 (16) 第五章总结 (18) 附录1 (18) 附录2 (22) 参考文献 (25)

赣南师范学院 2013 — 2014 学年第_1_学期课程论文行政班级:电子科学与技术1101 学号:110803025 姓名:李婷

图2-1 系统的设计总框图 2.2单片机控制系统及其基本电路 2.2.1单片机最小系统 单片机晶振电路:对于MSC-51一般的晶振频率可以在1.2MHz—12MHz 之间选择,这是电容C可以对应的选择10pF—30pF。当使用89C55时晶振频率可以提高到24MHZ。对于本设计的电容C用30pF,晶振选用11.0592MHz。晶振电路如下图3-1所示,一条引脚接在XTAL1,另一条接在XTAL2。单片机的复位电路:为了防止程序执行过程中失步或运行紊乱,此处采用了上电复位及手动复位电路,电路图如下图2-1所示: 图2-2-1 单片机最小系统图

红外遥控器信号接收和显示的设计1

电子电路综合设计总结报告 题目:红外遥控器信号接收和显示的设计 摘要: 随着电子技术的发展,红外遥控器越来越多的使用到电器设备中,但各种型号遥控器的大量使用带来的遥控器大批量多品种的生产,使得检测成为难题,因此智能的红外遥控器检测装置成为一种迫切的需要。在该红外遥控器信号的接收和显示电路以单片机和一体化红外接收器为核心技术,具体由单片机最小系统、单片机和PC机间的通信模块、红外接收模块、数码管显示模块和流水灯模块组成。在本系统的设计中,利用红外接收器接收遥控器发出的控制信号,并通过软件编程将接收信号存储、处理、比较,并将数据处理送至数码管显示模块。总之,通过对电路的设计和实际调试,可以实现红外遥控器信号的接收和显示功能。根据比较接收信号的不同,在数码管显示电路及流水灯电路上显示相应的按键数字或闪烁变化功能,并可实现单片机及PC机之间的通信功能,使得控制信号能在PC机上显示。

关键词:单片机红外接收器HS0038 解码串口调试

设计任务 结合单片机最小电路和红外线接收接口电路共同设计一个基于单片机的红外遥控信号接收和转发系统,用普通电视机遥控器控制该系统,使用数码管显示信号的接收结果。 1、实现单片机最小系统的设计。 2、当遥控器按下数字键时,在数码管上显示其键值。如按下数字键1,则在数码管上显示 号码01。 3、当遥控器按下音量△及音量▽时,用两位数码的周围段实现顺时针或者逆时针旋转的流 水灯功能。(为使得音量的增减清晰显示,试验中在单片机的P1口外接一排流水灯,具体功能的实现见方案的可行性论证) * 运用串口调试助手,在遥控器有按键按下时,将其键值显示在PC机上。 * 当遥控器按下频道△及频道▽时,在数码管上显示加1或减1后的数值。 一、系统方案比较和论证 1、方案比较和选择 为了实现系统整体功能,红外解码部分是核心,红外解码是指将遥控发射器所产生的红外遥控编码脉冲所对应的键值翻译出来的过程。下面将系统方案做一论证,通常有硬件解码和软件解码两种方案。 方案一:此方案中,使用专用遥控器作为控制信号发出装置,当按下遥控器的按键后,一体化红外接收装置接收到遥控器发出的设置控制信号,然后将信号送到专用的解码芯片中进行解码,解码后将信号送到单片机,由单片机查表判断这个信号是按键数值信号或控制音量、频道等信号,当确认是何种信号后,启动子程序,然后进行查询。每次红外接收头接收到红外信号传到解码器中,解码器解码完毕后送到单片机,单片机再通过查表确定这些数值并进行相应功能的控制。设计原理图如图1所示。 图1、方案一设计原理图 方案二:此方案中,采用普通的家用遥控器作为控制信号发出装置,当按下遥控器的按键后,一体化红外接收装置接收到遥控器发出的红外线控制信号,然后把这个信号转换成电信号,传到单片机中,利用单片机对这个信号进行解码,解码完成后查表确定是按键数值信号或控制音量、频道等信号,启动子程序,进行相应的显示数字等功能。然后查询,重复上述流程。设计原理图如图2所示。

红外接收头生产过程

红外接收头生产过程 红外线接收模块,又叫红外线接收头,简称接收头,英文名称:Infrared receive module,缩写IRM。由IC 、PD、支架等主要原材料组成,而将各种原材料组装起来,形成接收头成品,类似于这种类型的工厂有个名称叫“封装厂”,如珠海市万州科技有限公司。 整体的生产工艺流程分为4个环节,分别是,固晶、邦定、封装(压模)、后处理(后工序)。各工序都有不同的功能,都是必不可少的。 固晶工序又叫DIE BOND,就是将芯片(IC、PD)固定到支架上面。本工序所使用的材料有IC、PD、支架、银胶,IC是接收头的处理元件,主要由硅晶和电路组成,是一个高度集成的器件、主要功能有滤波、整形、解码、放大等功能。PD是光敏二极管,主要功能是接收光信号。 支架是接收头的引脚部分,将IC功能脚外接,固定芯片等作用。银胶的组成主要是银粉和环氧树脂以及其他的原料,主要作用是导电和固定。 支架,我们公司主要用到的支架分两种,一种是带屏蔽的支架,另外是不带屏蔽的支架。 . 银胶,属于高温固化银胶,理论固化温度是170度1小时,因考虑支架的因素,现在执行150度2小时的固化条件。 焊线介绍 焊线工序又叫WIRE BOND,是将IC和PD各功能点用金线连起来,本工序涉及到的材料主要是金线。本工序的好坏直接关系到产品的成品质量,以及产品的稳定性。

封装介绍 封装工序是固定外形的,我们公司现有三种封装模式两种外形,一种是灌胶鼻梁型,二是模压球形,三是灌胶球形。三种模式各有利弊,主要以灌胶鼻梁进行生产。该工序是产品成形关键,一经封装,就不容许再进行返工,所以在封装之前应对固焊工序进行严格的检验。 主要用到的材料有液态环氧树脂、固态环氧树脂、04色素、08色素等。 颜料04的滤光范围是830-1050,08色素的滤光范围是750-1150,范围越宽,接收头的接收灵敏度越好,但抗干扰越差,滤光范围越窄,抗干扰越好,但接收效果会稍差,为了满足不同客户的需求,对该两种色素进行不同比例的搭配,以满足客户要求。 后处理 主要有装壳、焊壳、冲筋、测试、二切、包装等环节,除装壳是根据客户要求作业之外,其他都必须要完成。目前的测试只是单纯对接收距离进行测试,其他参数没有进行检测,有一定风险性,正在进行改善。高危工序是冲筋工序,切记要按照作业指导进行检查和作业。本工序涉及到的模具都是简单的冲筋模具,重点关注模具的公差范围。 涉及到的材料主要有铁壳,铁壳的原料是0.3mm马口铁,这种不需要电镀,但裸露的存放时间比较短,一般不超过1个月,另外还有普通0.3mm的铁材,需要进行镀锡,这种工艺的存放时间很长也不会生锈,考虑到成本的因素,普通的铁壳均用马口铁制成。 可靠性试验要求 可靠性试验主要有冷、热、冷热循环、电老化、镀锡等另外有的客户还要做电击试验。 冷冻试验的条件是-25度、-45度,一般存放1个小时左右再进行测试,或在试验温度下进行测试,批量测试时,不用在试验温度下测试,可以上机台测试。试验温度下测试适用于试样或抽检。 热试验,试验条件灌胶产品是140-150度,模压150-160度,一般采用整体测试,在高温箱内的带机器测试问题一般在75-80度,还要兼顾其他材料的耐温特性。 冷热循环,主要是对产品进行冷热冲击,骤冷骤热来检测产品胶体、焊接等对其耐荷性,这是判断产品优劣的关键试验项目。 电老化试验是对接收头进行超过48小时的通电,主要检测焊线工序的可靠性,通常有些虚焊、或其他的存在隐患的焊接不良品是经不住考验的。 镀锡实验,是对接收头进行模拟客户现场使用条件进行的实验,来验证产品对焊接条件的适应性。常规实验条件是280度10秒。

红外线接收头

VS1738

型号:VS1738 1.简介: VS1738 VS1738内含高速高灵敏度PIN光电二极管和低功耗、高增益 前置放大IC,采用环氧树脂塑封封装设计,该产品已经通过 REACH和SGS认证属于环保产品,在红外遥控系统中作为接收 器使用。 2.特性: ●环氧塑封封装; ●宽工作电压,2.7-5.5V; ●低功耗;宽角度及长距离接收; ●抗干挠能力强,能抵挡环境干挠; ●输出匹配TTL、CMOS电平,低电平有效。

型号:VS1738 5.应用电路图: 6.原理图: 7.光电参数(T=25℃ Vcc=3.0V/5.0V f0=38KHZ): 参 数 符号 测试条件 Min Type Max

型号:VS1738 8.测试波型: 10.极限参数:

型号:VS1738 11.可靠性测试: 测试项目 测试条件 测试时间测试数 合格数焊接耐热温度 温度260℃±5℃ (非受力状态下) 5秒以内 20 20 静电破坏实验 电容100PF,电阻1.5kΩ, 静电电压4KV,各引脚 20 20 振动实验 频率:10-50Hz/1min 振幅:1.5mm X、Y、Z/30min 30分钟 20 20 高温储存 温度85℃±2℃ 240小时 20 20 低温储存 温度-25℃±2℃ 240小时 20 20 高温高湿储存 温度85℃;湿度85% 240小时 20 20 低温-25℃(30秒), (焊点需离树脂胶体根部2MM以上) a.浸锡:请在260℃且5秒以内一次焊接完成,同时应避免树胶胶体浸入锡槽内。

型号:VS1738 190 15.包装方式: 1).防静电袋(如右图) 产品标签:正贴于防静电袋正中间 尺寸:150X190 数量:每包500PCS l a b e l 150 l a b e l

红外遥控原理及解码程序

红外遥控系统原理及单片机 红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。 1 红外遥控系统 通用红外遥控系统由发射和接收两大部分组成。应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。 图1 红外线遥控系统框图 2 遥控发射器及其编码 遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC 的uPD6121G组成发射电路为例说明编码原理(一般家庭用的DVD、VCD、音响都使用这种编码方式)。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周

期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,其波形如图2所示。 图2 遥控码的“0”和“1” (注:所有波形为接收端的与发射相反)上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射,如图3示。 图3 遥控信号编码波形图 UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6121G最多额128种不同组合的编码。 遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间,图4为发射波形图。

红外遥控接收程序

#include "remote.h" UINT IrCode; //高8位为系统码,低八位为数据码 /*************************************************************************** *FUNCTION NAME: DelayIr *CREATE DATE: 2012/6/7 *CREATED BY: XS *FUNCTION: IR采样延时:0.14ms *MODIFY DATE: 2012/6/7 *INPUT: 无 * *RETURN: 无 ***************************************************************************/ void DelayIr(UCHAR timer) { UCHAR i; while(timer--) { for (i = 0; i<13; i++); } } /*************************************************************************** *FUNCTION NAME: RemoteDecode *CREATE DATE: 2012/6/7 *CREATED BY: XS *FUNCTION: IR遥控解码 *MODIFY DATE: 2012/6/7 *INPUT: 无 * *RETURN: 无 ***************************************************************************/ void RemoteDecode(void) { UCHAR i,j,n = 0; UCHAR irDat[4] = {0}; EX0 = 0;

红外选型知识

daishangju(戴上举)12:01:26 最近在折腾红外发射和接收。 在调试的过程中发现了红外接收头的一个问题: 有的红外接收头不能长时间解码,或者说长时间输出信号。 这些接收头每隔一段时间,就会没有信号输出(Vout为高电平,过一段时间又能收到数据了)。 经过测试发现标有78M4,85M4的都不能长时间解码。 而有些接收头能长时间的解码,太好了!!! 但是我手头比较少。 不知道大家有没有碰到类似的情况? 78M4和85M4是不是表示波长780nm和850nm呢? 我想购买能长时间解码的接收头,该如何选型呢? daishangju(戴上举)12:02:37 目前市售红外一体化接收头有两种:电平型和脉冲型,绝大部分的都是脉冲型的,电平型的很少。 电平型的,接收连续的38K信号,可以输出连续的低电平,时间可以无限长。其内部放大及脉冲整形是直接耦合的,所以能够接收及输出连续的信号。 脉冲型的,只能接收间歇的38K信号,如果接收连续的38K信号,则几百ms后会一直保持高电平,除非距离非常近(二三十厘米以内)。其内部放大及脉冲整形是电容耦合的,所以不能能够接收及输出连续的信号。一般遥控用脉冲型的,只有特殊场合,比如串口调制输出,由于串口可能连续输出数据0,所以要用电平型的。一般遥控器用455K经12分频后输出37917HZ,简称38K,10米接收带宽为38+-2K,3米为35~42K。 在没有环境反射的空旷空间,距离10米以上方向性会比较强。在室内,如果墙是白色的,则在15米的空间基本没有方向性。 接收头要有滤光片,将白光滤除。在以下环境条件下会影响接收,甚至很严重: 1、强光直射接收头,导致光敏管饱和。白光中红外成分也很强。 2、有强的红外热源。 3、有频闪的光源,比如日光灯。 4、强的电磁干扰,比如日光灯启动、马达启动等。 38K信号最好用1/3占空比,这个是最常用的,据测试1/10占空比灵敏度更好。实际调制时间要少于50%。 最好有间歇。 电平型的接收头只要接收到38K红外线就输出持续低电平,用起来非常爽,以前的老 daishangju(戴上举)12:02:37 式接收头多半是这种类型,但其有个致命弱点:抗干扰性太差,传输距离短(小于1m)。 而脉冲型一体化红外线接收头必须接受一定频率38K的载波的基带信号才有正常输出,如发送500HZ的38K 载波,脉冲型一体化红外线接收头输出500HZ方波,而如果发送连续的38K载波就会出项有瞬间低电平其后为高电平的现象。这种脉冲型一体化红外线接收头克服了传统电平型接收头的不足:传输距离相对更远,稳定性大大增加,抗干扰性更强。因此已经完全取代了老式的电平型接受头,在电子市场如不说明店主给你的绝对是脉冲性的。

红外遥控一体化接收头原理及应用电路

红外遥控一体化接收头原理及应用电路2 一.一体化红外线接收头的原理 二. 红外遥控一体化接收头型号:SH-0038应用电路集 三. 红外遥控一体化接收头型号:RPM-638应用电路集 四.一体化红外线接收头的管脚排列及检测 红外遥控一体化接收头原理图及应用 一体化红外接收头型号:SFH506-38、RPM-638 红外接收电路通常由红外接收二极管与放大电路组成,放大电路通常又由一个集成块及若干电阻电容等元件组成,并且需要封装在一个金属屏蔽盒里,因而电路比较复杂,体积却很小,还不及一个7805体积大! SFH506-38与RPM-638是一种特殊的红外接收电路,它将红外接收管与放大电路集成在一体,体积小(大小与一只中功率三极管相当),密封性好,灵敏度高,并且价格低廉,市场售价只有几元钱。它仅有三条管脚,分别是电源正极、电源负极以及信号输出端,其工作电压在5V左右.只要给它接上电源即是一个完整的红外接收放大器,使用十分方便。 它的主要功能包括放大,选频,解调几大部分,要求输入信号需是已经被调制的信号。经过它的接收放大和解调会在输出端直接输出原始的信号。从而使电路达到最简化!灵敏度和抗干扰性都非常好,可以说是一个接收红外信号的理想装置。 一体化红外接收头,如图5所示外形及管脚:型号区别: 5所示:型号:SH0038 图5 红外接收头 红外接收头的种类很多,引脚定义也不相同,一般都有三个引脚,包括供电脚,接地和信号输 出脚。根据发射端调制 一. 红外遥控一体化接收头型号:SH0038 应用电路集 1. 用红外接收头、CD4069 制作的遥控灯原理图 红外遥控的发射和接收电路图 2. 用红外接收头、CD4011制作的遥控灯原理图 红外遥控接收头内部电路 3. 用红外接收头、CD4541制作的单路遥控原理图 4. 一体化红外接收头遥控开关接收电路 5. 用一体化红外接收头制作的遥控开关电路 一体化红外接收头原理: 没有人时,遥控接收头低电平脉冲信号由C1送入Q1,Q1将信号放大,由D1,C2滤波使Q2b极电压升高,Q2导通,Q3断开,继电器不吸合,K2断开,无12V送入报警器,报警器不报警;当有人进如时,将红外线阻断,接收器收不到遥控器发来的信号,Q1b极为高电平,Q1截止,Q2也截止,Q2C极为高电平,此时Q3导通,继电器吸合,K2闭合将12V送入报警或语音电路,发出报警声,同时R5对C4充电,达到Q4的导通电压时,Q4导通,Q3截止,继电器断开,报警结束,同时K1闭合,将C4放电,报警时间可由R5和C4决定。 6. 用一体化红外接收制作的感应式自动洗手器

红外接收

上海电力学院 单片机系统设计实验设计 学院:自动化工程学院 专业:自动化 班级:2013035 姓名:都云峰学号: 20132586 起止时间:2016年1月11日——2016年1月20日

目录 1、目录 (1) 页 2、实践题目······················································2页 3、实践目的······················································2页 4、LCD1602简介··················································2页 5、STC12C5A60S2中断简介·········································4页 6、protues仿真··················································5页 7、Altium Designer仿真··········································6页 8、实物结果······················································7页 9、源程序 (7) 页 10、实践设计心得 (13) 页

单片机红外接收 一、实践题目 ①项目要求: 红外接收,LCD1602显示数据等。 ②Proteus绘制电路图: ALTIUM DESIGNER或Proteus绘制原理图和PCB图,并做PROTEUS仿真。 ③编写调试程序: KEIL C编写程序代码并调试通过。 ④小结体会 二、实践目的 学习单片机开发与设计,不能仅仅是接触了单片机编程语言,如汇编或C 语言,就算完成了单片机的学习任务。更要掌握自行设计电路、制作PCB板、焊接元器件等内容。这是一个从硬件到软件、从理论到实践的系统工程。本课程是单片机课程开发提高阶段的课程,主要从开发板的焊接、制作和单片机工程项目的开发、调试两个方面入手,使参加学习的同学,在校内能真正成为单片机设计的爱好者、在校外能真正成为项目开发的工程师。 学习掌握MCS-51单片机的结构和原理,Keil C51的编程,Keil和Proteus 的联合调试,利用Proteus和Keil C实现AD和DA部分的电子及编程设计。 学习掌握利用Proteus ISIS进行电路原理图设计的方法;掌握利用原理图元件库编辑器创建新元件的方法;了解利用Proteus ARES进行印刷电路板图设计的方法;了解利用PCB元件库编辑器创建新的PCB元件的方法;掌握利用Proteus进行模拟电子实验和数字电子仿真实验的方法,利用其中自带的虚拟仪器进行电路的仿真。 三、LCD1602简介 字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,

相关文档
相关文档 最新文档