在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

    
    
    <address id="vxupu"><td id="vxupu"></td></address>

      <pre id="vxupu"><small id="vxupu"></small></pre>
      <dfn id="vxupu"></dfn>
      <div id="vxupu"><small id="vxupu"></small></div>
    1. 新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 紅外解碼程序(用1602顯示碼值)

      紅外解碼程序(用1602顯示碼值)

      作者: 時間:2016-12-02 來源:網(wǎng)絡 收藏
      #include

      #define uchar unsigned char
      #define uint unsigned int
      sbit beep=P1^7;
      bit startflag; //定義一個掃描開始標志位
      bit irreceok;//紅外接收OK標志位
      bit irprosok;//紅外接收處理OK標志位
      uchar irdata[33];//定義一個存放編碼的數(shù)組。引導碼1位,客戶碼8位,客戶反碼8位,數(shù)據(jù)碼8位,數(shù)據(jù)反碼8位 ,共33位
      uchar bitnum;//接收到的第幾位數(shù)據(jù)的標志位
      uchar irtime;//定義紅外掃描時間
      uchar ircode[4];//為四個碼值定義一個數(shù)組存放,把四位碼分開
      uchar disp[8];//四組數(shù)據(jù),每組拆成高四位和低四位,共八個元素
      /**************1602部分******************/
      sbit lcden=P1^2;
      sbit lcdrs=P1^0;
      sbitlcdrw=P1^1;
      /*char code Tab[]={0,1,2,3,4,5,6,7,8,
      9,A,B,C,D,E,F};*/
      char code Tab[]="0123456789abcdef";
      void delay(uint z) //延時子程序
      {
      uint x,y;
      for(x=z;x>0;x--)
      for(y=220;y>0;y--);
      }

      本文引用地址:http://www.biyoush.com/article/201612/324698.htm

      void write_com(uchar com)//定義一個帶參數(shù)的寫命令子程序
      {
      lcdrs=0; //1602的rs為0時,接收命令,為1時接收數(shù)據(jù)
      P0=com;//把void write_com(uchar com)中的COM中的數(shù)據(jù)給P0口
      delay(2);
      lcden=1;
      delay(2);
      lcden=0;
      delay(2);
      }

      void init_1602()//定義一個初始化子程序
      {
      lcden=0;
      lcdrw=0;
      write_com(0x38);//調(diào)用 write_com子程序并把0x38賦給P0口,顯示模式打開
      write_com(0x0f);//調(diào)用 write_com子程序并把“開顯示,顯示光標,光標閃爍”指令碼賦給P0口
      write_com(0x06);//調(diào)用 write_com子程序并把“地址指針加1,整屏不移動”指令碼賦給P0口
      //write_com(0x80+0x10);//數(shù)據(jù)指針初始化,讓指針指向可顯示的最右端
      write_com(0x80);//數(shù)據(jù)指針初始化,讓指針指向最左端,顯示從第一行開始
      write_com(0x01);//調(diào)用 write_com子程序并把"清零指"令碼賦給P0口
      }

      void write_dat(uchar dat)//定義一個帶參數(shù)的寫數(shù)據(jù)子程序
      {
      lcdrs=1; //1602的rs為0時,接收命令,為1時接收數(shù)據(jù)
      P0=dat;//把void write_shu(uchar shu)中的COM中的數(shù)據(jù)給P0口
      delay(2);
      lcden=1;
      delay(2);
      lcden=0;
      delay(2);
      }

      void delayms(uint t)
      {
      uint i,j;
      for(i=t;i>0;i--)
      for(j=110;j>0;j--);
      }
      void timer0init()//定時器O初始化
      {
      TMOD=0x02;//定時器設成方式2,因為方式2可以自動重裝初值
      TH0=0x00;//高位設為O
      TL0=0x00;//低位設為O
      ET0=1; //中斷打開
      EA=1;//總中斷打開
      TR0=1;//定時器打開
      }


      上一頁 1 2 下一頁

      評論


      技術專區(qū)

      關閉