51测试网 单片机教程XL2000开发板 单片机学习 自制编程器 单片机资料 软件下载 电子技术产品介绍如何购买 论坛

点击察看说明书(64页彩色PDF文档)

1.1 系统简介

4.3 ISP引脚连接

端口按键判断

红外线遥控555硬件振荡器

1.2 模块接口定义

5.1 仿真概述

矩阵按键识别技术

汉字显示屏PS2键盘实验
2.1 软件安装  5.2 KEIL软件指南

74LS14反向器

1602液晶显示屏SD卡实验
2.2 软件界面介绍 

51引脚说明

74LS138译码器

8155试验

485通信实验 
2.3 软件操作

八路跑马灯

74LS164串入并出

24C02储存

DS1302实时时钟
3.1 USB驱动安装

继电器控制

74LS165并入串出步进电机产生hex文件
3.2 特别usb安装 

8路拨动开关

dac0832应用

93c46演示

常见问题解答
4.1 ISP介绍 

数码管静态扫描 

模拟/数字转换器

串行双向通信系统配置指南
4.2 下载头之插头定义

数码管动态扫描

小喇叭警报器18B20温度显示购买方式

                               

                                       实验15 红外线遥控试验 

 

    XL2000试验仪配有一个标准的32位HT6121编码红外遥控器。通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。

当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,其波形如图2所示

相关原理:

解码的关键是如何识别“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左右均可。    

程序运行的照片:

接线方法:

1、接8位数码管的数据线。将数码管部份的数据口 JP5接到CPU部份的P0口JP51.

2、接8位数码管的显示位线。将数码管部份的显示位口 JP8接到CPU部份的P2口JP52.

3、用一根1PIN数据线一端插入CPU部分JP53(P3口)的P3.7另外一端插入红外遥控部分的输出端JP45。

程序流程图:

汇编语言参考程序:

org 00h
ORG 80H
MOV P1,#0FFH
MOV P2,#0FFH
MOV P3,#0FFH
START:
JB P3.7,$ ;等待遥控信号出现
SB:
MOV R4,#8 ;8毫秒为高电平错误
SBA:
MOV R5,#250
SBB:
JB P3.7,SXB1
DJNZ R5,SBB
DJNZ R4,SBA
MOV R4,#2
JMP SBC
SXB1:
MOV R5,#5
SXB2: ;去掉20US的尖峰干扰信号
JNB P3.7,SBB
DJNZ R5,SXB2
JMP START
SBC:
MOV R5,#250
SB1:
JB P3.7,SB2 ;2MS内不为高电平错误(监测9MS的低电平引导码)
DJNZ R5,SB1
DJNZ R4,SBC
JMP START
SB2: ;去掉20US的尖峰干扰信号
MOV R5,#5
SB2_A:
JNB P3.7,SB1
DJNZ R5,SB2_A
MOV R4,#3
SB2_1:
MOV R5,#250
SB3: ;监测4.5MS高电平,如3MS内出现低电平错误
JNB P3.7,SXC
DJNZ R5,SB3
DJNZ R4,SB2_1
MOV R4,#2
JMP SB3_1
SXC: ;去掉20US的尖峰干扰信号
MOV R5,#5
SXC1:
JB P3.7,SB3
DJNZ R5,SXC1
JMP START
SB3_1: ;监测4.5MS高电平,如5MS内不为低电平错误
MOV R5,#250
SB3_2:
JNB P3.7,SB4
DJNZ R5,SB3_2
DJNZ R4,SB3_1
JMP START
SB4: ;去掉20US的尖峰干扰信号
MOV R5,#5
SB4_1:
JB P3.7,SB3_2
DJNZ R5,SB4_1
MOV R1,#1AH ;设定1AH为起始RAM区
MOV R2,#4
PP: MOV R3,#8
JJJJ:
MOV R5,#250
JJJJ2: ;1MS内不为低电平错误
JB P3.7,JJJJ3
DJNZ R5,JJJJ2
JMP START
JJJJ3:
LCALL YS1 ;高电平开始后用882微秒的时间尺去判断信号此时的高低电平状态
MOV C,P3.7 ;将P3.7引脚此时的电平状态0或1存入C中
JNC UUU ;如果为0就跳转到UUU
MOV R5,#250
JJJJ4:
JNB P3.7,UUU
NOP
DJNZ R5,JJJJ4
JMP START
UUU:MOV A,@R1 ;将R1中地址的给A
RRC A ;将C中的值0或1移入A中的最低位
MOV @R1,A ;将A中的数暂时存放在R1中
DJNZ R3,JJJJ ;接收地址码的高8位
INC R1 ;对R1中的值加1,换成下一个RAM
DJNZ R2,PP ;接收完16位地址码和8位数据码和8位数据反码,存放在1AH/1BH/1CH/1DH的RAM中
;以下对代码是否正确和定义进行识别
MOV A,1AH ;比较高8位地址码
XRL A,#00000000B;判断1AH的值是否等于00000000,相等的话A为0
JNZ EXIT ;如果不相等说明解码失败退出解码程序
MOV A,1BH ;比较低8位地址
XRL A,#11111111B;再判断高8位地址是否正确
JNZ EXIT ;如果不相等说明解码失败退出解码程序
LCALL YS3
MOV A,1CH ;比较数据码和数据反码是否正确?
CPL A
XRL A,1DH ;将1CH的值取反后和1DH比较 不同则无效丢弃,核对数据是否准确
JNZ EXIT ;如果不相等说明解码失败退出解码程序
LCALL YS3
CLR P2.6 ;选中数码管
CLR P3.3 ;解码成功喇叭响?
AJMP BIJIAO
;判断在118毫秒内是否有连发码
AA: MOV R1,#25
XX: ACALL YS2
JNB P3.7,HH ;跳转到判断连发代码是否正确的程序段
DJNZ R1,XX
EXIT: ;对所有端口清零

AJMP START
;连发码判断程序段-----------
HH: MOV R6,#4
S: ACALL YS1 ;调用882微秒延时子程序
JB P3.7,EXIT ;延时882微秒后判断P3.7脚是否出现高电平如果有就退出解码程序
DJNZ R6, S ;重复4次,目的是确认连发码的低电平信号波形
JNB P3.7, $ ;等待高电?
LCALL YS3
AJMP AA

BIJIAO: MOV A,1CH ;按键数值判断执
mov p1,a
CJNE A,#10h,TT1
MOV P0,#7EH ;数码管显示1
TT1: CJNE A,#03h,T2
MOV P0,#0A2H ;数码管显示2
T2: CJNE A,#01h,T3
MOV P0,#62H ;数码管显示3
T3: CJNE A,#06h,T4
MOV P0,#74H ;数码管显示4
T4: CJNE A,#09h,T5
MOV P0,#61H ;数码管显示5
T5: CJNE A,#1dh,T6
MOV P0,#21H ;数码管显示6
T6: CJNE A,#1fh,T7
MOV P0,#7AH ;数码管显示7
T7: CJNE A,#0dh,T8
MOV P0,#20H ;数码管显示8
T8: CJNE A,#19h,t9
MOV P0,#60H ;数码管显示9
T9: CJNE A,#1bh,t10
MOV P0,#28H ;数码管显示0
T10: CJNE A,#11h,t11
MOV P0,#30H ;数码管显示A
T11: CJNE A,#15h,t12
MOV P0,#25H ;数码管显示b
T12: CJNE A,#17h,t13
MOV P0,#0a9H ;数码管显示C
T13: CJNE A,#12h,t14
MOV P0,#26H ;数码管显示d
T14: CJNE A,#16h,t15
MOV P0,#0a1H ;数码管显示E
T15: CJNE A,#4ch,t16
MOV P0,#0b1H ;数码管显示f
t16: AJMP AA
YS1: MOV R4,#20 ;延时子程序1,精确延时882微秒
D1: MOV R5,#20
DJNZ R5,$
DJNZ R4,D1
RET
YS2: MOV R4,#10 ;延时子程序2,精确延时4740微秒
D2: MOV R5,#235
DJNZ R5,$
DJNZ R4,D2
RET
YS3: MOV R4,#2 ;延时程序3,精确延时1000微秒
D3:MOV R5,#248
DJNZ R5,$
DJNZ R4,D3
RET
END

精致外观

精致外观

精致外观

精致外观

精致外观

精致包装

精致包装

精致包装

配套附件

配套附件

使用手册

使用手册

使用手册

配套附件

配套附件

配套附件

配套附件

配套附件

配套附件

配套附件

精致细节

精致细节

精致细节

精致细节

配套光盘