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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10017|回復: 15
打印 上一主題 下一主題
收起左側

51hei單片機學習板BA5104(風扇六鍵)紅外格式解碼

  [復制鏈接]
跳轉到指定樓層
樓主
ID:22439 發表于 2018-1-6 16:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
        BA5104的編碼格式:每一幀遙控碼的長度為12位,高位在前,包括3位起始碼位(110)、2位用戶碼位、7位指令碼位。每一幀遙控碼的時間間隔為4T(6.7516ms),其中T=1.6879ms為每一位遙控碼的周期。遙控碼“0”用1/4T的高電平(0.395ms)、3/4T(1.284ms)的低電平表示,遙控碼“1”用3/4T的高電平、1/4T的低電平表示。
        用51hei學習板,設置成紅外接收解碼實驗,寫入附件“BA5104風扇六鍵紅外格式解碼(51hei學習板).hex”,單片機用AT89s51系列,晶振11.0592M,可靠解碼。學習板前兩位是十六進制起始碼0x06(110),接著兩位是十六進制用戶碼,最后兩位是十六進制指令碼(鍵值)。




hex文件(無代碼): BA5104風扇六鍵紅外格式解碼(51hei學習板).rar (863 Bytes, 下載次數: 82)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:272625 發表于 2018-1-21 14:08 | 只看該作者
下載看看,好像還不錯!
回復

使用道具 舉報

板凳
ID:277276 發表于 2018-2-8 21:30 | 只看該作者
僅僅是HEX文件 ,你傳上來干嘛
回復

使用道具 舉報

地板
ID:342109 發表于 2018-11-22 09:40 | 只看該作者
謝謝分享
回復

使用道具 舉報

5#
ID:617600 發表于 2019-9-28 15:14 來自手機 | 只看該作者
謝謝分享
回復

使用道具 舉報

6#
ID:592010 發表于 2021-5-19 20:26 | 只看該作者
能分享一下源代碼嗎?
回復

使用道具 舉報

7#
ID:745849 發表于 2021-6-21 16:51 | 只看該作者
hex文件有什么用?
回復

使用道具 舉報

8#
ID:23303 發表于 2021-12-26 09:44 | 只看該作者
很想做一個,謝謝樓主分享!
回復

使用道具 舉報

9#
ID:23303 發表于 2022-1-6 10:04 | 只看該作者
有代碼學習一下就好
回復

使用道具 舉報

10#
ID:23303 發表于 2022-1-6 10:05 | 只看該作者
很想做一個,沒代碼
回復

使用道具 舉報

11#
ID:313530 發表于 2022-10-19 19:03 | 只看該作者
有無源代碼?
回復

使用道具 舉報

12#
ID:796012 發表于 2023-3-14 17:12 | 只看該作者
連數碼管接線定義都不知道,哈哈
回復

使用道具 舉報

13#
ID:22439 發表于 2023-10-13 22:53 | 只看該作者
源程序補上

BA5104格式紅外解碼(風扇6鍵).rar

19.36 KB, 下載次數: 6, 下載積分: 黑幣 -5

回復

使用道具 舉報

14#
ID:22439 發表于 2023-10-13 23:01 | 只看該作者
  1. /************************************************
  2. hex文件刷到51hei學習板就可以做解碼實驗
  3. BA5104的編碼格式:
  4. 每一幀遙控碼的長度為12位,高位在前,包括3位起始碼位(110)、2位用戶碼位、7位指令碼位。
  5. 每一幀遙控碼的時間間隔為4T(6.7516ms),其中T=1.6879ms為每一位遙控碼的周期。
  6. 遙控碼“0”用1/4T的高電平(0.395ms)、3/4T(1.284ms)的低電平表示,遙控碼“1”用3/4T的高電平、1/4T的低電平表示。
  7.     關-0x01  搖頭-0x10  定時-0x08  風類-0x04  開/風速-0x02  彩燈-0x43
  8.     110 11 1000011=0x0dc3=67 彩燈
  9. 晶振:11.0592M
  10. Time: 2018.1.6
  11. *************************************************/
  12. #include <reg52.h>
  13. #define uchar unsigned char
  14. #define uint unsigned int
  15. void display();
  16. void delay(uchar i);
  17. void zir();
  18. uint tes,ird0,ird1;
  19. uchar num,kx,irok;
  20. uchar ircode[8];
  21. sbit ir=P3^3; //HS0038接收頭OUT端直接連P3.2(INT0)
  22. void Int1() interrupt 2
  23. {
  24.     if(!kx)
  25.     {
  26.         tes=TH0*256+TL0;   //提取中斷時間間隔時長
  27.         TH0=0;
  28.         TL0=0;
  29.         ET0=0;
  30.         TR0=1;        //定時中斷重新置零
  31.         if((tes>7600)&&(tes<8200))         //4T+3/4T=8.017ms  //8246.52777777778微秒-8897.56944444445微秒  8.2465ms-8.8975ms          7.173ms-8.017ms           8.56ms        7000-8200        7.6ms-8.89ms
  32.         {
  33.             kx=1;
  34.         }
  35.     }
  36.     if(!irok&&kx)
  37.     {
  38.         TH0=0xfc;
  39.         TL0=0xf1;
  40.         TR0=1;
  41.         ET0=1;
  42.     }
  43. }
  44. void t0()interrupt 1//定時器0中斷
  45. {
  46.     TR0=0;
  47.     ird0=(ird0<<1)|!ir;
  48.     num++;
  49.     if(num>11)
  50.     {
  51.         irok=1;
  52.         zir();
  53.     }//kx=0;num=0;zir();}
  54. }
  55. void zir()
  56. {
  57. //uchar k;
  58.     if(ird0<<4==ird1<<4)
  59.     {
  60. //for(k=0;k<8;k++){ircode[k]=ird0>>(7+4-k)&0x01;}//ird0>>(7-k)&0x01;} //二進制顯示12-5位
  61. //for(k=0;k<8;k++){ircode[k]=ird0>>(7-k)&0x01;}//ird0>>(7-k)&0x01;}  //二進制顯示低8位
  62.         ircode[0]=(ird0>>9&0x07)>>4;
  63.         ircode[1]=(ird0>>9&0x07)&0x0f;
  64.         ircode[2]=(ird0>>7&0x03)>>4;
  65.         ircode[3]=(ird0>>7&0x03)&0x0f;
  66.         ircode[6]=(ird0&0x7f)>>4;
  67.         ircode[7]=(ird0&0x7f)&0x0f;
  68.     }
  69.     else
  70.     {
  71.         ird1=ird0;
  72.     }
  73.     num=kx=irok=0;
  74.     TR0=0;
  75.     ET0=0;
  76. }
  77. void main()
  78. {
  79.     EA=1;
  80.     IT1=1;
  81.     EX1=1;
  82.     TMOD=0x11;
  83.     TH0=0x00;
  84.     TL0=0x00;
  85.     TR0=0;
  86.     ET0=0;
  87.     while(1)
  88.     {
  89.         display();
  90.     }
  91. }
  92. void delay(uchar i)
  93. {
  94.     uchar j,k;
  95.     for(j=i; j>0; j--)
  96.         for(k=125; k>0; k--)
  97.         {
  98.             ;
  99.         }
  100. }
  101. sbit dula=P2^6;
  102. sbit wela=P2^7;
  103. sbit laba=P2^2;
  104. void display()
  105. {
  106.     uchar a;
  107.     uchar dis[8];
  108.     uchar code table[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  109.     for(a=0; a<8; a++)
  110.     {
  111.         dis[a]=ircode[a];
  112.     }
  113.     for(a=0; a<8; a++)
  114.     {
  115.         dula=0;
  116.         P0=table[dis[a]]; //送出要點亮的段
  117.         dula=1;
  118.         dula=0;
  119.         wela=0;
  120.         P0=~(0x01<<a); //依次點亮八個位
  121.         wela=1;
  122.         wela=0;
  123.         delay(5);
  124.     }
  125. }
復制代碼

評分

參與人數 1黑幣 +30 收起 理由
admin + 30 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

15#
ID:104712 發表于 2023-12-1 08:10 | 只看該作者
ba5104
回復

使用道具 舉報

16#
ID:297903 發表于 2024-3-22 14:22 | 只看該作者
占用了兩個定時器和一個INT,有點多了,參考了你利用間隔時間的方法,寫了個不用INT,可用任意I/O作為接收,只用一個定時器完成的BA5104解碼!!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 看片国产| 一区在线观看 | 国产精品久久久久久久久久久免费看 | 亚洲女人天堂成人av在线 | 日韩国产一区二区三区 | 国产黄色大片 | 久久久国产一区二区 | 国产精品视频久久久久久 | 毛片大全 | 国产精品久久久久久久久久久久午夜片 | 日本亚洲精品成人欧美一区 | 欧美片网站免费 | 中文字幕乱码一区二区三区 | 免费黄色大片 | 成年人在线播放 | 高清黄色网址 | 日韩一区二区三区在线 | 国产精品国色综合久久 | 99re在线视频 | 成人三区 | 久久久久久久久久一区 | 91免费入口 | 欧美福利三区 | 色花av| 国产成人99久久亚洲综合精品 | 国产成人精品一区二区 | 免费久草| 国产在线拍偷自揄拍视频 | 亚洲一区中文字幕 | 久久91精品国产一区二区三区 | 亚洲人成人一区二区在线观看 | 国产一区二区高清在线 | 国产综合第一页 | 在线不卡av| 91美女在线观看 | 免费一区二区 | 精品视频一区二区 | 国产福利小视频 | 久久久久久国模大尺度人体 | 精品欧美一区二区在线观看欧美熟 | 欧美亚洲第一区 |