51单片机无线遥控应用教程
51单片机编码控制315无线模块传送指令

无线电编码程序设计思想该项目利用单通道无线电实现了多路遥控功能。
遥控距离100m左右。
单通道无线电路若想实现多路遥控,必须对无线电进行编码,该项目利用单片机进行编解码,实现了16路无线电控制。
在进行无线电编码前必须先定义一个协议规则。
现定义如下:下降沿:1ms的高电平,随后500us的低电平。
v0起始位:4ms的高电平,随后4ms的低电平。
v2数据1:2ms的高电平,随后500us的低电平。
v1数据0:1ms的高电平,随后500us的低电平。
v3结束位:4ms的低电平。
以上就是通信协议规则,只要无线电收发双方都遵循该协议规则,则实现对小车的多路控制将非常容易。
//发射模块c程序#include<reg52.h>#define uchar unsigned charsbit key0=P3^4;sbit key1=P3^5;sbit key2=P3^6;sbit key3=P3^7;sbit TX=P2^0;uchar m;void v0();void v1();void v2();void v3();void delay_315();void main(){uchar i;bit dong=0; //开定时器0中断TMOD=0X01;TH0=(65536-100)/256;TL0=(65536-100)%256;EA=1;ET0=1;TR0=1;TX=0;while(1) //发送指令0{if(key0==0){delay_315();while(key0==0){v3();v2();v0();v0();v0();m=0;while(m<40);}dong=1;}if(key1==0) //发送指令1{delay_315();while(key1==0){v3();v2();v0();v0();v1();m=0;while(m<40);}dong=1;}if(key2==0){delay_315();while(key2==0){v3();v2();v0();v1();v0();m=0;while(m<40);}dong=1;}if(key3==0){delay_315();while(key3==0){v3();v2();v0();v1();v1();m=0;while(m<40);}dong=1;}if(dong==1){dong=0;for(i=0;i<5;i++){v3();v2();v1();v0();v0();m=0;while(m<40);} }}}void timer0() interrupt 1{TH0=(65536-100)/256;TL0=(65536-100)%256;m++;TF0=0;}void v0() // 1MS高电平500us低电平{m=0;while(m<10)TX=1;m=0;while(m<5)TX=0;}void v1() // 2MS高电平500us低电平{m=0;while(m<20)TX=1;m=0;while(m<5)TX=0;}void v2() // 4MS高电平4ms低电平{m=0;while(m<40)TX=1;m=0;while(m<40)TX=0;}void v3() // 1MS高电平500us低电平{m=0;while(m<10)TX=1;m=0;while(m<5)TX=0;}void delay_315(){uchar i,j;for(i=0;i<10;i++)for(j=0;j<110;j++);}//接收程序#include"reg52.h"#define uchar unsigned charsbit RX=P3^3;sbit red0=P0^0;sbit red1=P0^1;sbit red2=P0^2;sbit red3=P0^3;sbit red4=P0^4;uchar m;bit n;void main(){uchar a,b,c,p,x,y; //定义存取的数据TMOD=0X01;TH0=(65536-100)/256; //开定时器0TL0=(65536-100)%256;EA=1;ET0=1;TR0=1;EX1=1;IT1=1;P0=0XFF;p=5;x=0;while(1){if(n==1){while(RX==0); //读取协议下降沿m=0;EX1=0;while(RX==1);if(m>35&&m<45) //读取协议起始位高电平{m=0;while(RX==0);if(m>35&&m<45) //读取协议起始位低电平{m=0;while(RX==1); //读取数据1if(m>5&&m<15)a=0;if(m>15&&m<25)a=4;while(RX==0);m=0;while(RX==1); //读取数据2if(m>5&&m<15)b=0;if(m>15&&m<25)b=2;while(RX==0);m=0;while(RX==1); //读取数据3if(m>5&&m<15)c=0;if(m>15&&m<25)c=1;while(RX==0);m=0;p=a+b+c;x++;if(x==1)y=p;if(x==2) //连续收到两次数据才进入匹配{x=0;if(y==p){switch(p){case 0:red0=0;red1=1;red2=1;red3=1;red4=1;break;case 1:red0=1;red1=0;red2=1;red3=1;red4=1;break;case 2:red0=1;red1=1;red2=0;red3=1;red4=1;break;case 3:red0=1;red1=1;red2=1;red3=0;red4=1;break;case 4:red0=1;red1=1;red2=1;red3=1;red4=0;break;}}}}}}}}void INT_1() interrupt 2{n=1;}void timer0() interrupt 1{TH0=(65536-100)/256;TL0=(65536-100)%256;m++;TF0=0;}。
无线wifi模块-51单片机-C语言程序

}
void us_delay(uchar t)
{
while(t--);
}
/********************************************************************
名称:波特率发生器函数
作用:波特率发生器可以是T1定时器实现,也可以是MCU内部独立的波特率发生器,
TL1=TH1;
EA=1;//总中断打开
ES=0;//关闭串口中断
TR1=1;//启动定时器1
}
/*
void Uart_Init()//使用独立的波特率发生器(STC12C560S2或带有独立波特率发生器//、//的单片机均可)
{
SCON=0x50;//设置为串行口以方式1工作,8位异步通讯,允许接收中断。
AUXR1=0x80;//切换到P1口
ES=1;//开启串口中断
EA=1;//开启总中断
}
*/
/********************************************************************
名称:串口发送函数
功能:MCU向其他与其连接的设备发送数据(此处是无线WIFI模块ESP8266)
//define RELOAD_COUNT (256-(((11520000/16)/12)/9600))也可以或波特率9600 //256-晶振频率/波特率x16=BRT
/*****************LED灯对应P0口的1个端口*************/
sbit LED0=P3^2;
/************波特率发生器相关功能寄存器的定义****************/
基于51单片机红外遥控电机课程设计说明书

课程实训报告课程名称:单片机与接口技术实训题目:红外控制直流电机正反转任务书一、实训任务设计一款基于AT89C51单片机用红外遥控控制电机的正反转加减速。
二、设计要求1. 基本要求1).用无线模块控制电机的正反转加减速,实现自动化控制。
2).通过对AT89C51单片机的编程,实现直流电机的正反转,加减速。
3).写出详细的设计报告。
4).给出全部电路和源程序。
2. 发挥部分1).可通过PC机,对系统编程,实现直流电机转速的快慢。
摘要随着科技的不断进步,人们进入了无线电时代,它为我们的生活带来了极大的方便。
像现在的移动电话,无线网络,无线鼠标,无线键盘等都已经融入了我们的生活当中。
从我们身边的电子产品就可以看出我们已经进入了无线电时代。
本设计就是一款基于AT89C51的用无线模块控制的电机的正反转以及它的加减速。
这非常适应于在工厂使用,特别是在工业控制中。
可以想象,机器在工厂运转时,我们只需要用无线遥控来控制电机的转速以及它的转向,这样我们就可以在远处来控制了,用不着再跑到电机的旁边来控制开关,为工厂生产带来了极大的方便。
软件上采用C51编程,主要编写了主程序,直流电机驱动程序,中断程序延时程序等。
经过调试,实现了对电机的控制。
关键词:AT89C51 L298 PWM 直流电机无线模块目录第一章绪论 (5)1.1 概述 (5)1.2 设计目的 (5)1.3 设计任务和内容 (5)第二章总体设计及核心器件简介 (7)2.1总体设计 (7)2.2 AT89C51 (7)2.3 L298 (9)引脚介绍: (10)2.4 伺服电机介绍 (11)2.5 PT2262/PT2272 (12)第三章单元电路模块设计 (17)3.1 复位电路 (17)3.2时钟电路 (18)3.3电机驱动电路图 (18)3.4PWM调速系统设计 (19)第四章软件编程设计 (21)4.1 设计思想 (21)4.2 流程图 (21)4.3源程序 (22)第五章设计心得和存在问题 (26)第一章绪论1.1 概述近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。
基于51单片机的四驱无线遥控小车(附电路图,源代码)

基于51单片机的四驱无线遥控小车(附电路图,源代码)遥控小车大家都玩过,网上也有各种DIY小车的制作详解,本文介绍的这个遥控小车和其他的作品大同小异,但作为单片机设计,这次设计主要强调单片机控制,就是说,这个小车是由单片机控制的,把单片机按键发送程序、无线模块使用、电机驱动是本教程的核心内容。
一硬件组装1 小车运动部分所需工件:直流电机4个,L293D电机驱动模块,蓄电池一块,车身底盘说明:车身底盘大家根据自己的购买力自行购买,蓄电池也是,至于L293D模块,淘宝上卖的比较贵,不过我用的就是成品模块,效果非常好,钱不多的同学可以自己买芯片,自制模块,原理很简单,官方资料是很详细的;或者改为继电器控制都可以,具体看自己的实际购买力。
用模块的好处是,模块可以输出5V 电源给系统供电,详细请参考淘宝网。
如果你买的是现成的底盘,那就和我的一样了,组装实在是没啥可说的,把电机固定上去就是,不行?别开玩笑了,小学生都会的!至于想自己做底盘的,我想说,要搞结实点,咱这次的小车马力是很足的,因为有电机驱动,速度比较快(不带减速齿轮的底盘一定要小心,速度非常的快),后劲也足,不小心撞墙很正常,所以不好的底盘就得小心了!组装好后,就是电机和驱动模块的接线了,下面我就详细的说一下L293D模块的使用:L293D是专门的电机驱动芯片,工作电压5V,驱动电压输入可达36V,输出电流正负600ma,4个控制端,4个输出端,原理如图:其中A为输出控制端,Y为输出控制端,1A即控制1Y,以此类推。
1,2EN 3,4EN需要短接,芯片最大工作电压不得超过7V。
封装图:Vcc1接工作电压,5V,Vcc2接电机的驱动电源,一般来说,这个电压要比5V 高,我用的是12V蓄电池,就把12v的正极接到VCC2,要记住的是,芯片、单片机、蓄电池电源是需要共地的,不要觉得你电机是12V,单片机控制部分是5V就把电源完全独立开来,正极是完全独立的没错,但是GND(负极)都必须是接在一起的。
PT2262_PT2272讲解

51单片机综合学习系统之无线遥控模块应用篇《电子制作》2008年6月站长原创,如需引用请注明出处大家好,通过以前的学习,我们已经对51单片机综合学习系统的使用方法及学习方式有所了解与熟悉,学会了数字温度传感器DS18B20的基本知识,体会到了综合学习系统的易用性与易学性,这一期我们将一起学习无线电遥控的基本原理与应用实例。
先看一下我们将要使用的51单片机综合学习系统能完成哪些实验与产品开发工作:分别有流水灯,数码管显示,液晶显示,按键开关,蜂鸣器奏乐,继电器控制,IIC总线,SPI总线,PS/2实验,AD模数转换,光耦实验,串口通信,红外线遥控,无线遥控,温度传感,步进电机控制等等。
图1 51单片机综合学习系统上图是我们将要使用的51单片机综合学习系统硬件平台,如图1所示,本期实验我们用到了综合系统主机、200米无线遥控器,无线接收板,综合系统其它功能模块原理与使用详见前几期《电子制作》杂志及后期连载教程介绍。
PT2262/PT2272无线模块工作原理PT2262/2272是台湾普城公司生产的一种CMOS工艺制造的低功耗低价位通用编/解码电路,是目前在无线通讯电路中作地址编码识别最常用的芯片之一。
PT2262/2272最多可有12位(A0-A11)三态(悬空,接高电平,接低电平)地址设定管脚,任意组合可提供531441个地址码。
PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚(Dout)串行输出,可用于无线遥控发射电路。
PT2262和PT2272的引脚排列见图2。
对于编码器PT2262,A0~A5共6根线为地址线,而A6~A11共6根线可以作为地址线,也可以作为数据线,这要取决于所配合使用的解码器。
若解码器没有数据线,则A6~A11作为地址线使用,这种情况下,A0~A11共12根地址线,每线都可以设置成“1”、“O”、“开路”三种状态之一,因此共有编码数312=531441种;但若配对使用的解码器的A6~A11是数据线,例如PT2272,那么这时PT2262的A6~A11也作为数据线用,并只可设置为“1”和“0”两种状态之一,而地址线只剩下A0~A5共6根,编码数降为36=729种。
51单片机无线遥控小车设计

51单片机无线遥控小车设计一、引言无线遥控小车是一种基于51单片机的智能小车系统,它利用无线通信技术实现了对小车的遥控。
通过无线遥控,我们可以随时控制小车的方向,实现室内或者室外的移动。
本设计将详细介绍51单片机无线遥控小车的整体设计框架、电路连接和关键模块设计。
二、整体设计框架整个系统分为遥控器端和小车端两个部分。
遥控器端通过按键或者摇杆输入控制指令,经过编码和解码处理后,通过无线传输模块将指令发送给小车端。
小车端接收到指令后,通过解码和控制模块来控制小车的运动。
三、电路连接遥控器端由单片机、按键(或者摇杆)、编码芯片和无线传输模块组成。
按键用于输入控制指令,编码芯片用于将按键输入的模拟信号转换为数字信号,单片机将数字信号进行编码后发送给无线传输模块,最终通过无线通信将指令传输给小车端。
小车端由单片机、解码芯片、电机驱动、电机和无线接收模块组成。
无线接收模块用于接收遥控器端发送过来的指令,解码芯片将数字信号转换为控制信号,单片机根据控制信号来控制电机驱动,从而实现小车的运动。
四、关键模块设计1.编码和解码模块设计编码和解码模块是整个系统中的关键部分,它负责将模拟信号转换为数字信号,并将数字信号转换为控制信号。
2.无线传输模块选择无线传输模块是实现遥控通信的关键组件,我们可以选择使用蓝牙模块、无线射频模块等。
选择合适的无线传输模块需要考虑通信距离、通信速率、功耗等因素。
3.电机驱动模块设计电机驱动模块负责将控制信号转换为电机运动控制信号,驱动电机完成小车的移动。
在设计电机驱动模块时,需要考虑电机的类型和电机驱动电路的选型。
五、总结本设计详细介绍了51单片机无线遥控小车的整体设计框架,电路连接和关键模块设计。
通过对整个设计的理解和实现,我们可以实现对小车的远程遥控,从而实现室内或者室外的自动移动。
这种无线遥控小车系统在娱乐、智能家居、无人巡检等领域都有广泛的应用前景。
自己写的51单片机的红外线遥控接收程序(C语言)

//51单片机做的红外遥控实验(C语言)#include<reg51.h>#define u8 unsigned char#define u16 unsigned int#define ID 0x00 //本遥控器的ID号sbit ir=P3^3;code u8 seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //0-9的段码code u8 s[]={1,0x40,0x48,0x04,0x02,0x05,0x54,0x0A,0x1E,0x0E}; u8 buf[4];bit ir_f=0;u8 nu;void delay(u16 x){while(x--);}void show(u16 x){u8 i=0,k=0;u8 s[4];kk:s[i]=x%10;if((x/10)>=1){x=x/10;i++;goto kk;}k=i+1;for(i=0;i<k;i++){P0=seg[s[i]];P2=~(8>>i);delay(300);P0=0XFF;P2=0XFF;}}void timer0_init(){TH0=0;TL0=0;TMOD|=0x01;TR0=0;}u16 low_test(){u16 t;TR0=1;while((ir==0)&&((TH0&0X80)!=0X80));TR0=0;t=TH0;t<<=8;t|=TL0;TH0=0;TL0=0; //t=(TH*256+TL0);//机器周期数return t;}u16 high_test(){u16 t;TR0=1;while((ir==1)&&((TH0&0X80)!=0X80));TR0=0;t=TH0;t<<=8;t|=TL0;TH0=0;TL0=0;return t;}/*u16 time_test(bit x){}*/u8 receive_8bit(){u8 d,i;u16 t;for(i=0;i<8;i++){t=low_test();t=high_test();d>>=1;if((t>=2750)&&(t<=3100)){d|=0x80;}}return d;}void ir_decode(){u16 t;u8 i;if(ir==0)//有遥控信号{t=low_test();//8295-9000us,倍频的是16590-18000if((t>=14500)&&(t<=18000))//检查引导码低电平时间{t=high_test();if((t>=8000)&&(t<=9000))//检查高电平{for(i=0;i<4;i++){buf[i]=receive_8bit();}if(buf[0]==(~buf[1]))//检查系统码是否正确{if(buf[0]==ID){if(buf[2]==(~buf[3])){//具体按键处理ir_f=1; //遥控有效}}}}}}}/*void key(){if(buf[2]==0x40){P1^=(1<<0);}if(buf[2]==0x48){P1^=(1<<1);}}*/void ir_execuse(){if(ir_f==1){switch(buf[2]){case 0x40:P1^=(1<<0);break;case 0x48:P1^=(1<<1);break;case 0x04:P1^=(1<<2);break;case 0x02:P1^=(1<<3);break;case 0x05:P1^=(1<<4);break;case 0x54:P1^=(1<<5);break;case 0x0A:P1^=(1<<6);break;case 0x1E:P1^=(1<<7);break;}ir_f=0;}}void show_d(){u8 j;for(j=0;j<10;j++){if(s[j]==buf[2]){nu=j;break;}}show(nu);}void isr_init(){EA=1;EX1=1;//外部中断,一直看3.3有没有下降沿。
基于51单片机的红外遥控课程设计

目录第一章设计简介 (2)第二章系统方案 (2)一、设计方案对比 (2)二、方案设计 (4)第三章硬件设计 (4)一、红外遥控器 (4)二、红外接收模块部分 (6)第四章软件设计 (7)一、红外遥控器软件设计 (7)二、红外接收模块软件设计 (10)三、程序代码 (10)第五章测试及分析 (10)第六章结论 (10)第七章参考文献 (11)附录一(程序代码): (12)第一章设计简介本设计分为红外遥控器与红外接收模块两部分。
红外遥控器包括矩阵键盘、增强型51单片机(STC11L04E)、红外发射电路组成。
单片机扫描矩阵键盘后,将按键状态进行信源编码与信道编码,载波(38k脉冲)后由红外发射器发射。
红外接收模块部分由传统51单片机、数码管、一体化红外接收头组成。
一体化红外接收头将信号进行限幅放大、带通滤波、解调、积分、整形后输出解调信号至单片机,并由单片机输出解调信号。
第二章系统方案一、设计方案对比红外遥控器部分2.1.1 主控芯片方案一:HT6222方案二:STC11L04E分析:传统红外遥控器芯片HT6222具有性价比高、功能强大、稳定可靠、使用简单等特点,但该芯片难以零购。
STC11L04E为增强型51单片机,控制灵活(载波频率可调、通信协议可变更、用户码可变换)、价格较HT6222稍贵。
STC11L04E最大的特别是低功耗,功作电压低3.3V,易于应用于移动设备。
结论:由于STC11L04E单片机的灵活性以及学习性(可增强我们对一个完整通信系统的理解)。
因此我们采用方案二。
2.1.2 矩阵键盘方案一:3*6*2.5 贴片轻触开关方案二:6*6*6 直插轻触开关分析:3*6*2.5贴片轻触开关虽然体积小巧、美观,但与6*6*6直插轻触开关对比,在制板布线上较繁锁。
结论:综上,我们采用6*6*6直插轻触开关,使得整体布线简单,可布单面版,简化制板流程。
2.1.3电源模块方案一:钮扣电池CR2032方案二:可充电锂电池18650分析:可充电锂电池18650容量大,节能环保(可多次利用),但体积大。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
硬件原理图
图 8 无线遥控实验演示图
程序流程图
图 9 硬件原理图
图 10 软件流程图
软件代码
/******************************************************************** *******/
/*杭州晶控电子有限公司 */
/*
接收板工作电压为 DC 5V,接收灵敏度: -103dBm ,尺寸(mm): 49*20*7 , 工作频率:315MHz,工作电流:5mA ,编码类型:固定码(板上焊盘跳接设置) 应 用说明:与各类型遥控器配合使用,解码输出后进行相应控制,如采用单片机进 行读取接收并解码数据然后控制相应的灯或电源开关。
PT2262 和 PT2272 的引脚排列见图 2。对于编码器 PT2262,A0~A5 共 6 根线 为地址线,而 A6~A11 共 6 根线可以作为地址线,也可以作为数据线,这要取决 于所配合使用的解码器。若解码器没有数据线,则 A6~A11 作为地址线使用,这
种情况下,A0~A11 共 12 根地址线,每线都可以设置成“1”、“O”、“开路” 三种状态之一,因此共有编码数 312=531441 种;但若配对使用的解码器的 A6~ A11 是数据线,例如 PT2272,那么这时 PT2262 的 A6~A11 也作为数据线用,并 只可设置为“1”和“0”两种状态之一,而地址线只剩下 A0~A5 共 6 根,编码 数降为 36=729 种。
PT2262 编码电路与 PT2272 解码电路一般配对使用,PT2262 的特点是在其内 部已经把编码信号调制在了一个较高的载频上。要把遥控编码信息用无线方式 (红外线或无线电等)传送出去,必须有载体(载波),把编码信息“装载”在载体 上(调制在载波上)才能传送出去,因此需要一个振荡电路和一个调制电路。 PT2262 编码器内部,已包含了这些电路,从 DOUT 端送出的是调制好了的约 38kHz 的高频已调波,因此使用起来非常方便,适用于红外线和超声波遥控电路。
置要完全一样。当两者地址编码完全一致时,接收机对应的 D1~D4 端输出约 4V
互锁高电平控制信号,同时 VT 端也输出解码有效高电平信号。
OOOOOOOO
L
--------
11111111
H
图 7 地址设置跳线图
无线模块的软硬件设计应用
在功能稍复杂的系统中仅靠一对无线收发模块往往达不到要求,很多情况下 都要借助于单片机扩展出更多的功能。本例通过一个简单的例子,实现单片机与 无线接收模块的组合应用。
编码芯片 PT2262 发出的编码信号由地址码、数据码、同步码组成一个完整 的码字。解码芯片 PT2272 接收到信号后,其地址码经过两次比较核对后,VT 脚 才输出高电平,与此同时相应的数据脚也输出高电平。PT2262 每次发射时至少 发射 4 组字码,因为无线发射的特点,第一组字码非常容易受零电平干扰,往往 会产生误码,所以 2272 只有在连续两次检测到相同的地址码加数据码才会把数 据码中的“1”驱动相应的数据输出端为高电平和驱动 VT 端同步为高电平。当发 射机没有按键按下时,PT2262 不接通电源,其 17 脚为低电平,所以 315MHz 的 高频发射电路不工作,当有按键按下时,PT2262 得电工作,其第 17 脚输出经调 制的串行数据信号,当 17 脚为高电平期间 315MHz 的高频发射电路起振并发射等 幅高频信号,当 17 脚为低平期间 315MHz 的高频发射电路停止振荡,所以高频发 射电路完全收控于 PT2262 的 17 脚输出的数字信号,从而对高频电路完成幅度键 控(ASK 调制)相当于调制度为 100%的调幅。
PT2272 解码芯片有不同的后缀,表示不同的功能,有 L4/M4/L6/M6 之分, 其中 L 表示锁存输出,数据只要成功接收就能一直保持对应的电平状态,直到下 次遥控数据发生变化时改变。M 表示非锁存输出,数据脚输出的电平是瞬时的而 且和发射端是否发射相对应,可以用于类似点动的控制。后缀的 6 和 4 表示有几 路并行的控制通道,当采用 4 路并行数据时(PT2272-M4),对应的地址编码应 该是 8 位,如果采用 6 路的并行数据时(PT2272-M6),对应的地址编码应该是 6 位。
unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
/*******************************定义全局变量 ********************************/
/*********************************端口定义 **********************************/
遥控发射器工作电压为 DC 12V(电池供电) ,尺寸(mm): 58*39*14 ,工作频率:315MHz , 工作电流(mA):13 编码类型: 固定码(板上焊盘跳接设置) 应用说明:与各类型带解码功能的 接收模块联合使用,解码输出后进行相应控制,如采用单片机进行读取接收并解码数据然后控制 相应的灯或电源开关。
*/
/*无线收发模块演示程序 */
/*目标器件:AT89S51 */
/*晶振:11.0592MHZ
*/
/*编译环境:Keil 7.50A */
/******************************************************************** *******/
据才能转换
Vcc
18
电源正端(+)
Vss
9
电源负端(-)
DIN
14
数据信号输入端,来自接收模块输出端
OSC1 16
振荡电阻输入端,与 OSC2 所接电阻决定振荡频率
OSC2 15
振荡电阻振荡器输出端
VT
17
解码有效确认输出端(常低)解码有效变成高电平(瞬 态)
表 2:解码电路 PT2272 脚管功能表
图 2 PT2262、PT2272 引脚排列图
该编解码器的编码信号格式是:用 2 个周期的占空比为 1:3(即高电平宽度 为 1,低电平宽度为 2,周期为 3)的波形来表示 1 个“0”,用 2 个周期的占空 比为 2:3(即高电平宽度为 2,低电平宽度为 1,周期为 3)的波形来表示 1 个“1”, 用 1 个周期的占空比为 1:3 的波形紧跟着 1 个周期的占空比为 2:3 的波形来表示 “开路”。地址码和数据码都用宽度不同的脉冲来表示,两个窄脉冲表示“0”; 两个宽脉冲表示“1”;一个窄脉冲和一个宽脉冲表示“F”也就是地址码的“悬 空”。
/*********************************包含头文件 ********************************/
#include <reg51.h>
/*******************************共阳 LED 段码表 *******************************/
图 5 解码接收模块和电路原理图
图 6 无线遥控接收板
无线收发模块的地址码设定
在通常使用中,我们一般采用 8 位地址码和 4 位数据码,这时编码芯片
PT2262 和解码芯片 PT2272 的第 1~8 脚为地址设定脚,有三种状态可供选择:
悬空、接正电源、接地三种状态,地址编码不重复度为 38=6561 组,只有发射端
无线遥控模块 先看一下我们将要使用的 51 单片机综合学习系统能完成哪些实验与产品开 发工作:分别有流水灯,数码管显示,液晶显示,按键开关,蜂鸣器奏乐,继电 器控制,IIC 总线,SPI 总线,PS/2 实验,AD 模数转换,光耦实验,串口通信, 红外线遥控,无线遥控,温度传感,步进电机控制等等。
图 1 51 单片机综合学习系统 上图是我们将要使用的 51 单片机综合学习系统硬件平台,如图 1 所示,本
图 3 编码发射模块实物图与原理框图 其中编码部分电路由 PT2262 编码 IC 来组成,具体电路见图 4 所示。
图 4 编码电路原理图
基于 PT2272 的无线解码模块
解码接收模块包括接收头和解码芯片 PT2272 两部分组成。接收头将收到的 信号输入 PT2272 的 14 脚(DIN),PT2272 再将收到的信号解码。解码接收模块 和电路原理图如图 5,接收板实物如图 6 所示。
名称 管脚
说明
D0-D5 7-8、10-13 数据输入端,有一个为“1”即有编码端(+)
Vss
9
电源负端(-)
TE
14
编码启动端,用于多数据的编码发射,低电平有效
OSC1 16
振荡电阻输入端,与 OSC2 所接电阻决定振荡频率
OSC2 15
振荡电阻振荡器输出端
Dout 17
期实验我们用到了综合系统主机、200 米无线遥控器,无线接收板,综合系统其 它功能模块原理与使用详见前几期《电子制作》杂志及后期连载教程介绍。
PT2262/PT2272 无线模块工作原理
PT2262/2272 是台湾普城公司生产的一种 CMOS 工艺制造的低功耗低价位通 用编/解码电路,是目前在无线通讯电路中作地址编码识别最常用的芯片之一。 PT2262/2272 最多可有 12 位(A0-A11)三态(悬空,接高电平,接低电平)地址设定 管脚,任意组合可提供 531441 个地址码。PT2262 最多可有 6 位(D0-D5)数据端管 脚,设定的地址码和数据码从 17 脚(Dout)串行输出,可用于无线遥控发射电路。
PT2262 和接收端 PT2272 的地址编码完全相同,才能配对使用,遥控模块的生产
厂家为了便于生产管理,出厂时遥控模块的 PT2262 和 PT2272 的八位地址编码端
全部悬空,这样用户可以很方便选择各种编码状态,用户如果想改变地址编码,