亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? red.c

?? 9148紅外接收解碼程序
?? C
字號:
//實驗目的:熟悉遙控接碼解碼的方法
//數碼管顯示解碼結果:高四位為用戶碼,低2位為按鍵碼
//硬件要求:跳線J19接通,其他跳線斷開
//          撥碼開關S5、S6全部置ON
//          其他撥碼開關全部置OFF

#include<pic.h>
__CONFIG(0x1832);        
//芯片配置字,看門狗關,上電延時開,掉電檢測關,低壓編程關,加密,4M晶體HS振蕩

#define uchar  unsigned char
#define uint   unsigned int
void delay(char x,char y);
#define bitset(var,bitno)((var)|=1<<(bitno))
#define bitclr(var,bitno)((var)&=~(1<<(bitno)))
union {
      struct {
         unsigned b0:1;
         unsigned b1:1;
         unsigned b2:1;
         unsigned b3:1;
         unsigned b4:1;
         unsigned b5:1;
         unsigned b6:1;
         unsigned b7:1;
         }oneBit;
        unsigned char allBits;
       } myFlag;
#define CNT2_1  myFlag.oneBit.b1 
#define CNT2_2  myFlag.oneBit.b2  
#define CNT2_3  myFlag.oneBit.b3  
#define CNT2   myFlag .allBits
 
static bit FLAGS ; 
static bit Bitin; 
        
union  Csr
     { unsigned  long i;
         unsigned  char  Csra[4];
     }myCsra;

#define  RMT   RA1                              // ;遙控接收輸入腳位地址(RA。1)
#define  BITIN  7                               //遙控接收數據位位標志
uchar  CNT0, CNT3,CNT4;                         //用戶臨時寄存器1--4
uint   CNT1;
uchar  TABADD;                                  //數碼管顯示碼取碼用寄存器
uchar  CSR0;                                    //;遙控鍵碼反碼寄存器
uchar  CSR1;                                    //;遙控器鍵碼寄存器
uchar  CSR2;                                    //;遙控器用戶碼高8位寄存器
uchar  CSR3;                                    //;遙控器用戶碼低8位寄存器
uchar  FLAGS2;                                  //;臨時寄存器
uchar  CSR2A ;                                  //遙控接收32位數據暫存寄存器
 
const uchar table[]={0x0C0,0x0F9,0x0A4,0x0B0,0x99,0x92,0x82,0x0F8,0x80,0x90,0x88,0x83,0x0C6,0x0a1,0x86,0x8e,};//0x00
                    // 0,     1,    2,   3,    4,   5,    6,   7,   8,   9,   a,   b,    c,   d,    e,    f,


//-------------系統初始化子程序------------------------------
void  initial (void)
{
        PORTA=0;
        ADCON1=7;                                // 設置RA口全部為普通數字IO口 
        TRISA=0x02;                              // 將RMT設置為輸入,其它所有IO口設置為輸出 
        TRISD=0;                                 // ;RC口全部為輸出 
        PORTD=0xFF;                              //先讓數碼管全部不顯示
}

//--------------------------------------------------------------------------------------------
void   RCV()
{
  if(!RMT)
  {   
             CNT1=640;                            //4*256*10us  640*16=10。24ms
             CNT2=0;
       //RCV1
         do {                                     // ;先檢測引導碼的9MS低電平_____┏┓
                                                  // ;每一個循環16US 
              if(RMT)
               CNT2=CNT2++;
              if(!RMT)
                CNT2=0; 
              if(CNT2_2)                          //高電平大于8*10US=80US則為有效高電平,
                break;                            //否則是一些干擾信號16*4=64us
            } while (CNT1--);                     //低電平大于4*256*10US=10.24MS則是錯誤脈沖
             
       //RCV2
        if(CNT2_2&&(0<CNT1)&&(CNT1<320))          //;低電平小于2*256*10US=5.12MS┏┒____
          {                                       //320*16=5。12ms則是錯誤脈沖
             CNT1=480;                            //;3*256*10us  480*16=7.68
             CNT2=0;
         
                                                  //RCV3          //;每一個循環16US
                       
              do {      
                  if(!RMT)
                   CNT2=CNT2++;
                  if (RMT)
                    CNT2=0;
                  if(CNT2_2)                       // 低電平大于8*10US=80US則為有效低電平,否則是一些干擾信號
                    break;                         //RCV4,否則是一些干擾信號16*4=64us
                                                   // 高電平大于3*256*10US=7.68MS則是錯誤的               
                } while (CNT1--);

               //RCV4

                if(CNT2_2 && (0<CNT1)&&(CNT1<320)) //高電平小于1*256*10US=2.56MS則是錯誤的 
                 {                                 //480-320=160 *16= 2.56ms
                       CNT3 =32;                   //接收數據共32位,16位用戶碼,8位控制碼加8位控制碼的反碼
                //RCV5     
                  do {  
                         CNT2=0;
                         CNT0=86;                  //低電平大于256-170=86*10US=860US錯誤 86*10 __┌┐
                         CNT4=200;                 //高電平大于256-56=200*10US=2MS錯誤   200*10
                  //RCV5_HI            
                           do {                    //;每一個循環10US
                                if(RMT)
                                  CNT2=CNT2++;
                                if(!RMT)
                                   CNT2=0;
                                if(CNT2_3)         //;高電平大于8*10US=80US則為有效高電平
                                   break;          //RCV6否則是一些干擾信號16*4=64us
                          
                                                   //;低電平大于860US則是錯誤的
                               } while (CNT0--);
                   //CV6           
                      if((CNT0==0)||(CNT2_3==0))   break;
                         
                                      CNT2=0;
                   //RCV6_LO              
                                    do {                    //┌┐__
                                         if(!RMT)
                                           CNT2=CNT2++;
                                          if(RMT)
                                           CNT2=0;
                                           if(CNT2_3)    //低電平大于10*8US=80US則是有效低電平
                                            break ;      // COMPARE 否則是一些干擾信號16*4=64us
                                        } while (CNT4--);//高電平大于256-56=200*10US=2MS錯誤
                                   
                                  if((CNT4==0)||(CNT2_3==0))   break;
 
                                   //OMPARE        
                                      CNT0=(86-CNT0)+(200-CNT4) ;
                                         //;減CNT0的值  等于實際低電平計數值
                                         // ;減CNT4的值  等于實際高電平計數值
                                         // ;將高低電平的計數加在一起并存入CNT0,通過比較高低電平總的時間來確定是1還是0
                                         // ;總的值大于255(即時間大于255*10US=2.55MS)則錯誤  255*10=2.55
                                         // ;總的時間小于70*10US=700US則是錯誤的            70*10=700
                                     if(( (70<CNT0)&&(CNT0<130))||((160<CNT0)&&(CNT0<230) ) ) // ;130*10=1.3MS   
                                         {     
                                               if((70<CNT0)&&(CNT0<130))
                                                          //COMPARE_H   // ;時間大于1.3MS轉去確定是否1
                                                          
                                                     Bitin=0;           //;時間在700US-1.3MS之間則是0
                                              else// if (160<CNT0<230)  //;小于160*10US=1.6MS,則錯誤   
                                                                        //;大于230*10US=2.3MS,則錯誤  
                                                    Bitin=1;            // ;時間在1.6MS-2.3MS之間則是1  
                                            myCsra.i= myCsra.i>>1;      //;將每一位移入相應寄存器
                                             if(Bitin)
                                                      bitset (  myCsra. Csra[3],7); 
                                              else    bitclr (  myCsra. Csra[3],7); 
                                          }

                                       else  break;
                                          
                    } while (CNT3--); //;是否接收完32位
                      CSR3=myCsra. Csra[0]; 
                      CSR2=myCsra. Csra[1]; 
                      CSR1=myCsra. Csra[2]; 
                      CSR0=myCsra. Csra[3];
                     CSR2A= ~CSR0;  //;比較鍵碼的反碼取反后是否等于鍵碼
                                    //;不等于則接收到的是錯誤的信息
                                    // 將鍵碼送顯示   
                   }  

            }

   } 

}

//-------------------------------------------------
void display()
   {
     int i;                        //定義查表變量
     i=CSR3&0x0f;                  //求秒的個位
     PORTD=table[i];               //送D口顯示
     PORTA=0x3e;                   //點亮秒的個位
     delay(5,70);                  //延長一段時間,保證亮度
     
     i=CSR3&0xf0;                  //求秒的十位
     i=i>>4;                       //右移4位
     PORTD=table[i];               //送D口顯示
     PORTA=0x3d;                   //點亮秒的十位
     delay(5,70);                  //延長一段時間,保證亮度
     
     i=CSR2&0x0f;                  //求分的個位
     PORTD=table[i];               //送D口顯示,并顯示小數點
     PORTA=0x37;                   //點亮分的個位
     delay(5,70);                  //延長一段時間,保證亮度
 
     i=CSR2&0xf0;                  //求分的十位
     i=i>>4;                 
     PORTD=table[i];               //送D口顯示
     PORTA=0x3b;                   //點亮分的十位
     delay(5,70);                  //延長一段時間,保證亮度

     i=CSR1&0x0f;                  //求時的個位
     PORTD=table[i];               //送D口顯示,并加上小數點
     PORTA=0x2f;                   //點亮時的個位
     delay(5,70);                  //延長一段時間,保證亮度
    
     i=CSR1&0xf0;                  //求時的十位
     i=i>>4;    
     PORTD=table[i];               //送D口顯示
     PORTA=0x1f;                   //點亮時的十位
     delay(5,70);                  //延長一段時間,保證亮度
   }

//----------------主程序---------------------------
 void main(void)
{      
       initial ();                //系統初始化子程序
        while(1)
        {
             RCV();               //遙控接收程序
             display();           //解碼顯示程序
        }
} 

//------------------------------------------------
//延時函數
void delay(char x,char y) 
{
  char z;
  do{
      z=y;
      do{;}while(--z);
     }while(--x);
 }
//其指令時間為:7+(3*(Y-1)+7)*(X-1)如果再加上函數調用的call 指令、頁面設定、傳遞參數花掉的7 個指令。
//則是:14+(3*(Y-1)+7)*(X-1)。

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
福利91精品一区二区三区| 日韩午夜电影在线观看| 亚洲成a天堂v人片| 国产女同互慰高潮91漫画| 日本一区二区三区国色天香| 日韩欧美亚洲国产另类| 国产精品久久久爽爽爽麻豆色哟哟 | 成人高清视频在线| 日韩黄色在线观看| 亚洲人精品午夜| 亚洲精品va在线观看| 亚洲欧美偷拍三级| 中文字幕一区二区三中文字幕| 久久久久国色av免费看影院| 国产精品免费aⅴ片在线观看| 日韩一区欧美小说| 亚洲成人激情社区| 五月天中文字幕一区二区| 日韩av中文在线观看| 日日夜夜精品视频天天综合网| 日韩电影在线一区二区| 国产精品一区二区三区网站| 成人免费视频免费观看| 欧美性极品少妇| 91精品国产91久久综合桃花| 欧美顶级少妇做爰| 中文在线资源观看网站视频免费不卡| 国产日韩欧美精品一区| 亚洲男人的天堂在线观看| 亚洲国产精品精华液网站| 捆绑紧缚一区二区三区视频| 91在线视频观看| 欧美日韩国产一二三| 国产午夜精品一区二区三区视频| 一区二区三区四区av| 色八戒一区二区三区| 欧美一区二区三区不卡| 国产精品高潮呻吟久久| 日本91福利区| 日本乱码高清不卡字幕| 久久中文字幕电影| 亚洲午夜久久久| 粉嫩13p一区二区三区| 4438x亚洲最大成人网| 亚洲欧洲三级电影| 国产在线国偷精品产拍免费yy| 99国产精品久久久久久久久久久| 欧美日本韩国一区| 日韩美女视频19| 国产在线精品不卡| 国产98色在线|日韩| 欧美电影影音先锋| 欧美二区在线观看| 亚洲一二三四在线| 99精品黄色片免费大全| 久久久久久久精| 麻豆国产一区二区| 欧美一区二区三区在线看| 亚洲欧美激情视频在线观看一区二区三区| 久久99国产精品麻豆| 8x8x8国产精品| 午夜精品一区二区三区三上悠亚| 91免费看视频| 日韩毛片精品高清免费| 99久久久国产精品| 国产精品夫妻自拍| 成人开心网精品视频| 国产色一区二区| 欧美精品高清视频| 亚洲va欧美va人人爽午夜| 一本一道波多野结衣一区二区| 久久精品人人做人人综合| 老司机免费视频一区二区三区| 欧美亚洲另类激情小说| 亚洲一区二区av电影| 91国产免费看| 午夜视频在线观看一区二区 | 久久精品一区二区| 免费欧美日韩国产三级电影| 欧美日韩高清影院| 首页欧美精品中文字幕| 91精品国产一区二区三区| 亚洲激情在线激情| 91福利视频久久久久| 亚洲欧美日韩系列| 欧美疯狂性受xxxxx喷水图片| 婷婷综合五月天| 欧美日本一道本在线视频| 日韩av一二三| 久久综合九色欧美综合狠狠| 国产东北露脸精品视频| 中文字幕亚洲区| 欧美在线制服丝袜| 日韩不卡一区二区| wwww国产精品欧美| 色综合欧美在线视频区| 亚洲一卡二卡三卡四卡无卡久久| 6080亚洲精品一区二区| 国精产品一区一区三区mba桃花| 26uuu国产电影一区二区| 欧美美女视频在线观看| 一区二区三区四区在线免费观看| 色综合天天综合狠狠| 国产欧美日韩在线看| 91.com在线观看| 国产另类ts人妖一区二区| 成人午夜精品在线| 亚洲欧洲日产国产综合网| 色综合久久久久网| 国产精品久久久久aaaa樱花| 色狠狠综合天天综合综合| 亚洲成人第一页| 久久久久青草大香线综合精品| 国产成人精品免费网站| 亚洲制服丝袜一区| 国产三级一区二区| 欧美男人的天堂一二区| 成人免费黄色大片| 蜜臀久久99精品久久久画质超高清 | 亚洲激情中文1区| 精品国产区一区| 色婷婷激情综合| 国产不卡在线播放| 日韩福利视频网| 亚洲精品成人a在线观看| 2023国产精品| 欧美日韩国产不卡| www.成人在线| 久久99精品国产.久久久久久| 亚洲网友自拍偷拍| 国产精品乱子久久久久| 26uuu另类欧美亚洲曰本| 欧美日韩一区久久| 色呦呦一区二区三区| 国产a视频精品免费观看| 韩国成人福利片在线播放| 日韩电影在线一区二区| 亚洲成av人片| 亚洲一区二区三区三| 国产精品久久国产精麻豆99网站| 777色狠狠一区二区三区| 在线观看网站黄不卡| av在线不卡电影| 99久久婷婷国产| 国产欧美日本一区二区三区| 日韩一区二区电影| 777亚洲妇女| 91极品视觉盛宴| 欧美视频在线一区| 在线精品视频免费播放| 91蝌蚪porny九色| av电影天堂一区二区在线| 国产精品一品二品| 福利视频网站一区二区三区| 国产精品一二一区| 国产一区亚洲一区| 国产精品一二三四五| 福利一区在线观看| 色综合中文字幕国产| 成人app在线观看| 91亚洲国产成人精品一区二三| 91麻豆国产精品久久| 91福利国产精品| 7777精品伊人久久久大香线蕉| 在线不卡中文字幕| 精品国产一区二区三区不卡| 色悠悠亚洲一区二区| 91啪在线观看| 日韩视频123| 一本大道综合伊人精品热热| 一本色道久久综合亚洲91| 在线免费观看日韩欧美| 91麻豆精品国产自产在线观看一区 | 日韩一卡二卡三卡四卡| 欧美精品一区二区高清在线观看| 日本一区二区三区免费乱视频| 亚洲天天做日日做天天谢日日欢| 亚洲一级不卡视频| 精品影视av免费| eeuss鲁片一区二区三区 | 美女性感视频久久| 国产精品99久久久久久久女警 | 一级日本不卡的影视| 日本在线播放一区二区三区| 国产乱淫av一区二区三区| 91麻豆精品在线观看| 欧美一级欧美一级在线播放| 欧美激情一区二区三区在线| 亚洲欧美一区二区三区极速播放 | 久久激情综合网| 成人国产免费视频| 欧美精三区欧美精三区| 欧美激情一区不卡| 亚洲日本在线天堂| 国产乱色国产精品免费视频| 欧洲精品中文字幕| 国产精品视频在线看| 日韩精品午夜视频| 色94色欧美sute亚洲13| 久久久久国产免费免费|