欢迎您访问科普小知识本站旨在为大家提供日常生活中常见的科普小知识,以及科普文章!
您现在的位置是:首页  > 科技知识

PT2262单片机解码思路和原理

科普小知识2022-01-22 23:20:38
...

PT2262/2272是*普城公司生产的一种CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。

编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。

当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100%的调幅。

单片机解码思路

红外线经一体化接收模块解码后送到单片机的外部中断0,单片机设置外部中断下降沿触发(即外部中断0为跳变沿触发方式,从高到低的负跳变触发进入中断处理函数进行解码操作);

首先我们把T0设置为16位定时器模式,工作在定时状态,初始化值为0,在晶振的工作频率为11.0592MHz时计满最大值计数值的时间为:71111us。由于同步码周期与地址数据周期都远小于定时器0的定时时间,所在定时器0正常工作时,是不会溢出的;

T1用作延时,设置其定时为1ms(本示例中没有用到T1功能);

在EX0=1(外部中断0启动)并且EA=1(使能所有中断)后,当下降沿到来时进入到中断处理函数,T0在TR0的控制下启动与停止计时;

当接收到下降沿后,先判断当前的电平状态,检测到是低电平时则把T0计时器归零开始计数低电平的时间宽度,电平状态发生变化时停止计数。取TH0和TL0之和即可根据该低电平的时间宽度值来识别是否为同步码。只有先识别出同步码,才开始接收后续脉冲数据进行24位解码操作。

PT2262单片机解码思路和原理

判断电平宽度,检测是否为同步码时,事实上超过10ms即有可能为同步码。初步找出同步码后,根据同步码低电平宽度取得宽脉冲低电平宽度值,根据同步码低电平宽度取得窄脉冲低电平宽度值,由上面的PT2262编码格式图可以看出,同步码低电平持续时间是宽脉冲低电平持续时间的32倍,是窄脉冲低电平持续时间的10(或11)倍,后续的24位数据的宽、窄脉冲低电平持续时间宽度进行比较,满足一定的范围时,即可解析出发射端送出的编码。那么实现PT2262解码原理是什么呢?一起来了解一下。

单片机实现PT2262解码原理

1、ASK调制:

“幅移键控”又称为“振幅键控”,也有称为“开关键控”(通断键控),所以又记作OOK信号。ASK是一种相对简单的调制方式。幅移键控(ASK)相当于模拟信号中的调幅,只不过与载频信号相乘的是二进制数码而已。幅移就是把频率、相位作为常量,而把振幅作为变量,信息比特是通过载波的幅度来传递的。二进制振幅键控(2ASK), 由于调制信号只有0或1两个电平,相乘的结果相当于将载频或者关断,或者接通,它的实际意义是当调制的数字信号为“1”时,传输载波;当调制的数字信号为“0”时,不传输载波。一般载波信号用余弦信号,而调制信号是把数字序列转换成单极性的基带矩形脉冲序列,而这个通断键控的作用就是把这个输出与载波相乘,就可以把频谱搬移到载波频率附近。

2、几个周期:

2.1、时钟周期:也称为振荡周期或晶振周期,定义为时钟频率的倒数,即晶振的振荡频率的倒数,计为:T(时)=1/f(osc)。时钟周期是计算机中最基本的、最小的时间单位。在一个时钟周期内,CPU仅完成一个最基本的动作。对于某种单片机,若采用了1MHZ的时钟频率,则时钟周期为1us。

2.2、状态周期:状态周期是振荡周期的二倍。振荡周期也称为晶振周期,振荡周期是单片机的基本时间单位。振荡脉冲经二分频成为时钟信号,时钟信号的周期称为状态周期。若时钟晶振的振荡频率为fosc,则时钟信号的状态周期Tosc=(1/fosc)*2。(即为振荡频率的倒数的2倍)。例如:晶振频率为12MHZ,则时钟周期Tosc=(1/12us)*2。

2.3、机器周期:单片机的基本操作周期。在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。一个操作周期内,单片机完成一项基本操作。

2.4、指令周期:执行一条指令所需要的时间,一般由若干个机器周期组成。指令不同,所需的机器周期数也不同。对于一些简单的的单字节指令,在取指令周期中,指令取出到指令寄存器后,立即译码执行,不再需要其它的机器周期。对于一些比较复杂的指令,例如转移指令、乘法指令,则需要两个或者两个以上的机器周期。

综上所述:一个机器周期 = 6个状态周期 = 12个时钟周期。

3、位码:

红外编码波形的基本单位,为分AD(地址码、数据码)位和SYNC(同步码)位,每“位”波形由两个脉冲周期构成,每个脉冲周期含有16个时钟周期。位码使用两个脉冲信号表示一个编码值,其中,两个连续窄脉冲表示编码值“0”;两个连续宽脉冲表示编码值“1”;一个窄脉冲和一个宽脉冲表示“F”,也就是地址码的“悬空”。即每个位码bit用2bit表示:00 或01或10表示0码;11表示1码。

如下图所示,编码芯片PT2262发出的编码信号经过整形电路之后得到的脉冲波形图。由:地址码、数据码、同步码组成。地址码和数据码都用宽度不同的脉冲来表示,两个窄脉冲表示“0”; 两个宽脉冲表示“1”; 一个窄脉冲和一个宽脉冲表示“F”,也就是地址码的“悬空”;同步码为时间较长的低电平间隔,下图为PT2262编码图:

PT2262单片机解码思路和原理

如上图,发射端每发送一次信号都会携带多组编码字码,每段编码字码值相同,二进制值为0B010101010101010100001100,对应的十六进制码值为:0x55550C。从图中可以看出,发送码的周期是相等的,只是脉冲宽度不同(宽脉冲与窄脉冲之比为3:1)。而同步码的低电平时间约为这个周期的8倍。

解码的关键是识别同步码,然后对后面的字码的脉冲宽度进行识别,就可以解出这个编码。PT2262每次发射时至少发射4组字码,每组字码由25个脉冲组成,前24个脉冲为地址和数据,最后一个脉冲和一低电平间隔组成同步码。