芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

IC解密单片机红外线发射接收电路

  1. IC解密编译环境:Keil uVision4 V9.00
  2. ***************************************************************/
  3. //
  4. //        IC解密发射引脚(接PNP三极管b极)
  5. //       IC解密 PNP三极管e极接2Ω电阻,c极接红外发射管
  6.      
  7. #include <REG51.h>
  8. #include <intrins.h>
  9. #define uchar unsigned char
  10. #define uint  unsigned int

  11. #define SBM   0x80                //识别码

  12. #define m9    (65536-9000)               //约9mS
  13. #define m4_5  (65536-4500)               //约4.5mS
  14. #define m1_6  (65536-1630)               //约1.65mS
  15. #define m_65  (65536-580)               //约0.65mS
  16. #define m_56  (65536-560)               //约0.56mS
  17. #define m40   (65536-40000)       //约40mS
  18. #define m56   (65536-56000)       //56mS
  19. #define m2_25 (65536-2250)        //约2.25mS

  20. sbit IR  = P3^6;                                  //定义发射引脚(接PNP三极管基极)
  21. sbit LED = P3^7;                                  //发射指示灯

  22. uchar KEY(void);
  23. void  SanZhuan(void);
  24. void  ZZ(uchar x);
  25. void  Z0(uchar temp);
  26. void  TT0(bit BT,uint x);
  27. void  YS(uchar time);

  28. /*┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
  29. 函数功能:主函数
  30. ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈*/
  31. void main(void)
  32. {

  33.   TMOD = 0x01;         //T0 16位工作方式
  34.   IR=1;                                   //发射端口常态为高电平

  35.   while(1)
  36.   {
  37.    SanZhuan();
  38.   }
  39. }
  40. /***************************************************************
  41. 函数功能:             4×4矩阵键盘
  42.                            键值                    
  43. P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
  44. │     │    │    │    │    │    │    │    ┃
  45. │     │    │    └────13   14   15   16   ┃   
  46. │     │    └─────────9    10   11   12   ┃   
  47. │     └──────────────5    6    7    8    ┃   
  48. └────────────────────1    2    3    4    ┃  
  49. ***************************************************************/
  50. uchar KEY(void)
  51. {
  52. uchar H,L;            //行值,列值
  53. H=0;
  54. L=0;
  55. P1 = 0xf0;            //将键盘端口行值设为1,列值设为0
  56. if(P1!= 0xf0)         //检测是否有按键按下,如果有则hangval必不为0x0f
  57.    {
  58.     YS(10);            //按键去抖动,延时10毫秒
  59.     if(P1!=0xf0)       //确实有按键按下
  60.       {
  61.        H  = P1&0xf0;   //按键后得到按键的行标志位,将行标志位赋值给hangval
  62.        P1 = 0x0f;      //翻转键盘接口输出
  63.        L  = P1&0x0f;   //得到列标志位
  64.       }
  65.         return (H+L);
  66.    }
  67.   return 0;
  68. }
  69. /***************************************************************
  70. 函数功能:散转程序
  71. 入口参数:v
  72. //
  73. //  13 14 15 16
  74. //  9  10 11 12
  75. //  5  6  7  8
  76. //  1  2  3  4
  77. ***************************************************************/
  78. void SanZhuan(void)
  79. {
  80. uchar v;
  81. v = KEY();

  82. switch(v)
  83. {
  84.   case 0x77:ZZ(0x01);v=0;break;                //"  "
  85.   case 0xb7:ZZ(0x02);v=0;break;                //"  "
  86.   case 0xd7:ZZ(0x03);v=0;break;                //"  "
  87.   case 0xe7:ZZ(0x04);v=0;break;                //"  "
  88.   case 0x7b:ZZ(0x05);v=0;break;                //"  "
  89.   case 0xbb:ZZ(0x06);v=0;break;                //"  "
  90.   case 0xdb:ZZ(0x07);v=0;break;                //"  "
  91.   case 0xeb:ZZ(0x08);v=0;break;                //"  "
  92.   case 0x7d:ZZ(0x09);v=0;break;                //"  "
  93.   case 0xbd:ZZ(0x10);v=0;break;                //"  "
  94.   case 0xdd:ZZ(0x11);v=0;break;                //"  "
  95.   case 0xed:ZZ(0x12);v=0;break;                //"  "
  96.   case 0x7e:ZZ(0x13);v=0;break;                //"  "
  97.   case 0xbe:ZZ(0x14);v=0;break;                //"  "
  98.   case 0xde:ZZ(0x15);v=0;break;                //"  "
  99.   case 0xee:ZZ(0x16);v=0;break;                //"  "
  100.   default:v=0;
  101. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信