用PIC做红外线遥控接收3
PICKIT3中文说明书
• Microchip 愿与那些注重代码完整性的客户合作。
• Microchip 或任何其他半导体厂商均无法保证其代码的安全性。代码保护并不意味着我们保证产品是 “牢不可破”的。
商标
Microchip 的名称和徽标组合、 Microchip 徽标、 dsPIC、 KEELOQ、 KEELOQ 徽标、 MPLAB、 PIC、 PICmicro、 PICSTART、 rfPIC 和 UNI/O 均为 Microchip Technology Inc. 在美国和其他国家或地区的注册商标。
Analog-for-the-Digital Age、 Application Maestro、 CodeGuard、 dsPICDEM、 、 dsPICworks、 dsSPEAK、 ECAN、 ECONOMONITOR、 FanSense、 HI-TIDE、 In-Circuit Serial Programming、 ICSP、 ICEPIC、 Mindi、 MiWi、 MPASM、 MPLAB Certified 徽标、 MPLIB、 MPLINK、 mTouch、 nanoWatt XLP、 Omniscient Code Generation、 PICC、 PICC-18、 PICkit、 PICDEM、 、 PICtail、 PIC32 徽标、 REAL ICE、 rfLAB、 Select Mode、 Total Endurance、 TSHARC、 WiperLock 和 ZENA 均为 Microchip Technology Inc. 在美国和其他国家或地 区的商标。
pic红外
#define LED_GND PORTCbits.RC0
#define TRIS_LED_GND DDRCbits.RC0
#define LED PORTDbits.RD2
#define TRIS_LED DDRDbits.RD2
unsigned int timer0[80]={0}; /*红外定时值数组*/
T1CONbits.TMR1ON=1;
while(key_num==1)
{
/* if(PIR2bits.TMR3IF==1)
{
TMR3H=0XFF;
TMR3L=0Xf0;
PIR2bits.TMR3IF=0;
{
while(!SW1);
key_num=7;
}
}
if(SW2==0)
{
DelayMs(10);
if(SW2==0)
{
while(!SW2);
key_num=8;
}
}
COL3=0;
INTCON3bits.INT1IE=1; /*打开INT1中断*/
INTCON3bits.INT1IF=0; /*INT1中断标志清零*/
INTCON2bits.INTEDG1=0; /*下降沿触发INT1*/
T0CON=0x00; /*16位定时器,1:2预分频,关TIMER0*/
SPBRGH=0X01; /*9600波特率*/
SPBRG=0X03; /*9600波特率*/
TXSTAbits.TXEN=1; /*使能发送*/
}
void key_initial(void) /*键盘初始化*/
自制红外遥控开关电路图
自制红外遥控开关电路图想自己制作一个可以遥控开关电灯的电路,最简单的方法就是直接选用市售的PT2262和PT2272这类无线收发模块,其遥控距离可达30~40m,并且可以控制多路负载工作。
PT2262和PT2272收发模块。
上图中左边的为PT2272接收模块,这种模块只要外接三极管驱动继电器即可控制电灯的工作。
右边为无线遥控发射器,内部一般都是采用与PT2272配套的PT2260或PT2262设计。
若提问者想采用元器件自己动手制作遥控电路,可以按照下图所示电路来制作。
简单的红外遥控开关电路。
红外发射电路。
上图中,555时基电路接成一个自激多谐振荡器,其振荡频率由电阻R1、R2及C2决定。
调整R2或C2的标称值即可改变振荡频率。
按下微动开关S,555电路得电工作,驱动红外发射二极管VD向外发射红外遥控信号。
红外接收电路。
上图中,VD为红外接收二极管,用于接收红外发射电路发出的红外遥控信号。
V6及其集电极所接的L、C4组成一个选频放大器,V7、V8组成一个双稳态电路。
当红外接收二极管VD接收到红外遥控信号时,该信号先经V5放大,然后送至V6组成的选频放大器放大,若VD 接收到的红外信号的频率与LC4的并联谐振频率相同时,V6集电极便会输出一个触发信号,使V7、V8构成的双稳态电路翻转,V8集电极输出变为高电平使V9导通,继电器吸合,接通电灯电源。
若再按一下红外遥控发射器,VD又接收到红外遥控信号,使双稳态电路再次翻转,V8集电极变为低电平,V9截止,继电器失电,电灯电源断开。
上图电路中二极管VD1~VD5皆选用1N4148,V5~V9选用9014三极管即可。
红外发射管和红外接收管。
上图中,透明封装的为红外发射二极管,蓝黑色封装的为红外接收二极管。
制作时,红外发射二极管可以选用5mm的管子。
红外接收二极管在使用时,与稳压管一样,应反向接于电路中。
基于PIC单片机的红外遥控设计
·编码及解码程序;
·红外传感器的选取和使用;
·红外键盘的设计。
(三)开发的思路
设计基于单片机的红外遥控,我们要从发射接收电路,编码解码,传感器,红外键盘几个方向入手。在软件部分中,我们主要是先要画好系统原理图,还有明确系统各部分功能,发射接收电路的设计,编码及解码程序,在硬件部分中,主要是发射和接收电路的硬件设计,红外传感器的使用,以及红外键盘的设计。
高档8位单片机:PIC17CXX系列
PIC17CXX是适合高级复杂系统开发的系列产品,其性能在中档位单片机的基础上增加了硬件乘法器,指令周期可达成160ns,它是目前世界上8位单片机中性价比最高的机种,可用于高、中档产品的开发,如马达控制
(二)相关背景知识
1.16F877a基本知识
(1)16F877a的基本架构
(8)睡眠和低功耗模式。虽然PIC在这方面已不能与新型的TI-MSP430相比,但在大多数应用场合还是能满足需要的。
3.PIC单片机的分类
初档8位单片机:PIC12C5XXX/16C5X系列
PIC16C5X系列是最早在市场上得到发展的系列,因其价格较低,且有较完善的开发手段,因此在国内应用最为广泛;而PIC12C5XX是世界第一个八脚低价位单片机可用于简单的智能控制等一些对单片机体积要求较高的地方,前景十分广阔。
XXXX大学本科毕业设计
基于PIC单片机的红外遥控设计
学生姓名
所在系
专业名称
班级
学号
指导教师
XXX大学教务处
年月
基于PIC单片机的红外遥控设计
学生:指导教师:
内容提要:遥控器是现代电子控制系统的重要部件。可以利用无线电波、可见光、红外光、超声波作为传输介质远距离操控电子设备。由于其功耗低、可靠性高和互相干扰小等优点,已在现实生活中得到了广泛应用。在目前的家用电器中,如电视机、家庭影院和数字音像设备中,大多都采用了红外线遥控电路。而这套“基于PIC单片机的红外遥控设计”则是以Microchip公司生产的16F877a芯片为模版,价格低廉,电路结构简单,据此本设计提出了一种简单易行的红外遥控器的设计。
人体热释红外感应控制ICAS081-3P
人体热释红外线感应IC(三探头)功能叙述AS081-3P是一个CMOS工艺集成的PIR(Passive Infra-Red)处理器芯片,功耗很低。
其内部构架采用模拟及数字混合电路的Mixed-mode方式设计,各种情况下使用皆十分稳定。
AS081-3P采用第三代PIR人体热释红外线探测技术方案,内置高精度算法单元,可自调整适应当前环境,滤除环境干扰,有效提取人体信号,最远感应距离高达二十几米。
实际应用电路相当简单,研发、生产无需调试,大幅降低生产成本、节省空间。
AS081-3P可以外接3探头、2探头或1探头进行探测,感应范围很宽。
产品特色‧工业级标准,稳定性好,抗干扰性强,工作温度范围宽,有利于通过多种认证。
‧内置运算放大器,可与多种PIR传感器匹配,进行信号预处理。
‧内置运算放大器周边电路,研发、生产时无需调试,节省开发时间和生产成本。
‧内置高精度算法单元,可自调整适应当前环境,有效区分人体信号和干扰信号。
‧感应距离远,且误动作机率远低于传统控制芯片。
‧可以外接3探头、2探头或1探头进行探测,感应范围很宽。
‧灵敏度可调节,使用更方便。
‧内置高精度晶振。
‧实际应用电路相当简单,批量生产产品一致性好,返修率低,成品体积可以做得很小。
‧SSOP16封装,芯片体积小。
‧环保封装,不仅达到欧盟RoHS标准,更可达到无卤素绿色环保标准(如SONY SS-00259、Apple 069-1857、Dell A00-00)。
产品应用‧花园、车库、走廊、楼梯等场合的自动节能照明。
‧家庭、商店、办公室、工厂等场合的监控、报警、门铃系统。
‧排气扇、吊扇自动开关系统。
‧电子相册、显示器、数码相机、打猎相机等数码产品的节能、控制系统。
‧智能玩具的控制。
电气规格参数符号最小值典型值最大值单位条件工作电压V DD 2.8 3.3 3.6 V —工作电流I DD-350 -uA VDD = 3.3V,无负载V OUT端输出电流I OH--10 mA VDD = 3.3V,V OL = 0.3V 工作温度Temp. -40 25 85 ℃—储存温度Temp. -65 25 150 ℃—人体热释红外线感应IC (三探头)IC 内部方框图管脚排列AS081-3P SSOP16人体热释红外线感应IC (三探头)管脚描述管脚号符号功能描述1 PIR2 PIR 探头信号输入引脚(不用时接VSS 即可) 2 PIR3 PIR 探头信号输入引脚(不用时接VSS 即可) 3 VSS 电源负极4 RST 芯片复位引脚5 NC 空脚6 NC 空脚7 NC 空脚8 OUT控制信号输出端。
毕业设计正文:基于PIC单片机的遥控探照灯的设计
目录摘要 (1)Abstract (2)第1章前言 (3)1.1 课题研究的背景 (3)1.2 课题主要研究工作 (4)第2章方案选择及验证 (5)2.1 通信类型的选择 (5)2.2 主控芯片的选择 (6)2.3 方案确定及验证 (9)第3章硬件系统设计 (10)3.1 系统总体结构设计 (10)3.2 CPU模块 (11)3.3 通信模块 (14)3.4 灯控模块 (20)3.5 电机模块 (22)3.6 电源模块 (24)3.7 总电路图 (25)第4章软件设计 (26)4.1 软件部分总体分析 (26)4.2 流程图 (27)4.3 具体程序设计 (28)参考文献 (30)致谢 (31)附录:源程序 (32)基于PIC单片机的遥控探照灯的设计摘要:在舞台上,有时为了营造某种特殊效果,需要关闭除探照灯以外的所有现场灯。
针对舞台、监狱、各种高空作业,设计一种支持数据存储的遥控探照灯系统则具有相当大的实用价值。
本文通过无线控制探照灯上下左右360度自由转动及灯光亮度256段控制,以达到尽可能的满足舞台需求。
在发送探照灯转动控制、亮度控制等命令时采用无线发送,单片机则通过接收无线遥控信息,从而实现准确、方便的调节,实现探照灯的功能。
该方案通过试验结果表明,该系统性能稳定,可准确地完成灯控、转动,以及频道的存储及调出等功能,并具有操作方便、简单的优点。
关键字:PIC单片机;无线遥控;步进电动机;Based on the PIC microcontroller remote controlthe searchlight designAbstract:On stage, Sometimes in order to create a special effect, Need to shut down all the scene outside except the searchlight lights. Aimed at the stage, prison, various aloft working, Design a support data storage remote control the searchlight system has considerable practical value .This article through wireless control the searchlight up, down, left and right360-degree free rotation and lamp brightness 256 section control, In order to achieve the meet needs. As possible stage .When sending the searchlight turn control, brightness control command , used by wireless transmission, microcontroller is receiving wireless remote control information, thus realize accurate, convenient adjustment, realize the searchlight functionThe plan by the experimental results show that the system has stable performance, we can accurately finish lamp control, rotation, and a channel storage, and has the a dvantages of convenient operation, sim.Key word: PIC microcontroller; Wireless remote control; Stepper motor第1章前言1.1 课题研究的背景在舞台上,有时为了营造某种特殊效果,需要关闭除探照灯以外的所有现场灯。
pic单片机解码红外遥控器方法
4
北方蓝芯科技开发有限公司
NBCPIC-V2.0 使用手册5来自北方蓝芯科技开发有限公司
NBCPIC-V2.0 使用手册
EX16.1、红外解码数码管显示
//*********************************************************************************** //中断服务子程序 //*********************************************************************************** void interrupt init1(void) { static uchar i; //接收红外信号处理 static uchar flag; //第二次进入中断时,完成第 1 个周期计时 GIE=0; //关总中断 //定时器中断处理 if(TMR1IF==1) { TMR1H=0XFF; TMR1L=0x0E; TMR1IF=0; IRQ_num++; }
发送一组完整的编码脉冲 (4)红外接收端的解码处理 需要注意的是: 当一体化接收头收到 38kHz 红外信号时, 输出端输出低电平, 否则为高电平。 所以一体化接收头输了的波形是与发射波形是反向的, 红外接收头输出的原始遥控数据信号, 正好 和发射端倒向。也就是以前发射端原始信号是高电平,那接收头输出的就是低电平。开始时发射一 个特定的同步码头,对于接收端而言就是一个 9ms 的低电平,和一个 4.5ms 的高电平,这个同步码 头可以使程序知道从这个同步码头以后可以开始接收数据。接收到得编码脉冲如下图所示:
2
北方蓝芯科技开发有限公司
NBCPIC-V2.0 使用手册
红外遥控原理
遥控接收器制作过程
自制电脑红外遥控接收器(PC软解码)网上有很多介绍红外遥控接收器制作的文章,但其中大部分是用单片进行红外解码,然后再通过串口或USB把解码后的按键信息传入到PC的。
这样的电路制作起来,不仅造价相对偏高,而且需要对单片编程,这会令大部分软件开发爱好者望而却步。
最近看到一篇仅需要7个简单元器件的红外接收器,只需拿起烙铁,不需硬件编程就可以制作完成,原理图如下:由原理图我们可知,红外接收头把接收的红外信号转换为高低电平通过串口的DSR管脚传入到PC,PC软件通过对DSR高低电平信号的时间曲线进行分析,从而获得相对应的按键信息。
红外遥控器一般采用脉宽调制的串行码,经38kHz的载频把红外信号发射出去。
其编码信息一般由三部分组成:引导码、地址码和数据码。
一般信号长度大约100ms左右,持续按键则重复发送(中间会有10ms以上的间歇)。
常态下,红外接收头的输出(OUT)都是高电平,引导码信号首先会令红外接收头输出一个大约10ms 左右的低电平(不同遥控器有不同的时延),这可令接收设备从容判定信号的到来,而后面的地址码和数据码其电平高低变化就相对较快了,大概在几十或几百个微秒之间。
PC红外遥控软件一般选用Girder,在使用之前需要安装“SFH-56 plugin for Girder”这个插件(文件名"igor SFH-56P lug.dll"),否则不能正常处理我们这种电路的红外接收器信号。
可悲的是我至今没找到这个插件,网上提供的很多链接都是坏的。
即使找到了这个插件,要想在我们自己编写的程序中使用也是困难的,因为Girder并没有为我们开发者提供API接口。
既然Girder能用软件实现红外解码,我们为什么不能呢?凡事都要开动大脑,积极行动才对,下面就是我自己焊接的一个红外接收器(元器件是在中发买的,一共不到10元钱,还富裕好多电阻、电容!)(图下方的红外遥控器的接收器是基于USB的,仅支持Vista以上版本,并且不支持个人开发,不过今天它终于发挥了它应有的作用。
如何通过PIC单片机设计一款多媒体终端遥控器?
如何通过PIC单片机设计一款多媒体终端遥控器?1 设计理念和原理1.1 设计理念随着数字家庭等领域技术的迅速发展,在多媒体终端上的增值业务将越来越多,浏览网页、搜索、短信等都需要遥控器进行输入。
但作为连接用户和终端之间的重要外设,遥控器的设计理念还停留在模拟电视时代,体验感较差。
目前用户输入的解决方式是呼出终端的内置输入法,这样就带来了两个问题:一,不同厂家的终端都需要内置自己的中英文输入法,占用资源,而且必须搭配自己的遥控器使用,通用性不高;二,用户在输人时必须一边看遥控器输入一边看屏幕确认输入,如果文字较多会造成频频抬头和低头的麻烦,难以忍受。
基于以上缺点,本文提出将输入法内置于遥控器的理念,在遥控器上输入文字后再统一将文字编码用红外线发给终端,终端接收后将编码译成文字显示在输入区中。
1.2 红外遥控器工作原理遥控码是一串二进制数字信号,通过脉冲编码形成脉冲序列,被调制到一个固定频率载波上,最后通过红外发射管,以光脉冲的形式发射出去。
脉冲编码就是将“1”和“0”用一个脉冲来标识。
本设计使用NEC红外协议,用脉宽560us,周期4x560us代表二进制“1”;用脉宽560us,周期2x560us代表二进制“0”(如图1所示,密集竖线表示38KHz载波)。
图1 NEC协议红外遥控信号的调制2 硬件设计2.1 总体设计原则遵循嵌入式系统高性能、低功耗、小体积的设计思想,总体设计原则是:元器件采用低功耗芯片;尽量用软件实现硬件功能,减少器件数量;键盘采用中断方式,一旦系统空闲超时立即使其进入休眠状态,再次按键予以唤醒。
2.2 硬件组成硬件组成如图2所示。
其中:主芯片为Microchip公司PIC18F系列高档单片机66J11,性价比极高;液晶屏控制器为Sitronix公司的ST7565R,分辨率128x64;汉字点阵字库用Atmel公司的262KB Flash制作,它和LCD与单片机的接口均为SPI接口;键盘有49个按键.采用7x7矩阵方式,7根行线连到单片机B口的RBI~RB7外部中断脚,列线连到单片机的E口的RE1-RE7,作为数字输出口。
PIC单片机红外遥控编码与解码的问题分析
PIC单片机红外遥控编码与解码的问题分析一般常用的红外遥控器编码规则都差不多,基本上都同6221 原理一样PIC 单片机接收时:如果用54,57 这类片子做的话有一定的难度(假如要做成实时控制的;比如说你还要驱动显示,驱动步进电机,在加上几个按键)原因就是这类片子没有中断例程如下(用来解6221;分频比为256)RF:BTFSC PORTB,2;;B2 口用做接收口GOTO RF1BTFSS DOWNBIT;;检测下降沿标制CLRF RTCCOUNTBSF DOWNBIT;制下降沿标制BTFSS UPBIT;;检测上升沿标制RETLW 0BTFSC IDBIT;;检测码头标制GOTO RF3MOVLW 2AHSUBWF RTCCOUNT,0BTFSS STATUS,0GOTO RF2MOVLW 36HSUBWF RTCCOUNT,0BTFSC STATUS,0GOTO RF2BTFSC IDBITGOTO RF3MOVLW .8MOVWF LOOPMOVLW .3MOVWF LOOPCOUNTCLRF DATACOUNTBSF IDBITBSF DOWNBITBCF UPBITCLRF RTCCOUNTRETLW 0RF1:BTFSS DOWNBITRETLW 0BSF UPBITRETLW 0RF2:BCF DOWNBITBCF UPBITBCF IDBITCLRF RTCCOUNTRETLW 0 ;遥控接收RF3:MOVLW 02HSUBWF RTCCOUNT,0BTFSS STATUS,0GOTO RF4MOVLW 0CHSUBWF RTCCOUNT,0BTFSS STATUS,0GOTO RF4GOTO RF2RF4:MOVLW 08HSUBWF RTCCOUNT,0BTFSC STATUS,0BSF 3H,0MOVLW 07HSUBWF RTCCOUNT,0BTFSS STATUS,0BCF 3H,0RLF DATACOUNT,1BSF DOWNBITBCF UPBITCLRF RTCCOUNTDECFSZ LOOP,1RETLW 0MOVLW .8MOVWF LOOPDECFSZ LOOPCOUNTRETLW 0BSF RFBIT;;制接收完标制BCF DOWNBITBCF UPBITBCF IDBITCLRF。
关于用PIC单片机红外遥控的编码与解码
关于用PIC单片机红外遥控的编码和解码一般常用的红外遥控器编码规则都差不多,基本上都同6221原理一样(可在网上找到)接收时:如果用54,57这类片子做的话有一定的难度(假如要做成实时控制的;比如说你还要驱动显示,驱动步进电机,在加上几个按键)原因就是这类片子没有中断例程如下(用来解6221;分频比为256)RF:BTFSC PORTB,2;;B2口用做接收口GOTO RF1BTFSS DOWNBIT;;检测下降沿标制CLRF RTCCOUNTBSF DOWNBIT;制下降沿标制BTFSS UPBIT;;检测上升沿标制RETLW 0BTFSC IDBIT;;检测码头标制GOTO RF3MOVLW 2AHSUBWF RTCCOUNT,0BTFSS STATUS,0GOTO RF2MOVLW 36HSUBWF RTCCOUNT,0 BTFSC STATUS,0 GOTO RF2BTFSC IDBITGOTO RF3MOVLW .8MOVWF LOOP MOVLW .3MOVWF LOOPCOUNT CLRF DATACOUNT BSF IDBITBSF DOWNBITBCF UPBITCLRF RTCCOUNT RETLW 0RF1:BTFSS DOWNBIT RETLW 0BSF UPBITRETLW 0RF2:BCF DOWNBITBCF IDBITCLRF RTCCOUNT RETLW 0 ;遥控接收RF3:MOVLW 02HSUBWF RTCCOUNT,0 BTFSS STATUS,0 GOTO RF4MOVLW 0CH SUBWF RTCCOUNT,0 BTFSS STATUS,0 GOTO RF4GOTO RF2RF4:MOVLW 08HSUBWF RTCCOUNT,0 BTFSC STATUS,0 BSF 3H,0MOVLW 07HSUBWF RTCCOUNT,0 BTFSS STATUS,0RLF DATACOUNT,1BSF DOWNBITBCF UPBITCLRF RTCCOUNTDECFSZ LOOP,1RETLW 0MOVLW .8MOVWF LOOPDECFSZ LOOPCOUNTRETLW 0BSF RFBIT;;制接收完标制BCF DOWNBITBCF UPBITBCF IDBITCLRF RTCCOUNTRETLW 0////////////////////////////////////////////////////////// TIME:BTFSC TIMEPD1GOTO TIME1MOVF RTCC,0;;(MOVWF TIMEONEBSF TIMEPD1RETLW 0 ;定时查寻TIME1:MOVF RTCC,0SUBWF TIMEONE,0BTFSC STATUS,2RETLW 0BCF TIMEPD1INCF RTCCOUNT,1RETLW 0////////////////////////////////////////////////在这里我是用查询的方式来定时的(RTCCOUNT)只是在解码时不需要去追求时间精度;我是去查RTCC 有没有发生跳变如有则表示时间过了256US---RTCCOUNT加一;这样做有一个好处---你不必去管RTCC 具体的值是多少,(RTCC去做精确的时钟定时;在这个查询的子程序中你可以去判断键扫,显示刷新,驱动步进电机等等)相应的C代码如下:unsigned char rfcount,loop,rftime,//查询定时器k;bit rfbit, //接收完标制lowbit1,lowbit2,downbit,rfgobit;unsigned char dispcount[5];//结果#define rfin RC6//////////////////////////////////////////////////////////////////////////////// rf( )//遥控接收{if(rfbit==0){if((lowbit1==0)&&(rfin==0)){downbit=1;rftime=0;lowbit1=1;return;if((lowbit1==1)&&(rfin==1)){lowbit2=1;return;}if((lowbit1==1)&&(lowbit2==1)&&(RC6==0)) {lowbit1=0;lowbit2=0;if((rftime>=40)&&(downbit==1))//遥控接收;{rfgobit=1;loop=0;rfcount=0;k=1;rftime=0;return;}rfcount=rfcount+1;loop=loop+1;if(rfcount>=31)rfgobit=0;downbit=0;rfcount=0;rfbit=1;loop=0;return;}if((rftime>=7)&&(rfgobit==1)) {dispcount[k]=dispcount[k]|0x80; rftime=0;if(loop==8){k=k+1;loop=0;return;}dispcount[k]=dispcount[k]>>1; return;}if((rftime<5)&&(rfgobit==1))dispcount[k]=dispcount[k]&0x7f;rftime=0;if(loop==8){k=k+1;loop=0;return;}dispcount[k]=dispcount[k]>>1;return;}}}}(查询子程序同汇编)假如用中断的话也可用时间查询的方法,只是接收口改用带中断的口线;RB4--RB7,CCP1,CCP2,都可以。
PIC单片机红外线遥控接收解码实例
[MCD-DEMO2]PIC单片机红外线遥控接收解码实例[PIC16F877A+PICC]//实验目的:熟悉遥控接码解码的方法//数码管显示解码结果:高四位为用户码,低2位为按键码//硬件要求:跳线J19接通,其他跳线断开// 拨码开关S5、S6全部置ON// 其他拨码开关全部置OFF#include<pic.h>__CONFIG(0x1832);//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡#define uchar unsigned char#define uint unsigned intvoid delay(char x,char y);#define bitset(var,bitno)((var)|=1<<(bitno))#define bitclr(var,bitno)((var)&=~(1<<(bitno)))union {struct {unsigned b0:1;unsigned b1:1;unsigned b2:1;unsigned b3:1;unsigned b4:1;unsigned b5:1;unsigned b6:1;unsigned b7:1;}oneBit;unsigned char allBits;} myFlag;#define CNT2_1 myFlag.oneBit.b1#define CNT2_2 myFlag.oneBit.b2#define CNT2_3 myFlag.oneBit.b3#define CNT2 myFlag .allBitsstatic bit FLAGS ;static bit Bitin;union Csr{ unsigned long i;unsigned char Csra[4];}myCsra;#define RMT RA1 // ;遥控接收输入脚位地址(RA。
塞于PIC单片机的一种车载红外夜视仪设计
塞于PIC单片机的一种车载红外夜视仪设计
姜平;赵志旺;闫民华;龚为佳
【期刊名称】《电源技术应用》
【年(卷),期】2009(12)10
【摘要】本文介绍了一种基于PIC系列单片机的红外夜视系统,该系统以单片机PIC16F877及PIC16F876为核心完成数据采集和系统控制,利用MAX487完成单片机之间的串行通信。
给出了系统软硬件设计方法,实验结果证明了系统的实用性。
【总页数】5页(P41-45)
【关键词】红外夜视仪;单片机;通信电路
【作者】姜平;赵志旺;闫民华;龚为佳
【作者单位】中国人民解放军69050部队;中国人民解放军重庆通信学院四系
【正文语种】中文
【中图分类】TN221;TN219
【相关文献】
1.一种基于PIC单片机的红外遥控器系统 [J], 丁广文;陈工;王志良
2.基于单片机PIC的车载IC卡自动检票机设计 [J], 方奋奇;王惠中
3.车载逆变电源逆变器设计中PIC单片机的应用分析 [J], 张西安
4.基于PIC单片机车载电子警报器设计 [J], 张康
5.基于PIC单片机的一种车载红外夜视仪设计 [J], 姜平; 赵志旺; 闫民华; 龚为佳因版权原因,仅展示原文概要,查看原文内容请购买。
PIC单片机在家用电器中的应用
PIC单片机在家用电器中的应用PIC单片机有很多的优势,占据很小的空间却能有着很大的能量。
PIC单片机也由于他微小,价格低廉、易于操作和控制的優点应用于很多行业,现如今在金融、航空航天、医用设备也有着广泛的应用。
本文主要探讨PIC单片机在家用电器行业中的应用。
标签:PIC;单片机;家用电器前言PIC单片机自从现世以来就备受人们关注,它以独特的优点应用于许多行业当中,在控制方面可以通过远程操控,所以他在我们的生活中也占领者很大的地位,在身边很多家用电器中都会应用PIC单片机,PIC单片机应用广泛给人们提供了很多帮助,方便人们完成生活中的琐事。
本文讲述了PIC单片机在几种家用电器中的应用。
1.PIC单片机原理单片机主要是一种在线控制机,即现场控制。
因此,它可以大大提高家用电器的抗干扰能力,降低生产成本,这是离线电脑和家用电器的主要区别。
由于单片机的成本非常敏感,目前的软件主要是一种低级语言。
与二进制编码相比,这种低级转换语言的级别非常有限。
然而,这种低水平的语言仍然作为一种语言在家用电器中使用。
主要原因是微控制器内部结构中没有计算机型CPU。
与此同时,没有像计算机硬盘那样的存储设备。
微控制器又称微控制器控制设备。
它不能完成整个逻辑功能,但它可以将计算机系统集成到芯片中。
换句话说,单控制器计算机相当于计算机。
然而,微控制器更小,更轻,更便宜。
同时为学习、应用和开发产品技术提供最合适的条件。
2.PIC单片机的优势PIC系列微控制器是美国微芯片首次推出的8位嵌入式微控制器,采用简化指令集计算机、哈佛双总线和两级指令管道结构。
它具有运行速度快、工作电压低(最小工作电压为3V)、功耗低、输入输出驱动能力强(可直接驱动LED)、体积小、价格低、易学、易用说明等优点。
此外,它还集成了一系列具有独特功能的特殊外设电路,如振荡器选择、可靠复位电路、监控定时器电路等。
一些PIC微控制器,如PIC16C72,也有8位A/D转换部件,可以通过减少外部元件来降低系统成本。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用一体化接收头的灵敏度比较高,体积相对比较小,内部集成了38k解调、低通滤波和其他一些抗干扰电路。这种接收头使用比较简单,不过据我使用过的情况来看,灵敏度越高抗干扰性能就越差,常常伴有脉冲干扰,用程序还是可以解决的。
如果你没做过红外遥控接受,建议你先用带中断的片子来搞,用57是有一定难度的
看了你写的红外线接收的程序,有点问题
你写的接收程序第二条就用goto转跳到rf1,而在rf1上用了retlw 0这个指令,但这个指令不是要使用call指令返回时才用的吗,如果goto指令用了retlw 0,那返回到哪里去,
你不用管他怎么调制的,你只需要用一个接收头就可以了,出来的就是方波,根据两个下降沿来判断信号就行了(空闲状态为高电平),我当初用示波器观察了一天才了解是怎么回事
那如果有人一直按着遥控器,单片机不是会当一个信号并记录下来,而且我用的是pic16c57的片子,没有中断的,两个下降沿的时常如何判断,而且如何确定一个信号已经结束了呢,
这个和遥控器使用的芯片有关,你可以了解一下有关这个遥控器按键的定义,也可用示波器观察。最好你先写一段程序来读码,观察一下按键定义和规律。
红外传输一般分为两种:
1。有载波:就是把基带信号(就是“0”,“1”)调制到38k的载波上去,由红外发光管发射(同发光二极头接收。
基带信号最好使用编码、调整占空比等以加强抗干扰性能。
2。直接用0,1信号发送:在距离比较近(cm级别),环境干扰比较小的情况下使用。
我的想法是直接将遥控器的信号经过两级放大,是三极管放大后输出,但我现在就是不知道,38khz的信号如何记入单片机,我想不用解码芯片
好呀,发射一个9013就够了,假如买不到距离不够而且买不到大功率发射管的话可以把两个发射管串联起来。
为什么要把38k信号输入单片机呢?你用红外光敏三极管接收?成本倒是低了好多。工艺要求就比较高了。
关于红外线接收的一点思路
我现在在做电视机红外线接受,发射器,看了一些书,书上说信号被调制在38khz的调制信号上,但我通过一颗红外接收管加两级放大后看红外线波形,示波器要打到10ms档上才能看到完整波形,照书上说的话应该打到50us档上就能看到波形了,而且这个波形像梯形波,请问这是怎么一回是,我用的红外线源就是长虹电视机的遥控器,这样的话我的接收程序怎么写呢?