stc12c4052 315M无线解码程序

发布者:huanguu最新更新时间:2018-02-01 来源: eefocus关键字:stc12c4052  315M  无线解码 手机看文章 扫描二维码
随时随地手机看文章

/*315M无线解码程序*/ 

/*无线码宽电平脉冲时间1.8ms,低电平脉冲时间600us,同步码低电平时间18.6ms 

用TIMER0和INT0配合实现脉宽测量,这种做法的好处是不用隔一段时间扫描I/O口,方便系统程序的整体设计 

硬件上要把无线信号反向后接到INT0脚,用脉宽测量反向后的高电平时间 

P1口接LED显示接收到的无线码的最后一字节数据*/ 


#include  

#define  uchar unsigned char 

#define  uint  unsigned int 

#define _rlcar_(RX) CY=RX&0x80         //编译后生成带进位左移指令 

uchar bdata wx_data0,wx_data1,wx_data2;  //存储24位无线数据 

uchar data wx_code0,wx_code1,wx_code2; 

uint data wx_count;   //低电平时间计数器 

uchar data wx_bit;       //无线码位数 

bit tb_flag;        //同步码接收成功标志 

bit wx_ok;         //无线码接收成功标志 

void mcu_initialize() { 

WDT_CONTR=0x00;       //关闭看门狗 

AUXR=0;         //定时器0和1设为传统8051速度,12分频 

P1M0=01M1=0x0;      //P1为准双向口 

P1=0; 



P3M0=0x043M1=0x00;     //P3.2设置成输入脚 



TR0=0; 

TH0=0x00;TL0=0x00;      //TH0,TL0请零  

TMOD|=0x09;        //设置T0为16位定时器,设为门控定时 

ET0=0;          //禁止T0中断 

IT0=1;         //从高变低跳变引起中断 

EX0=1;         //开外部中断0 

EA=1; 

TR0=1;         //启动T0 



void main() { 

mcu_initialize(); 

pca_initiate(); 

while(1); 



}  


void int0_isr() interrupt 0 using 1{ 

wx_count=TH0*256+TL0; 

TH0=0;TL0=0;               //清零T0定时器 

if(tb_flag) {                //同步码标志为1 

   if((0x0170
    CY=1; 

   } 

   else if((0x095c
    CY=0; 

   } 

   else{        //干扰码 

    loop2:wx_count=0; 

     wx_bit=0; 

     tb_flag=0; 

     return; 

   } 


   _rlcar_(wx_data0);      //移位寄存器,接收一位数据 

   wx_data0=ACC

   _rlcar_(wx_data1); 

   wx_data1=ACC; 

   _rlcar_(wx_data2); 

   wx_data2=ACC; 


   if(++wx_bit==24){      //接收完24位码,接收成功标志wx_ok置1 

    tb_flag=0; 

    wx_bit=0; 

    wx_ok=1; 

    wx_code0=wx_data0;wx_code1=wx_data1;wx_code2=wx_data2; 

      

    P1=wx_code0;      //p1口接LED显示数据 

   } 

}  

else { 

  if((0x6134
   tb_flag=1;        //高电平脉宽范围在13.5ms到20ms之间,把同步码标志置1 

  else 

   goto loop2; 




关键字:stc12c4052  315M  无线解码 引用地址:stc12c4052 315M无线解码程序

上一篇:STC89单片机看门狗的使用及应用程序
下一篇:STC12C5A60S2 AD转换示例程序

推荐阅读最新更新时间:2024-03-16 15:54

单片机PT2262/2272无线遥控解码器Proteus仿真程序315-433M
PT2262/2272无线遥控解码器仿真程序315-433M供大家学习之用!!! 仿真原理图如下 单片机源程序如下: //针对PT2272解码器的破解器程序,315M发射系统 #include reg51.h #define uint unsigned int sbit j=P1^3; //数码加1 sbit k=P1^5; //开启自动和关闭自动扫描 sbit l=P1^7; //数码减1 sbit yizuo=P1^0; //扫描一周对结束,灯点亮 bit biao=0; uint x=0,y; void delay(uint a) { for(;a 0;a--); } void k
[单片机]
单片机PT2262/2272<font color='red'>无线</font>遥控<font color='red'>解码</font>器Proteus仿真程序315-433M
315M和433M的无线遥控编解码波形图
在现在的无线遥控模块市场,有很多是用的315M和433M的模块作为编解码方案的。 原因一:价格低!五元左右一块,收发一对模块约十元(无PT2262/PT2272编解码芯片的), 带编解码芯片的约十五元一对! 原因二:电路简单,不需要专业人员调试! 原因三:购买方便,所有的电子城都有现成的卖! 但是随着单片机水平水平和价格不断降低,目前使用这种方案的安全性就越来越差,因为随便用一种单片机就能实现PT2272芯片的模拟解码,或者对 PT2262芯片发出的信号进行空中抓码,方法就是在单片机的外部中断引脚接到不带PT2272解码芯片的315M或433M模块信号输出脚,再用单片机的定时器进行配合,计算出数据波形,
[单片机]
<font color='red'>315M</font>和433M的<font color='red'>无线</font>遥控编<font color='red'>解码</font>波形图
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved