标题: 关于学习型接收模块问题 [打印本页]

作者: as21cxz    时间: 2020-5-8 20:04
标题: 关于学习型接收模块问题
遥控器学习的时候只需要按任意一个按键就可以匹配其他4个按键的码,它这4个码之间难道有规律吗?

92001AD29CE7FF06F19A8F9B67EADF51.png (72.51 KB, 下载次数: 92)

92001AD29CE7FF06F19A8F9B67EADF51.png

作者: juncedz    时间: 2020-5-8 20:04
//+++++++++++++++++++++++++2262与1527数据分离处理++++++++++++++++++++++++++++++++++++++++            
                         if((da1527[0][0]==da1527[1][0]) && (da1527[0][1]==da1527[1][1]) && (da1527[0][2]==da1527[1][2]))        //两次接收到的数据相同
                      {         
                     uchar u,i,x;
                                         rf_ok=1;
                                         for(i=0;i<3;i++)  //判定2262与1527
                        {
                           for(u=0;u<4;u++) {if(((da1527[0][i]>>(u*2)) & 3)==2) {i=80;break;}}  //有10则为1527
                                                   if(i==80) break;
                        }
                     if(i==80)  //1527
                        {
                          key_d=da1527[1][2] & 0x0f;         //分出1527的按键值
                          da1527[0][2]=da1527[1][2]>>4; //分出1527的后4位地址
                                                  jmnx=1;         //为0是2262,1是1527
                        }
                       else      //2262
                         {
                          key_d=0;
                          for(i=0;i<4;i++){if(((da1527[0][2]>>(i*2))&3)==3) key_d|=1<<i;}   //计算出2262的按键数据                                 
                          da1527[0][2]=00; //2262无后4位地址,全为0
                                                  jmnx=0;         //为0是2262,1是1527
                         }
                                                  
                                          if (!study)                //非学习状态
                                                  {
                                                        rf_ok=0;
                                                        for(x=0;x<60;x++)
                                                                   {
                                                                        if((da1527[0][0]==key_number[x*3+1])&&(da1527[0][1]==key_number[x*3+2])
                                                                                                                                        &&(da1527[0][2]==key_number[x*3+3]))//判断是否已学习过的编码
                                                                                {
                                                        D0=key_d&0x08;                //取得按键码
                                                            D0=key_d&0x04;              //取得按键码
                                                                 D0=key_d&0x02;               //取得按键码   
                                                                           D0=key_d&0x01;     //取得按键码
作者: xqleft    时间: 2020-5-8 22:00
433模块?
作者: tjw8086    时间: 2020-5-9 00:31
各种遥控器有固定编码格式,学习一个按键就知道对应的编码格式,其它按键值都是固定的值。
作者: piliming    时间: 2020-5-9 15:46
学习本质就是学编码方式,例如2262,1527编码,再扣重点说就是存储发射器的地址码,具体的按键需要逐个具体学习




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1