久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 30路紅外遙控開關(guān) [打印本頁]

作者: ll13536121668    時間: 2018-6-26 15:50
標(biāo)題: 30路紅外遙控開關(guān)
本帖最后由 ll13536121668 于 2018-6-27 09:49 編輯

30路紅外遙控開關(guān)因使用不方便,
想用一只管腳復(fù)用到每路輸出增加30只手動開關(guān)可以嗎
程序什樣修改才能增加30只手動開關(guān),
勞煩各位師傅研究一下什樣修改
//12M晶振
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int

sbit P3_2=P3^2;
sbit LED=P3^3;
sbit A0=P0^0  ;
sbit A1=P0^1  ;
sbit A2=P0^2  ;
sbit A3=P0^3  ;
sbit A4=P0^4  ;
sbit A5=P0^5  ;
sbit A6=P0^6  ;
sbit A7=P0^7  ;

sbit B0=P2^0  ;
sbit B1=P2^1  ;
sbit B2=P2^2  ;
sbit B3=P2^3  ;
sbit B4=P2^4  ;
sbit B5=P2^5  ;
sbit B6=P2^6  ;
sbit B7=P2^7  ;

sbit C0=P1^0  ;
sbit C1=P1^1  ;
sbit C2=P1^2  ;
sbit C3=P1^3  ;
sbit C4=P1^4  ;
sbit C5=P1^5  ;
sbit C6=P1^6  ;
sbit C7=P1^7  ;

sbit D0=P3^0  ;
sbit D1=P3^1  ;
//sbit D3=P3^3  ;
sbit D4=P3^4  ;
sbit D5=P3^5  ;
sbit D6=P3^6  ;
sbit D7=P3^7  ;

unsigned char data IRCode[4],IRCON,IRCON2;
unsigned int k,s=1;
unsigned char i,m,count;
//uchar code dis_7[]={0x18,0xDB,0x31,0x91,0xD2,0x94,0x14,0xD9,0x10,0x90,0xFF,0x3C,0xf7};
//uchar code scan_con[]={0x7F,0xBF,0xDF,0xEF};//段碼表 從右至左掃描
//uchar data dis[]={0x00,0x00};

uchar data  keyvol,disout,n;
//void scan();
//void delay1ms( uchar t);
/***************延時函數(shù)*******************/
  void delay1ms( uint t)
{
  uint k,n;
  for (k=0;k<t;k++)
    {
           for (n=0;n<121;n++);
         }
}
/***************延時函數(shù)*******************/
void delay850us( void)
{      uint j;
           for (j=0;j<105;j++);//24M晶振時j=200,12M晶振時,j=105;
}
/***************延時函數(shù)*******************/
void delay1200us( void)
{      uint j;
           for (j=0;j<150;j++);//24M晶振時j=400,12M晶振時,j=150;
}
/**********************************/
void main()
{
   EA = 1; //允許CPU中斷
   EX0 = 1; //開INT0中斷;   
   while (1)
     {
       if (LED==0)   
              {
             delay1ms( 500);
                         LED=1;
                  }
     }  
}
/**********************************/
//INT0中斷
void INT0Fun(void) interrupt 0 //using 2
{
  EA = 0; //外部中斷0關(guān)閉  
  for (i=0;i<12;i++)
    {
       delay850us();
           if (P3_2==0)  count++;
            else  break ;           
        }
  if (count==12)
    {  count=0;           
       while (P3_2==0);
           delay850us(); //跳過564us的高電平。
                    
       for (IRCON=0;IRCON<4;IRCON++)
         {
           for (IRCON2=0;IRCON2<8;IRCON2++) //每中斷一次讀一次遙控接收頭的狀態(tài),每二次為遙控編碼中的一個位
             {
                           IRCode[IRCON]=IRCode[IRCON]>>1; //每讀一次放入變量中的二進(jìn)制的一個位,每次左移一位
                           while (P3_2==0);
               delay850us();                             
               if (P3_2)  
                               {
                                       IRCode[IRCON]=IRCode[IRCON] | 0x80; //每八次填滿一個字節(jié),一個字節(jié)存放遙控編碼4個位
                       delay1200us();
                                   }
                     }
         }  

       if ((IRCode[0]==0x00) && (IRCode[1]==0xFF))
           {
              if (IRCode[2]==~IRCode[3])
                 {
                                   keyvol=IRCode[2];
                                   n=keyvol;
                                   LED=0;
                                   switch  (keyvol)
                     {
                         case  1:  { A0= ~ A0 ; break;}
                         case  2:  { A1= ~ A1 ; break;}
                         case  3:  { A2= ~ A2 ; break;}
                         case  4:  { A3= ~ A3 ; break;}
                         case  5:  { A4= ~ A4 ; break;}
                         case  6:  { A5= ~ A5 ; break;}
                         case  7:  { A6= ~ A6 ; break;}
                         case  8:  { A7= ~ A7 ; break;}

                         case  9:   { B0= ~ B0 ; break;}
                         case  10:  { B1= ~ B1 ;break; }
                         case  11:  { B2= ~ B2 ;break; }
                         case  12:  { B3= ~ B3 ;break; }
                         case  13:  { B4= ~ B4 ;break; }
                         case  14:  { B5= ~ B5 ; break;}
                         case  15:  { B6= ~ B6 ;break; }
                         case  16:  { B7= ~ B7 ;break; }

                         case  17:  { C0= ~ C0 ; break;}
                         case  18:  { C1= ~ C1 ; break;}
                         case  19:  { C2= ~ C2 ;break; }
                         case  20:  { C3= ~ C3 ;break; }
                         case  21:  { C4= ~ C4 ;break; }
                         case  22:  { C5= ~ C5 ;break; }                                                
                         case  23:  { C6= ~ C6 ;break; }
                         case  24:  { C7= ~ C7 ;break; }

                                                 case  25:  { D0= ~ D0 ;break; }
                                                 case  26:  { D1= ~ D1 ;break; }
                                                 case  27:  { D4= ~ D4 ;break; }
                                                 case  28:  { D5= ~ D5 ;break; }
                         case  29:  { D6= ~ D6 ;break; }
                                                 case  30:  { D7= ~ D7 ;break; }
                         case  31:  { P0=0XFF; P1=0XFF; P2=0XFF; P0=0XFF; P3=( P3&0X0C )|0XF3; break; }
                         case  32:  { P0=0X00; P1=0X00; P2=0X00; P0=0X00; P3= P3&0X0C ;        break; }
                                                  default : break;
                      }                                                                           
                 }
           }
    }      
        count=0;        
        for (IRCON=0; IRCON<3; IRCON++)
            IRCode[IRCON] = 0;
       EA = 1;
}
/*****************************************/

2.jpg (15.63 KB, 下載次數(shù): 33)

2.jpg

30路紅外接收器.rar

1.55 KB, 下載次數(shù): 18


作者: ahshmj    時間: 2018-6-26 19:38
文字?jǐn)⑹龅碾y理解。
作者: lstabc    時間: 2018-6-26 19:45
完全沒有看懂樓主要表達(dá)什么
作者: zsyzdx    時間: 2018-6-27 08:38
串口轉(zhuǎn)換嗎還是什么?
作者: ll13536121668    時間: 2018-6-27 09:51
zsyzdx 發(fā)表于 2018-6-27 08:38
串口轉(zhuǎn)換嗎還是什么?

上傳圖片看看

用一只管腳復(fù)用到每路輸出增加30只手動開關(guān)可以嗎




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美专区日韩专区 | 成人超碰 | 日韩精品一区二 | 日日夜夜精品视频 | 国产99久久久国产精品 | 亚洲成人毛片 | 在线中文字幕视频 | 亚洲成人国产精品 | 日韩精品久久久 | 午夜黄色| 欧美成人精品在线观看 | 久久久久久91香蕉国产 | 久久久久久成人网 | 日韩视频精品在线 | 亚洲精品久久久一区二区三区 | 一区二区不卡 | 久久久久久国产精品免费免费男同 | 国产美女在线观看 | 欧美亚洲国产日韩 | 国产一级片在线观看视频 | 国产成人一区二区 | 亚洲一区二区三区在线播放 | 国产人成精品一区二区三 | 国产精品久久一区二区三区 | 亚洲欧美成人 | 天天操天天玩 | 日韩欧美亚洲一区 | 久久精品91久久久久久再现 | 91se在线| 日韩中文字幕在线观看视频 | 中国一级大毛片 | 久久人人爽人人爽人人片av免费 | 日韩不卡视频在线观看 | 奇米av| 成人亚洲精品久久久久软件 | 亚洲欧美在线免费观看 | 久久一区二区三区四区 | 91毛片在线看 | 免费激情av| 久久成人精品视频 | 精久久 |