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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4359|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

315Mhz無線模塊接收程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:128229 發(fā)表于 2016-6-27 22:08 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
  1. # include<reg52.h>
  2. # define uint unsigned int
  3. # define uchar unsigned char

  4. sbit DATA=P3^2;
  5. sbit rs=P2^6;                  //1602引腳定義
  6. sbit rw=P2^5;
  7. sbit e=P2^7;
  8. uchar dat,num;

  9. uchar code table[]="0123456789ABCDEF";
  10. uchar code table1[]="Receive:";                //液晶固定部分顯示
  11. uchar code table2[]="Re_data:0x";

  12. void write_data (uchar dat);         //1602寫數(shù)據(jù)
  13. void write_com (uchar com);                 //1602寫命令
  14. unsigned char pow(unsigned char n,unsigned char m);        //n的m次方函數(shù)
  15. uchar receive(void);                          //接收處理函數(shù)  
  16. void gd();                        //液晶固定部分顯示

  17. void delay (uint xms)                //1602延時
  18. {
  19.         uint i,j;
  20.         for (i = xms; i > 0; i--)
  21.                 for (j = 110; j > 0; j--);
  22. }

  23. void delay1(unsigned char t)//延時程序
  24. {
  25.         unsigned char n;
  26.         for(;t>0;t--)
  27.         for(n=40;n>0;n--);  
  28. }

  29. unsigned char pow(unsigned char n,unsigned char m)//n的m次方函數(shù)
  30. {
  31.         unsigned  char t,result=1;
  32.         for(t=0;t<m;t++){result=n*result;}
  33.         return result;
  34. }

  35. void init_1602()
  36. {
  37.     e = 0;                                                //1602初始化
  38.         write_com (0x38);
  39.     write_com (0x0c);
  40.         write_com (0x06);
  41.         write_com (0x01);
  42.         gd();
  43. }

  44. /*1602液晶代碼部分        ------------------------------ */
  45. void write_com (uchar com)                //寫命令
  46. {
  47.         rs = 0;
  48.         rw = 0;
  49.         P0 = com;
  50.         delay (5);
  51.         e = 1;
  52.         delay (5);
  53.         e = 0;
  54. }

  55. void write_data (uchar dat)                 //寫數(shù)據(jù)
  56. {
  57.         rs = 1;
  58.         rw = 0;
  59.         P0 = dat;
  60.         delay (5);
  61.         e = 1;
  62.         delay (5);
  63.         e = 0;
  64. }

  65. void gd()                                //液晶固定部分顯示
  66. {
  67.     write_com(0x80);
  68.         for(num=0;num<8;num++)
  69.         {
  70.            write_data(table1[num]);
  71.                 delay(5);
  72.         }
  73.         write_com(0x80+0x40);
  74.         for(num=0;num<10;num++)
  75.         {
  76.            write_data(table2[num]);
  77.                 delay(5);
  78.         }
  79. }

  80. uchar receive(void)//接收處理函數(shù)
  81. {
  82.         unsigned char guid=0,result[12],i,key=0,res=0,t,time=0;
  83.         while(1)//捕獲前導(dǎo)命令
  84.         {
  85.                 while(DATA==1){t++;if(t>=90){delay1(100);return 0;}}//防止錯誤數(shù)據(jù)導(dǎo)致的死循環(huán)
  86.                 if(t>=60&&t<95){t=0;key++;time=0;if(key>3)break;}//獲得前導(dǎo)命令跳出循環(huán),清除計(jì)時信號
  87.                 else if(time>100){delay1(100);return 0;}//長0,錯誤信號返回0
  88.                 else {t=0;time++;}//計(jì)時壘加,清除t                
  89.         }  
  90.         t=0;
  91.         time=0;
  92.         for(i=1;i<13;)             //校驗(yàn)碼及數(shù)據(jù)的接收共12位數(shù)據(jù)
  93.         {
  94.                 while(DATA==1){t++;if(t>=95){delay1(100);return 0;}}//防止錯誤信號導(dǎo)致的死循環(huán)
  95.                 if(t>=60&&t<95){t=0;i=1;time=0;}//去除多余的前導(dǎo)命令
  96.                 else if(t>=28&&t<60){result[i-1]=1;i++;time=0;}//捕獲數(shù)據(jù)1
  97.                 else if(t>0&&t<27){result[i-1]=0;i++;time=0;}//捕獲數(shù)據(jù)0
  98.                 if(time>100)return 0; //消除長0的干擾確保數(shù)據(jù)正確
  99.                 t=0;   //清零
  100.                 time++;//計(jì)時               
  101.         }
  102.         if(result[0]==1&&result[1]==0&&result[2]==1&&result[3]==0)//判斷校驗(yàn)碼
  103.         for(i=0;i<8;i++){res+=pow(2,i)*result[11-i];}//將結(jié)果轉(zhuǎn)換為十進(jìn)制數(shù)據(jù)
  104.         return res;//返回得到的結(jié)果
  105. }

  106. void display(uchar dat)                //液晶數(shù)據(jù)顯示
  107. {
  108.     uchar a,b;
  109.         a=dat/16;
  110.         b=dat%16;
  111.         if(a>9)
  112.         a=a+0;
  113.         if(b>9)
  114.         b=b+0;
  115.         write_com(0x80+0x4A);
  116.         write_data(table[a]);delay(5);
  117.         write_data(table[b]);delay(5);
  118. }

  119. void main()
  120. {
  121.         init_1602();                                //1602初始化
  122.         while(1)
  123.         {
  124.                 dat=receive();
  125.                 if(dat)                                  //顯示
  126.                 {
  127.                       write_com(0x80+0x08);
  128.                           write_data('O');delay(5);
  129.                           write_data('K');delay(5);
  130.                           write_data('!');delay(5);
  131.                           display(dat);
  132.                 }
  133.                 else
  134.                 {
  135.                       write_com(0x80+0x08);
  136.                           write_data('N');delay(5);
  137.                           write_data('O');delay(5);
  138.                           write_data('!');delay(5);
  139.                           write_com(0x80+0x4A);
  140.                           write_data(' ');delay(5);
  141.                           write_data(' ');delay(5);
  142.                 }
  143.         }
  144. }

復(fù)制代碼


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

使用道具 舉報(bào)

沙發(fā)
ID:296649 發(fā)表于 2018-3-26 08:27 | 只看該作者
捕獲器解調(diào)有么
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 人妖一区 | 97操操 | 精品免费av | 日本韩国欧美在线观看 | 国产精品mv在线观看 | 国产一级黄色网 | 亚洲精品一区在线 | 欧美精品成人一区二区三区四区 | 噜噜噜噜狠狠狠7777视频 | 亚洲精品成人 | 国产精久久久久久久妇剪断 | 日韩一区二区在线视频 | 亚洲精品久久久久久久久久久 | 国产精品国产精品国产专区不卡 | 日韩欧美国产精品 | 亚洲久草视频 | 操到爽| 久久视频免费看 | 蜜臀久久99精品久久久久野外 | 黄网站涩免费蜜桃网站 | 一区二区三区播放 | 国产精品欧美一区二区 | 在线看片网站 | 久久中文字幕在线 | 成人激情视频免费观看 | 狠狠操婷婷 | 欧美中文字幕一区二区三区亚洲 | 欧美一级免费 | 欧美 日韩 国产 成人 在线 91 | 国产免费一区二区三区免费视频 | 91福利在线导航 | 91美女在线观看 | 视频1区2区| 精品久久久久久亚洲国产800 | 久久亚洲精品久久国产一区二区 | 91天堂| 国产精品自产拍 | wwwww在线观看 | 国产精品久久久久久久免费观看 | 激情欧美一区二区三区 | 国产成人精品免费视频大全最热 |