⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 红外线遥控器软件解码原理和程序(c语言)--单片机开发基地.htm

📁 电子设计红外遥控很好用,是用红外控制小车的程序
💻 HTM
📖 第 1 页 / 共 5 页
字号:
                          <TR>
                            <TD align=middle width=62 height=22><FONT 
                              class=menufont><A 
                              href="http://www.mcubase.com/information.asp">厂商信息</A></FONT></TD></TR></TBODY></TABLE></TD>
                      <TD align=middle width=60 height=30>
                        <TABLE>
                          <TBODY>
                          <TR>
                            <TD align=middle width=62 height=22><FONT 
                              class=menufont><A 
                              href="http://www.mcubase.com/gongqiu.asp">供求信息</A></FONT></TD></TR></TBODY></TABLE></TD>
                      <TD align=middle width=60 height=30>
                        <TABLE>
                          <TBODY>
                          <TR>
                            <TD align=middle width=62 height=22><FONT 
                              class=menufont><A 
                              href="http://www.mcubase.com/news.asp">资讯快递</A></FONT></TD></TR></TBODY></TABLE></TD>
                      <TD align=middle width=64 height=30>
                        <TABLE>
                          <TBODY>
                          <TR>
                            <TD align=middle width=62 height=20>
                              <DIV class=menuskin id=popmenu 
                              onmouseover="clearhidemenu();highlightmenu(event,'on')" 
                              style="Z-INDEX: 100" 
                              onmouseout="highlightmenu(event,'off');dynamichide(event)"></DIV></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD>
                <TD class=topmenur></TD></TR></TBODY></TABLE></TD>
          <TD class=right></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE class=dabg cellSpacing=0 cellPadding=0 align=center border=0>
  <TBODY>
  <TR>
    <TD class=left></TD>
    <TD class=width>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD vAlign=top align=middle>
            <TABLE>
              <TBODY>
              <TR>
                <TD height=5></TD></TR></TBODY></TABLE>
            <TABLE cellSpacing=0 cellPadding=0 border=0>
              <TBODY>
              <TR>
                <TD class=4topleft></TD>
                <TD class=4topmid>&#8195;<IMG class=st_title src="">&nbsp;<FONT 
                  class=titlefont>当前位置:<A 
                  href="http://www.mcubase.com/index.asp">本站首页</A>-<A 
                  href="http://www.mcubase.com/project.asp">案例分析</A>-<A 
                  href="http://www.mcubase.com/project.asp?class=4">51系列单片机</B></FONT></FONT><SPAN 
                  style="WIDTH: 0px"></SPAN><A title="" 
                  href="http://www.mcubase.com/"></A></TD>
                <TD class=4topright></TD></TR></TBODY></TABLE>
            <TABLE cellSpacing=0 cellPadding=0 border=0>
              <TBODY>
              <TR>
                <TD class=4midleft></TD>
                <TD class=4midmid vAlign=top height=60>
                  <DIV id=size 
                  style="TABLE-LAYOUT: fixed; WIDTH: 100%; WORD-BREAK: break-all; LINE-HEIGHT: 120%; TEXT-ALIGN: left" 
                  align=center>
                  <TABLE>
                    <TBODY>
                    <TR>
                      <TD height=5></TD></TR></TBODY></TABLE>
                  <DIV align=center><B><FONT 
                  color=#000000>红外线遥控器软件解码原理和程序(C语言)</FONT></B></DIV>
                  <TABLE>
                    <TBODY>
                    <TR>
                      <TD height=5></TD></TR></TBODY></TABLE>
                  <BLOCKQUOTE>
                    <P align=right>【字体:<A class=menufont 
                    href="javascript:ContentSize(16)">大</A> <A class=menufont 
                    href="javascript:ContentSize(14)">中</A> <A class=menufont 
                    href="javascript:ContentSize(12)">小</A>】&nbsp;</P>
                    <P>来源:网上转载&nbsp;&nbsp;&nbsp; 作者:jiang_xi_sheng</P>
                    <P>红外线一开始发送一段13.5ms的引导码,引导码由9ms的高电平和4.5ms的低电平组成,跟着引导码是系统码,系统反码,按键码,按键反码,如果按着键不放,则遥控器则发送一段重复码,重复码由9ms的高电平,2.25ms的低电平,跟着是一个短脉冲,本程序是免费给大家,版权所有,不得用于商业目的,如需用到本程序到商业上请与本人联系<BR><A 
                    href="mailto:jiang_xi_sheng@163.com">jiang_xi_sheng@163.com</A>,经本人同意后方可用于商业目的,本程序经过试用,能解大部分遥控器的编码!<BR><BR>#include&nbsp;&nbsp;&nbsp;&nbsp;"at89x52.h"<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x00//数据无效<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RESET&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0X01//程序复位<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REQUEST&nbsp;&nbsp;&nbsp;&nbsp;0X02//请求信号<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACK&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x03//应答信号,在接收数据后发送ACK信号表示数据接收正确,<BR>也位请求信号的应答信号<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NACK&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x04//应答信号,表示接收数据错误<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BUSY&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x05//忙信号,表示正在忙<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FREE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x06//空闲信号,表示处于空闲状态<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;READ_IR&nbsp;&nbsp;&nbsp;&nbsp;0x0b//读取红外<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;STORE_IR&nbsp;&nbsp;&nbsp;0x0c//保存数据<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;READ_KEY&nbsp;&nbsp;&nbsp;0x0d//读取键值<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RECEIVE&nbsp;&nbsp;&nbsp;&nbsp;0Xf400//接收缓冲开始地址<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SEND&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0xfa00//发送缓冲开始地址<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x50//红外接收缓冲开始地址<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HEAD&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0xaa//数据帧头<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TAIL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0x55//数据帧尾<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SDA&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;P1_7<BR>#define&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SCL&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;P1_6<BR><BR><BR>unsigned 
                    char xdata *buf1;&nbsp;&nbsp;//接受数据缓冲<BR>unsigned 
                    int&nbsp;&nbsp;buf1_length;&nbsp;&nbsp;//接收到的数据实际长度<BR>unsigned 
                    char xdata *buf2;&nbsp;&nbsp;//发送数据缓冲<BR>unsigned 
                    int&nbsp;&nbsp;buf2_length;&nbsp;&nbsp;//要发送的数据实际长度<BR>bit 
                    buf1_flag;&nbsp;&nbsp;&nbsp;&nbsp;//接收标志,1表示接受到一个数据帧,0表示没有接受到数据帧或数据<BR>帧为空<BR>bit 
                    buf2_flag;&nbsp;&nbsp;&nbsp;&nbsp;//发送标志,1表示需要发送或没发送完毕,0表示没有要发送的数据或<BR>发送完毕<BR>unsigned 
                    char 
                    state1,state2;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//用来标志接收字符的状态,state1用来表示接<BR>收状态,state2用来表示发送状态<BR>unsigned 
                    char data *ir;<BR>union{<BR>&nbsp;&nbsp;&nbsp;&nbsp;unsigned 
                    char a[2];<BR>&nbsp;&nbsp;&nbsp;&nbsp;unsigned int 
                    b;<BR>&nbsp;&nbsp;&nbsp;&nbsp;unsigned char data 
                    *p1[2];<BR>&nbsp;&nbsp;&nbsp;&nbsp;unsigned int data 
                    *p2[2];<BR>&nbsp;&nbsp;&nbsp;&nbsp;unsigned char xdata 
                    *p3;&nbsp;&nbsp;&nbsp;&nbsp;//红外缓冲的指针<BR>&nbsp;&nbsp;&nbsp;&nbsp;unsigned 
                    int xdata 
                    *p4;<BR>}p;<BR>//union{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//<BR>&nbsp;&nbsp;//&nbsp;&nbsp;unsigned 
                    char 
                    a[2];&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//<BR>&nbsp;&nbsp;//&nbsp;&nbsp;unsigned 
                    int b;<BR>&nbsp;&nbsp;//&nbsp;&nbsp;unsigned char data 
                    *p1[2];<BR>&nbsp;&nbsp;//&nbsp;&nbsp;unsigned int data 
                    *p2[2];<BR>&nbsp;&nbsp;//&nbsp;&nbsp;unsigned char xdata 
                    *p3;<BR>&nbsp;&nbsp;//&nbsp;&nbsp;unsigned int xdata 
                    *p4;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//地址指针<BR>//}q;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//<BR><BR>union{<BR>&nbsp;&nbsp;&nbsp;unsigned 
                    char a[2];<BR>&nbsp;&nbsp;&nbsp;unsigned int 
                    b;<BR>}count;<BR>union{<BR>&nbsp;&nbsp;&nbsp;unsigned char 
                    a[2];<BR>&nbsp;&nbsp;&nbsp;unsigned int 
                    b;<BR>}temp;<BR>union{<BR>&nbsp;&nbsp;&nbsp;unsigned char 
                    a[4];<BR>&nbsp;&nbsp;&nbsp;unsigned int 
                    b[2];<BR>&nbsp;&nbsp;&nbsp;unsigned long 
                    c;<BR>}ir_code;<BR><BR>union{<BR>&nbsp;&nbsp;&nbsp;unsigned 
                    char a[4];<BR>&nbsp;&nbsp;&nbsp;unsigned int 
                    b[2];<BR>&nbsp;&nbsp;&nbsp;unsigned long 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -