当前位置:文档之家› c51、c52单片机红外线遥控接收解码c程序(可直接使用)

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

c51、c52单片机红外线遥控接收解码c程序(可直接使用)
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;

return;}

//确认IR信号出现

while (!IRIN) //等IR变为高电平,跳过9ms的前导低电平信号。

{delay(1);}

for (j=0;j<4;j++) //收集四组数据

{ for (k=0;k<8;k++) //每组数据有8位

{while (IRIN) //等IR 变为低电平,跳过4.5ms的前导高电平信号。

{delay(1);}

while (!IRIN) //等IR 变为高电平

{delay(1);}

while (IRIN) //计算IR高电平时长

{delay(1);

N++;

if (N>=30)

{ EX0=1;

return;} //0.14ms计数过长自动离开。

} //高电平计数完毕

IRCOM[j]=IRCOM[j] >> 1; //数据最高位补“0”

if (N>=8) {IRCOM[j] = IRCOM[j] | 0x80;} //数据最高位补“1”

N=0;

}//end for k

}//end for j

if (IRCOM[2]!=~IRCOM[3])

{ EX0=1;

return; }

EX0 = 1;

}

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

void delay(unsigned char x) //x*0.14MS

{ unsigned char i;

while(x--)

{for (i = 0; i<13; i++) {}}

}

基于单片机模拟红外编码解码的设计

开放实验报告 课题名称基于单片机的红外解码器的设计学生姓名 系、年级专业信息工程系、11、12级电子信息工程指导教师江世明 2014年 5 月20日

基于单片机的红外解码器的设计 一.实验目的 1、了解红外编码原理,模拟红外发射信号; 2、用程序实现红外编码的解码; 二.实验内容 设计基于单片机的红外解码器,实现红外遥控信号智能解码,要求制作出实物,实现解码功能。 三.电路设计 1、红外编码原理 在实际应用中红外编码将二进制码调制到38MHz的载波频率上,通过在空中传播,由红外接收头接收之后,由内部的解调电路进行解调, 解调出来的就是我们发送的那些二进制码。红外编码方式根据日本NEC 协议编码。每次发送四个字节:用户码,用户反码,数据码,数据反码。数据 0和 1的区别通常体现在高低电平的时间长短上。一次按键首先发送9ms的低电平和4.5ms的高电平的引导码。 实际生活中,用遥控器发出的信号与上面的信号是相反的,经过红外线接收头解码以后就和上图一样了,值得大家注意的是发射模块的芯片不同,引导区的时间和数据都有所不同,但解决的方法都是一样的。 引导码后就是用户码。但是怎么来区分0和1呢?前面我们提到了PWM(脉宽调制)。根据脉冲的宽度来区别0和1.0.56ms低电平之后接0.56ms高电平为0,接1.12ms高电平为1.

2、红外解码方法 在实际生活中红外解码一般由红外接收头接收并解码。解码时先跳过9ms 高电平和4.5ms的低电平,然后跳过0.56ms的低电平,最后通过循环等待搞电平的结束并计时。通过判断高电平时间的长短来区分0(0.56ms)和1(1.12ms)。最后判断接收到的四个字节(用户码,用户反码,数据码,数据反码)中数据码和取反后的数据反码相不相等。 3、红外编解码电路 四、程序设计 见附录 五、系统仿真

基于51单片机的红外遥控

基于51单片机的红外遥控 红外遥控是无线遥控的一种方式,本文讲述的红外遥控,采用STC89C52单片机,1838红外接收头和38k红外遥控器。 1838红外接收头: 红外遥控器: 原理: 红外接收的原理我不赘述,百度文库上不少,我推荐个网址,这篇文章写得比较清楚,也比较全面,https://www.doczj.com/doc/1516986123.html,/view/c353e8360b4c2e3f57276349.html 我主要讲下程序的具体意思,在了解原理的基础上,我们知道,当我们在遥控器上每按下一个键,遥控器上的红外发射头都会发出一个32位的编码(32位编码分成4组8位二进制编码,前16位为用户码和用户反码,后16位为数据码和数据反码,用户码表示遥控器类型,数据码表示按键编码),不同的键对应不同的编码,红外接收头接收到这个编码后,发送给单片机,再进行相关操作。 源程序1:(这个程序的功能是将用户码和用户反码,数据码和数据反码显示在1602液晶上,因为遥控器买回来是不会说明按键对应什么码值,所以先自己测试,确定每个 按键的码值) #include #include #include #define uint unsigned int #define uchar unsigned char #define _Nop() _nop_() #define TURE 1 #define FALSE 0

/*端口定义*/ sbit lcd_rs_port = P3^5; /*定义LCD控制端口*/ sbit lcd_rw_port = P3^6; sbit lcd_en_port = P3^4; #define lcd_data_port P0 /////////////////////////////////// void delay1 (void)//关闭数码管延时程序 { int k; for (k=0; k<1000; k++); } //////////////////////////////////// uchar code line0[16]={" user: "}; uchar code line1[16]={" data: "}; uchar code lcd_mun_to_char[16]={"0123456789ABCDEF"}; unsigned char irtime;//红外用全局变量 bit irpro_ok,irok; unsigned char IRcord[4];//用来存放用户码、用户反码、数据码、数据反码unsigned char irdata[33];//用来存放32位码值 void ShowString (unsigned char line,char *ptr); ////////////////////////////////////////////// void Delay(unsigned char mS); void Ir_work(void); void Ircordpro(void); void tim0_isr (void) interrupt 1 using 1//定时器0中断服务函数 { irtime++; } void ex0_isr (void) interrupt 0 using 0//外部中断0服务函数 { static unsigned char i; static bit startflag; if(startflag){ if(irtime<63&&irtime>=33)//引导码TC9012的头码 i=0; irdata[i]=irtime; irtime=0; i++; if(i==33){ irok=1; i=0; }

单片机的红外遥控器解码设计

第1章红外解码系统分析 第1节设计要求 整个控制系统的设计要求:被控设备的控制实时反应,从接收信号到信号处理及对设备控制反映时间应小于1s;整个系统的抗干扰能力强,防止误动作;整个系统的安装、操作简单,维护方便;成本低。 红外载波、编码电路设计要求:单片机定时器精确产生38KHz红外载波;根据控制系统要求能对红外控制指令信号精确编码并迅速发送。 红外解码电路设计要求:精确接收红外信号,并对所接收信号进行解码、放大、整形、解调等处理,最后输出TTL电平信号;对非红外光及边缘红外光抗干扰能力强。 设备扩展模块设计要求:直流控制交流;抗干扰能力强;反应迅速不产生误动作;能承受大电流冲击。 第2节总体设计方案 2.1方案论证 驱动与开关 方案一:采用晶闸管直接驱动。 其优点是体积小,电路简单,外围元件少。但控制电流小,大电流晶闸管成本高,并且隔离性能差。 方案二:采用三极管驱动继电器。 其体积大,外围元件多。优点是控制电流大,隔离性能好。 根据实际情况,拟采用方案二。 2.2总体设计框图 经过上述方案的分析选择,得出系统硬件由以下几部分组成:电视红外遥控器,51单片机最小系统,接收放大于一体集成红外接收头,1602液晶显示驱动电路。 整体设计思路为:根据扫描到不同的按键值转至相对应的ROM表读取数据。确认设备及菜单选择键后AT89S2将从ROM读取出来的值,按照数据处理要求从P2.5输出控制脉冲与T0产生的38KHz的载波(周期是26.3μs)进行调制,经NPN三极管对信号放大驱动红外发光管将控制信号发送出去。红外数据接收则是采用HS0038一体化红外接收头,内部集成红外接收、数据采集、解码的功能,只要在接收端INT0检测头信号低电平的到来,就可完成对整个串行的信号进行分析得出当前控制指令的功能。然后根据所得的指令去操作相应的用电器件工作,如图1-1所示。

单片机实验报告简易报警器

简易报警器 一、本次根据单片机课程设计题目与要求,我选择的是设计一个简易报警器。 二、课程设计要求:自制一个单片机最小系统,包括串口下载、复位电路,采用两路外部中断输入门禁和红外探测两路信号(采用两个小按键模拟),中断信号输入后能将报警信息在四位一体数码管上显示,并输出声光报警信号。 三、设计所需的硬件:的无极性电容五个;10uF的极性电容两个;发光二极管两个;三极管9013四个;千欧的排阻一个;100,1k,10k 的电阻若干;芯片插座若干;的晶振一个;单片机STC89C54RD芯片一块;MAX232串口芯片一块;导线若干; 四、课程设计要求是用按键红外探测和输入门禁。但是由于实验室设备的条件,我采用的是红绿两个二极管代替红外探测的发光显示和输入门禁的报警装置。 五、总体设计思想

六、晶振电路 振荡器是数字钟的核心。振荡器的稳定度及频率的精确度决定了数字钟计时的准确程度,通常选用石英晶体构成振荡器电路。石英晶体振荡器的作用是产生时间标准信号。因此,一般采用石英晶体振荡器经过分频得到这一时间脉冲信号。 七、按键模块

鉴于使用中断电路会增加硬件电路的复杂度,本电路采用独立按键的方法,只需在程序中加入扫描程序即可。其中接按键光标移位,接按键时间加数,接按键时间减数,接按键模拟红外探测,接按键模拟输入门禁,。 九、SPEAKER电路 报警器装置的原理就是利用出来的高低电平交换使得扬声器发出声音。但是由于实验室的器材有限,所以我们改用了发光二极管来代替SPEAKER电路。

十、实验仿真程序如下: #include <> #include <> #define uchar unsigned char #define uint unsigned int uchar code table_data[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f, 0x00}; uchar code table_select[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; uchar table_buffer[]={0,0}; uchar count0,count1; sbit LEDREDCON=P0^0; sbit LEDGREENCON=P0^1; sbit spe=P0^2; sbit Kint0=P3^2;

基于单片机的红外遥控系统设计

课程设计 基于单片机的红外遥控系统设计 学院:计算机与通信工程学院 专业:通信工程 班级:通信11-3班 姓名: 学号:

天津理工大学 摘要 本设计采用51单片机作为遥控发射接收芯片,HS003B作为红外一体化接收发射管,在此基础上设计了一个简易的智能红外遥控系统。系统包括接收和发射两大部分,发射部分有16个按键,接收部分含有8盏彩色LED灯、一片二位数码管和蜂鸣器系统。发射部分通过键盘扫描判断哪个键被按下,经过单片机编码程序进行编码,控制红外发射电路发送信号。接收部分解码信号,实现相应的输出。本设计方案结合红外遥控设计简单、作方便、成本低廉等特点。 关键字:红外遥控信号调制编码解码

天津理工大学 目录 摘要................................................................................................................................................... I I 1.绪论 (1) 1.1课题目的和意义 (1) 1.2红外线简介 (1) 1.3红外遥控系统简介 (1) 2 课题方案和设计思路 (2) 2.1总体方案 (2) 2.2红外发射器设计 (3) 2.2.1红外发射器原理 (3) 2.2.2红外编码 (3) 2.3红外接收端设计 (4) 3硬件结构设计与介绍 (5) 3.1AT89C51系列单片机功能特点 (5) 3.1.1主要特性 (5) 3.1.2管脚说明 (5) 3.1.3基本电路 (7) 3.2红外发射电路 (8) 3.3红外接收电路设计 (9) 3.3.1红外接收模块 (9) 3.3.2数码管 (9) 3.3.3彩灯系统 (10) 3.3.4蜂鸣器系统 (11) 3.3.5红外接收端电路图 (12) 4 软件设计 (12) 4.1定时/计数器功能简介 (12) 4.2遥控码的发射 (13) 4.3红外接收 (14) 5.课程设计总结和心得 (15) 参考文献 (16) 附录 (17) 附录1P ROTEUS仿真图 (17) 附录2发射程序 (17) 附录3接收程序 (20)

基于51单片机的红外遥控器设计

天津职业大学 二○一五~二○一六学年第1学期 电子信息工程学院 通信系统综合实训报告书 课程名称:通信系统综合实训 班级:通信技术(5)班 学号:1304045640 1304045641 1304045646姓名:韩美红季圆圆陈真真指导教师:崔雁松 2015年11月17日

一、任务要求 利用C51单片机设计开发一套红外线收发、显示系统。 具体要求: ●编写相关程序(汇编、C语言均可); ●用Proteus绘制电路图并仿真实现基本功能; ●制作出实物 二、需求分析(系统的应用场景、环境条件、参数等) 现在各种红外线技术已经源源不断进入我们的生活中,在很多场合发挥着作用。 机场、宾馆、商场等的自动门,会在人进出时自动地开启和关闭。原来,在自动门的一侧有一个红外线光源,发射的红外线照射到另一侧的光电管上,红外线是人体察觉不到的。当人走到大门口,身体挡住红外线,电管接收不到红外线了。根据设计好的指令,触发相应开关,就把门打开了。等人进去后,光电管又可以接到红外线,恢复原来的线路,门又会自动关闭。因此这种光电管被称为“电眼”,在许多自动控制设备中大显身手。 在家庭中,许多电子设备如彩色电视、空调、冰箱和音响等,都使用了各种“红外线遥控器”。利用它我们可以非常方便的转换电视频道或设定空调的温度档次。 三、概要设计(系统结构框图/系统工作说明流程图) 红外线收发、显示系统硬件由以下几部分组成:红外遥控器,51单片机最小系统,接收放大器一体集成红外接收头,LED灯显示电路。 红外线接收是把遥控器发送的数据(已调信号)转换成一定格式的控制指令脉冲(调制信号、基带信号),是完成红外线的接收、放大、解调,还原成发射格式(高、低电位刚好相反)的脉冲信号。这些工作通常由一体化的接收头来完成,输出TTL兼容电平。最后通过解码把脉冲信号转换成数据,从而实现数据的传输。 红外遥控系统电路框图

单片机红外遥控原理

红外遥控原理 人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。其中红光的波长范围为0.62~0.76um;紫光的波长范围为0.38~0.46。比紫光的波长还要短的光叫紫外线,比红光的波长还要长的光叫红外线。红外线遥控技术就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。常用的红外遥控系统一般分发射和接收两个部分。发射部分的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。目前大量使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通5发光二极管相同,只是颜色不同。红外发光二极管一般有黑色、深蓝、透明三种颜色。判断红外发光二极管好坏的办法与判断普通二极管一样:用万用表电阻挡量一下红外发光二极管的正、反向电阻即可。红外发光二极管的发光效率要用专门的仪器才能精确测定,而业余条件下只能用拉距法来粗略判定。接收部分的红外接收管是一种光敏二极管。 在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。红外接收二极管一般有圆形和方形两种。由于红外发光二极管的发射功率都较小,所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。 前些年常用μPC1373H、CX20106A等红外接收专用放大电路。最近几年不论是业余制作还是正式产品,大多都采用成品红外接收头。成品红外接收头的封装大致有两种:一种采用铁皮屏蔽;一种是塑料封装。均有三只引脚,即电源正、电源负和数据输出(VO或OUT)。红外接收

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;

(完整版)基于单片机的红外报警器的设计

微机原理与单片机系统课程设计 专 班 姓 名: 学 兰州交通大学自动化与电气工程学院 2014 年 12 月 31 日

基于51单片机的红外防盗报警器的设计 1设计说明 1.1设计目的 该设计以单片机AT89C51芯片为核心,加上必要的外围电路,构成了一个基于单片机的红外线防盗报警器。功能主要通过软件编程来实现,降低了硬件电路的复杂性和制作成本。此外,设计中所采用的红外线是不可见光,有很强的隐蔽性和保密性,以满足现代人们住宅防盗的需要。 1.2设计要求 该设计要求当热释电红外线传感器探测到人体辐射的红外线时,单片机控制电路启动声光报警并显示报警次数。此外,用户还可以设定报警时间并手动解除报警。 1.3设计方法 该设计以AT89C51单片机为核心,由时钟电路、复位电路、外部触发电路、报警时间选择电路、声光报警电路、报警次数显示电路和中断报警电路共同组成报警系统。系统具有显示报警次数,设定报警时间,手动解除报警的功能。 2设计方案及原理 2.1设计方案简述 该设计使用AT89C51单片机芯片控制电路,通过热释电红外传感器采集外部触发信号,采用7段LED数码管显示报警次数,采用蜂鸣器和红色发光二极管实现声光报警,手动解除报警功能由单片机外部中断实现,报警时间由单片机内部定时器实现。 2.2热释电红外传感器简单介绍 热释电红外线(PIR)传感器是80年代发展起来的一种新型高灵敏度探测元件。是一种能检测人体发射的红外线而输出电信号的传感器,它能组成防入侵报警器或各种自动化节能装置。它能以非接触形式检测出人体辐射的红外线能量的变化,并将其转换成电压信号输出。将这个电压信号加以放大,便可驱动各种控制电路。 2.3 PIR的原理特性 热释电红外线传感器主要是由一种高热电系数制成的探测元件,在每个探测器内装入一个或两个探测元件,并将两个探测元件以反极性串联,以抑制由于自

基于单片机的红外遥控系统设计

单片机红外遥控系统设计 随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活。传统的遥控器采用专用的遥控编码及解码集成电路,这种方法虽然制作简单、容易,但由于功能键数及功能受到特定的限制,只实用于某一专用电器产品的应用,应用范围受到限制。而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随便设定等优点。 本设计主要应用了AT89C51单片机作为核心,综合应用了单片机中断系统、定时器、计数器等知识,应用红外光的优点,设计了一个红外线遥控系统。本系统包含发射和接收两大部分,利用编码/解码芯片来进行控制操作。发射部分包括键盘矩阵、编码调制、LED 红外线发射器;接收部分包括红外线接收芯片、光电转换器、调解电路。其优点硬件电路 简单,软件功能完善,性价比较高等特点,具有一定的使用和参考价值。 关键词:单片机AT89C51;LED红外线发射器

目录 目录 (2) 1 绪论 (2) 1.1研究背景 (2) 1.2国内外研究现状 (3) 1.3研究目的与意义 (3) 2系统方案设计论证 (5) 2.1单片机红外遥控发射器设计原理 (5) 2.2单片机红外遥控接收器设计原理 (5) 2.3方案选择和论证 (6) 3红外解码硬件电路设计 (8) 3.1红外解码系统设计 (8) 3.2单片机及其硬件电路设计 (8) 3.3红外发射电路设计 (10) 3.4红外接收电路设计 (11) 3.5本章小结 (13) 4红外解码程序设计 (14) 4.1红外接收电路主程序流程图 (14) 4.2红外接收电路子程序流程图 (14) 4.3本章小结 (15) 5 联机与调试 (16) 结论和展望 (23) 附录A:系统原理图 (24) 附录B:系统PCB图 (25) 附录C:系统仿真图 (26) 附录D:系统源程序 (27) 1 绪论 1.1研究背景 目前市场上采用的一般是遥控编码及解码集成的电路。此方案的特点是制作简单、容

红外遥控解码单片机课程设计报告

单片机课程设计报告 ——————————红外遥控解码 学校:东莞理工学院 院系:电子工程学院 作者:官炎钦 同组人员:陈帅、林志鹏、洪楚明

目录: 一、前言 ------------------------------------------- 1 二、设计原理 --------------------------------------- 1 1、红外通信原理 -------------------------------------------------- 1 2、红外编码原理 -------------------------------------------------- 3 三、硬件电路设计 ----------------------------------- 5 1、总体电路图 ----------------------------------------------- 5 2、数码管与LED显示电路图 ---------------------------------------6 四、软件设计 --------------------------------------- 7 1、程序框图 ----------------------------------------------------- 8 2、程序清单 ----------------------------------------------------- 8 3、总结与心得 --------------------------------- 14

一、前言 随着科学技术的发展,单片机因其该可靠性和高性价比,在智能化家用电器仪表仪器等恒多领域得到极为广泛的应用。在很多实际单片机系统中,常常使用非电信号,如光信号,超声波信号等,来传播信息,以实现遥控和遥测的功能,其中红外遥控是目前最广泛的一种通信和控制手段。由于红外遥控使用方便、功耗低、成本低廉、功能强、抗干扰强等特点,因而,继彩电、录像机之后,在录音机、音响备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。 本设计以STC89C52单片机作为控制中心,综合应用了单片机内部结构及中断系统等知识,应用红外光的优点,实现对红外遥控器的解码和通信。 二、设计原理 1、红外通信原理 红外通信,即以红外线作为通信载体,通过红外光在空中的传播来传输数据的通信方式,它有发射红外线的电路和接收端来完成。在发射端,发送的数字信号经过适当的调制编码后,送入电光变换电路,经红外发射管转变为红外光脉冲发射到空中;在接收端,红外接收器对接收到的红外光脉冲进行光电变换,解调,再经单片机处理,便可以恢复出原数据信号。 红外通信原理图 2、红外编码原理 常用的红外线信号传输协议有ITT 协议、NEC 协议、Nokia NRC 协议、Sharp 协议、Philips RC-5 协议、Philips RC-6协议,Philips RECS-80协议,以及Sony SIRC 协议等。 1)协议组成:一般由引导码,用户码,数据码,重复码或数据码的反码和结束码构成。2)载波:常用的有33K,36K,36.6K,38K,40K,56K,无载波 3)占空比:常用的有1/3,1/2,不常用1/4 4)调制方式:脉宽调制,相位调制,脉冲位置调制 本次设计红外发射端选用的是NEC协议编码的,由38K载波调制的红外编码的红外遥控器。 (1)0和1的编码 遥控器发射的信号由一串0和1的二进制代码组成。不同芯片对0和1的编码有所不同。通常有曼彻斯特编码和脉冲宽度编码。TC9012的0和1采用PWM方法编码,即脉冲宽度调制。以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,如下图所示:

基于单片机控制的红外线防盗报警器的设计

目录 1 绪论 (3) 1.1 研究目的和意义 (3) 1.2 研究内容 (3) 1.3研究方法和技术路线 (3) 1.4 预期的研究目标 (4) 2 系统总体设计 (4) 2.1系统概述 (4) 2.2 主要器件介绍 (6) 2.2.1 热释电红外传感器概述 (6) 2.2.2 AT89C51 单片机概述 (9) 2.3 总体设计框图 (14) 3 系统硬件设计 (15) 3.1信号检测与放大模块 (15) 3.1.1电路实现功能 (15) 3.1.2电路图 (15) 3.1.3电子元件介绍 (15) 3.2 LED显示模块 (16) 3.2.1 电路实现功能 (16) 3.2.2电路图 (16) 3.2.3电子元件介绍 (16) 3.3 报警执行模块 (17) 3.3.1 电路实现功能 (17) 3.3.2电路图 (17) 3.3.3电子元件介绍 (17) 3.4 手工暂停模块 (18) 3.4.1 电路实现功能 (18)

3.4.2电路图 (18) 3.5 晶振与复位模块 (18) 3.5.1 电路实现功能 (18) 3.5.2电路图 (19) 3.5.3电子元件介绍 (19) 4 系统软件设计 (21) 4.1 软件设计介绍 (21) 4.2 主程序设计 (21) 4.2.1 实现功能 (21) 4.2.2 流程图 (21) 4.3 定时中断程序设计 (23) 4.3.1 实现功能 (23) 4.3.2 10s定时流程图 (23) 4.3.3 关键技术 (23) 4.3.4 关键代码: (25) 4.4 解除中断程序设计 (26) 4.4.1 实现功能 (26) 4.4.2 程序流程图 (26) 4.4.3 关键技术 (27) 4.4.4 关键代码 (28) 5 实验结论 (29) 结束语 (30) 附录一 (30) 附录二 (33) 附录三 (33) 参考文献 (34) 致谢 (35)

基于单片机的红外无线控制

中国矿业大学徐海学院 技能考核培训 姓名:陈思彤学号: 22110838 专业:信息11-2班 题目:基于单片机的红外无线控制 专题:音乐播放器 指导教师:有鹏老师翟晓东老师 设计地点:电工电子实验室 时间: 2014 年 4 月

通信系统综合设计训练任务书 学生姓名陈思彤专业年级信息11-2班学号22110838 设计日期:2014年4 月5日至2014 年4 月10 日 设计题目: 基于单片机的红外无线控制 设计专题题目: 音乐播放器 设计主要内容和要求: 1. 主要内容: 单片机内部结构 红外遥控解码 C语言程序设 2. 功能扩展要求 实现音乐播放器的功能 指导教师签字:

摘要:近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入。红外线技术也被广泛应用于各个电子领域,先设计一种基于单片机的红外遥控的简易音乐播放器。通信蜂鸣器来发声,来完成音乐播放器的功能。该系统可实现对音乐播放的远距离遥控,且结构简单,速度快,抗干扰能力强。通过本次课程设计,我对单片机中断系统等知识有了进一步的了解,对单片机的相关知识做到理论联系实际。 关键词:单片机,中断系统,红外遥控,音乐播放

目录 1 绪论 (4) 1.1概述 (4) 1.2功能 (4) 2 硬件电路 (5) 2.1总体设计方 (5) 2.2单片机最小系统 (5) 2.3红外遥控收发电路 (5) 2.3.1 红外遥控发射电路 (6) 2.3.2 红外遥控接收电路 (7) 2.4蜂鸣器电路 (7) 2.5 LED指示灯电路 (8) 3软件编程 (9) 3.1 C语言实现系统设计 (9) 3.2乐谱的改编 (10) 参考文献 (11) 附录 (12)

单片机如何通过捕获来实现对红外遥控器解码

单片机如何通过捕获来实现对红外遥控器解码 一、内容提要 上讲介绍并应用了单片机动态扫描驱动数码管,并给出了实例。这一讲将重点介绍单片机如何通过捕获来实现对红外遥控器解码。通过该讲,读者可以掌握红外遥控器的编码原理以及如何通过单片机对遥控器进行解码。 二、原理简介 随着家用电器、视听产品的普及,红外线遥控器已被广泛使用在各种类型的家电产品上(如遥控开关、智能开关等)。其具有体积小、抗干扰能力强、功耗低、功能强、成本低等特点,在工业设备中也得到广泛应用。 一般而言,一个通用的红外遥控系统由发射和接收两大部分组成,如图1 所示: 图1 红外遥控系统框图 其中发射部分主要包括键盘矩阵、编码调制、红外发射管;接收部分包括光、电信号的转换以及放大、解调、解码电路。举例来说,通常我们家电遥控器信号的发射,就是将相应按键所对应的控制指令和系统码(由0 和1 组成的序列),调制在32~56kHz 范围内的载波上,然后经放大、驱动红外发射管将信号发射出去。此外,现在流行的控制方法是应用编/ 解码专用集成电路芯片来实现(如下文提到的SAA3010 红外编码芯片和HS0038 红外接收头)。 不同公司的遥控芯片,采用的遥控码格式也不一样。在此介绍目前广泛使用较普遍的两种,一种是NEC Protocol 的PWM(脉冲宽度调制)标准,一种是Philips RC-5 Protocol 的PPM(脉冲位置调制)标准。 NEC 标准:遥控载波的频率为38kHz(占空比为1:3);当某个按键按下时,系统首先发射一个完整的全码,然后经延时再发射一系列简码,直到按键松开即停止发射。简码重复为延时108ms,即两个引导脉冲上升沿之间的间隔都是108ms。一个完整的全码如图2所示。

基于单片机的报警系统

毕业设计 热释电人体感应红外报警器设计制作 学生学号:141101043 141101066 学生姓名:张飞鹏白堆兑 导师姓名:杜娟 班级机电一体化(2)班专业名称机电一体化 提交日期年月日答辩日期年月日 年月

摘要 热释电红外传感器,它的制作简单、成本低、安装比较方便,而且防盗性能比较稳定,抗干扰能力强、灵敏度高、安全可靠。这种防盗器安装隐蔽,不易被盗贼发现,便于多用户统一管理。本设计包括硬件和软件设计两个部分。硬件部分包括单片机控制模块、红外探头模块、驱动执行报警模块、LED控制模块等部分组成。处理器采用51系列单片机AT89C51,程序使用C语言编写。 关键字:热释电红外传感器、AT89C51、红外线.

目录 一、引言 (4) 二、设计任务分析 (4) 三、技术方案的详细设计(实施) (5) (一)本系统的设计方案 (5) 1.系统概述 (5) (二)硬件电路设计 (5) (三)单片机部分 (6) 1.AT89C51单片机简介 (10) 2.单片机最小系统 (11) 3.按键部分电路 (11) 4.报警电路 (12) 5.红外感应部分 (110) 6.主程序工作流程图 (13) 四、调试及调试中遇到的问题 (14) 五、总结评价 (15) 致谢 (16) 参考文献 (17) 附件一:总体原理图设计 (18) 附件二:实物图 (20) 附件三:程序源代码 (20)

一、引言 随着科技的提高,电子电器飞速发展,人民生活水平有了很大提高。各种高档家电和贵重物品为许多家庭所拥有。然而一些不法分子也越来越多。这点就是因为不法分子看到了大部分人防盗意识不够强所造成的结果。因此越来越多的居民家庭对财产安全问题十分担忧。报警系统这时为人们解决了大部分问题。但是市场上的报警系统大部分是适用于一些大公司的重要机构。其价格昂贵,使普通家庭难以承受。如果设计一种价格低廉,性能可靠、智能化的报警系统,必将在私人财产的防盗领域起到巨大作用。由于红外线是不可见光,隐蔽性能良好,因此在防盗、警戒等安保装置中被广泛应用。而本设计的电路包括硬件和软件两个部分。硬件部分包括红外感应部分与单片机控制部分,整个系统电路可划分为:电源部分、传感器模块部分、单片机控制电路,而单片机控制由最小系统和指示灯电路、报警电路等子模块组成。主要工作由热释电红外感应器完成信息采集、处理、数据传送经过单片机功能设定到达报警模块这一过程。就此设计的核心模块来说,单片机就是设计的中心单元。单片机应用系统也是由硬件和软件组成。硬件包括单片机、输入/输出设备、以及外围应用电路等组成的系统,软件是主要是工作的程序通过编写程序来控制输入的信号。 二、设计任务分析 1.该设计包括硬件和软件设计两个部分。模块划分为数据采集、按键设定、报警等。 2.本红外线防盗报警系统由热释电红外传感器、蜂鸣器、单片机控制电路、LED指示电路及软件组成。 3.系统可实现功能。当人员外出时,可把报警系统设置在外出布防状态,探测器工作起来,当有人闯入时,热释电红外传感器将探测到动作,设置在监测点上的红外探头将人体辐射的红外光谱变换成电信号,红外热释电模块送出TTL 电平至AT89C51单片机,经单片机处理运算后驱动执行报警电路使警号发声。

基于51单片机的红外遥控

基于51单片机的红外遥控 红外遥控就是无线遥控的一种方式,本文讲述的红外遥控,采用STC89C52单片机,1838红外接收头与38k红外遥控器。 1838红外接收头: 红外遥控器: 原理: 红外接收的原理我不赘述,百度文库上不少,我推荐个网址,这篇文章写得比较清楚,也比较全面, 我主要讲下程序的具体意思,在了解原理的基础上,我们知道,当我们在遥控器上每按下一个键,遥控器上的红外发射头都会发出一个32位的编码(32位编码分成4组8位二进制编码,前16位为用户码与用户反码,后16位为数据码与数据反码,用户码表示遥控器类型,数据码表示按键编码),不同的键对应不同的编码,红外接收头接收到这个编码后,发送给单片机,再进行相关操作。 源程序1:(这个程序的功能就是将用户码与用户反码,数据码与数据反码显示在1602液晶上,因为遥控器买回来就是不会说明按键对应什么码值,所以先自己测试,确定每个按 键的码值) #include #include #include #define uint unsigned int #define uchar unsigned char #define _Nop() _nop_() #define TURE 1 #define FALSE 0

/*端口定义*/ sbit lcd_rs_port = P3^5; /*定义LCD控制端口*/ sbit lcd_rw_port = P3^6; sbit lcd_en_port = P3^4; #define lcd_data_port P0 /////////////////////////////////// void delay1 (void)//关闭数码管延时程序 { int k; for (k=0; k<1000; k++); } //////////////////////////////////// uchar code line0[16]={" user: "}; uchar code line1[16]={" data: "}; uchar code lcd_mun_to_char[16]={"0123456789ABCDEF"}; unsigned char irtime;//红外用全局变量 bit irpro_ok,irok; unsigned char IRcord[4];//用来存放用户码、用户反码、数据码、数据反码unsigned char irdata[33];//用来存放32位码值 void ShowString (unsigned char line,char *ptr); ////////////////////////////////////////////// void Delay(unsigned char mS); void Ir_work(void); void Ircordpro(void); void tim0_isr (void) interrupt 1 using 1//定时器0中断服务函数 { irtime++; } void ex0_isr (void) interrupt 0 using 0//外部中断0服务函数 { static unsigned char i; static bit startflag; if(startflag){ if(irtime<63&&irtime>=33)//引导码TC9012的头码 i=0; irdata[i]=irtime; irtime=0; i++; if(i==33){ irok=1; i=0; }

用单片机解码红外遥控器

用单片机解码红外遥控器 遥控器使用方便,功能多.目前已广泛应用在电视机、VCD、DVD、空调等各种家用电器中,且价格便宜,市场上非常容易买到。如果能将遥控器上许多的按键解码出来.用作单片机系统的输入.则解决了常规矩阵键盘线路板过大、布线复杂、占用I/O口过多的弊病。而且通过使用遥控器,操作时可实现人与设备的分离,从而更加方便使用。下面以TC9012编码芯片的遥控器为例。谈谈如何用常用的51系统单片机进行遥控的解码。 一、编码格式 1、0和1的编码 遥控器发射的信号由一串O和1的二进制代码组成.不同的芯片对0和1的编码有所不同。通常有曼彻斯特编码和脉冲宽度编码。TC9012的O和1采用PWM方法编码,即脉冲宽度调制,其O码和1码如图1所示(以遥控接收输出的波形为例)。O码由O.56ms低电平和0.56ms高电平组合而成.脉冲宽度为1.12ms.1码由0.56ms低电平和1.69ms高电平组合而成.脉冲宽度为2.25ms。在编写解码程序时.通过判断脉冲的宽度,即可得到0或1。 2、按键的编码

当我们按下遥控器的按键时,遥控器将发出如图2的一串二进制代码,我们称它为一帧数据。根据各部分的功能。可将它们分为5部分,分别为引导码、地址码、地址码、数据码、数据反码。遥控器发射代码时.均是低位在前。高位在后。由图2分析可以得到.引导码高电平为4.5ms,低电平为4.5ms。当 接收到此码时.表示一帧数据的开始。单片机可以准备接收下面的数据。地址码由8位二进制组成,共256种.图中地址码重发了一次。主要是加强遥控器的可靠性.如果两次地址码不相同.则说明本帧数据有错.应丢弃。不同的设备可以拥有不同的地址码.因此。同种编码的遥控器只要设置地址码不同,也不会相互干扰。图中的地址码为十六进制的0EH(注意低位在前)。在同一个遥控器中.所有按键发出的地址码都是相同的。数据码为8位,可编码256种状态,代表实际所按下的键。数据反码是数据码的各位求反,通过比较数据码与数据反码.可判断接收到的数据是否正确。如果数据码与数据反码之间的关系不满足相反的关系.则本次遥控接收有误.数据应丢弃。在同一个遥控器上.所有按键的数据码均不相同。在图2中,数据码为十六进制的0CH,数据反码为十六进制的0F3H(注意低位在前).两者之和应为0FFH。 二、单片机遥控接收电路

基于单片机的红外解码的设计

基于单片机的红外遥控器解码器的设计 时间:2011-05-17 22:25:18来源:电子元器件应用作者:李泽光TC9012F是一种通用型红外遥控信号发送用CMOS大规模集成电路,适用于电视(TV),磁带录像机(VTR),激光唱机等设备的遥控操作。市场上,以TC9012F为核心的9012型红外遥控器被广泛使用且价格便宜。将设计的基于单片机AT89C51的9012型红外遥控解码器应用于生产即时显示系统中,作为参数设置和系统控制用红外遥控器,在实际应用中收到了良好效果。 1 红外线遥控信号发送器电路 TC9012F的遥控信号 TC9012F为4位专用微控制器,其内部振荡电路的振荡频率fosc典型值为455 kHz。当不按下操作键时,其内部455 kHz的时钟振荡器停止工作,以减少电池消耗。内部分频电路将振荡频率,fosc进行12分频后,变成频率fc=37.9 kHz,占空比为1/3的脉冲载波信号。红外遥控信号发送器电路由集成电路TC9012F、键盘矩阵电路、驱动器和红外发光二极管组成,遥控信号为37.9 kHz的脉冲载波被遥控编码脉冲调制的已调波,如图1所示。 遥控编码脉冲由引导码、用户码、功能码和功能码的相反码组成,用户码是同一组码发送两次,如图2所示。用户码为8位,所以整个脉冲码为32位。引导码作为接收数据的准备脉冲,他由8TCP(4.5 ms)的高电平和8TCP(4.5 ms)的低电平组成。用户码和功能码采用脉冲位置调制(PPM)方式编码,根据脉冲之间的时间间隔来区分码值的"0"或"1"。对应于二进制数字信号的"0"或"1",脉冲时间间隔分别为2TCP(1.125 ms)和4TCP(2.25 ms),而每一脉冲的宽度仍不变,均为TCP(0.562 6 ms)。由于用户码发送两次,功能码与其相反码一起发送,因此系统的误动作很少。 本遥控器采用第一次发送的遥控信号的编码脉冲(图3所示)和第二、第三次连续发送的遥控信号的编码脉冲(图4所示)不同的工作方式。这样,当按键一直按着的时候,从第二次连续发送开始,只发送引导码和用户码第一位SO的相反码SO,因此可减少接收处理时间和红外发光二极管功耗,遥控编码脉冲经脉冲载波调制后由TC9021F的第脚输出,再经激励器驱动红外发光二极管,发送出波长为940nm的脉冲红外光。假设用户码为十六进制的76H 则第一次发送的遥控信号的编码脉冲如图3所示。

相关主题
文本预览
相关文档 最新文档