欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5005|回復: 4
收起左側

2.4G Zigbee無線串口收發模塊51單片機例程

  [復制鏈接]
ID:689710 發表于 2021-6-10 16:38 | 顯示全部樓層 |閱讀模式

用兩塊實現51單片機間通信

用兩塊實現51單片機間通信

此例程運用了兩塊zigbee無線串口收發模塊實現單片機間通信
發送端通過兩個按鍵實現發送
接收端通過一個LED燈顯示結果

單片機源程序如下:
  1. /*-------------------------發送程序----------------------------*/
  2. #include <reg51.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. uchar ch;
  6. bit read_flag=0;
  7. sbit key=P1^2;
  8. sbit key1=P1^3;
  9. void Delay10ms()                //@11.0592MHz
  10. {
  11.         unsigned char i, j;

  12.         i = 108;
  13.         j = 145;
  14.         do
  15.         {
  16.                 while (--j);
  17.         } while (--i);
  18. }
  19. void init_serialcom()
  20. {
  21.         SCON=0X50;
  22.         TMOD=0X20;
  23.         TH1=0XFD;
  24.         TL1=0XFD;
  25.         IE=0X90;
  26.         TR1=1;
  27.         TI=1;
  28. }
  29. void send_char_com(uchar ch)
  30. {
  31.         SBUF=ch;
  32.         while(!TI);
  33.         TI=0;
  34. }
  35. void main()
  36. {
  37.         init_serialcom();
  38.         while(1)
  39.         {
  40.                 if(key==0)
  41.                 {
  42.                         Delay10ms();
  43.                         if(key==0)
  44.                         {
  45.                                 send_char_com('A');
  46.                         }
  47.                 }
  48.                 else if(key1==0)
  49.                 {
  50.                         Delay10ms();
  51.                         if(key1==0)
  52.                         {
  53.                                 send_char_com('B');
  54.                         }
  55.                 }
  56.         }
  57. }
  58. /*----------------------接收程序---------------------*/
  59. #include <reg51.h>
  60. #include <intrins.h>
  61. #define uint unsigned int
  62. #define uchar unsigned char
  63. bit read_flag=0;
  64. sbit led=P2^5;
  65. void Delay1000ms()                //@11.0592MHz
  66. {
  67.         unsigned char i, j, k;

  68.         _nop_();
  69.         _nop_();
  70.         i = 43;
  71.         j = 6;
  72.         k = 203;
  73.         do
  74.         {
  75.                 do
  76.                 {
  77.                         while (--k);
  78.                 } while (--j);
  79.         } while (--i);
  80. }

  81. void init_serialcom()
  82. {
  83.         SCON=0X50;
  84.         TMOD=0X20;
  85.         TH1=0XFD;
  86.         TL1=0XFD;
  87.         TR1=1;
  88.         ES=1;
  89.         EA=1;
  90. }
  91. void serial()interrupt 4 using 3
  92. {
  93.         uchar ch;
  94.         if(RI)
  95.         {      
  96.                 ES=0;
  97.                 RI=0;
  98.                 ch=SBUF;
  99.                 switch(ch)
  100.                 {
  101.                         case 'A': led=0; break;
  102.                         case 'B': led=1; break;
  103.                 }
  104.                 ES=1;
  105.         }
  106. }      
  107. main()
  108. {
  109.         init_serialcom();
  110.         while(1)
  111.         {

  112.         }
  113. }
復制代碼

評分

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

查看全部評分

回復

使用道具 舉報

ID:695961 發表于 2021-9-17 19:44 | 顯示全部樓層
請問一下樓主,我如果想實現zigbee自組網功能,怎么使用一個單片機控制一個zigbee網絡呢?
回復

使用道具 舉報

ID:907024 發表于 2021-10-29 22:38 | 顯示全部樓層
你好樓主,問一下你這兩個zigbee在protues中能找到嗎
回復

使用道具 舉報

ID:907024 發表于 2021-11-6 13:31 | 顯示全部樓層
樓主你好,請問你這兩個芯片怎么連接單片機的呢,只需要tx和tx嗎?
回復

使用道具 舉報

ID:689710 發表于 2021-11-19 12:30 | 顯示全部樓層
qinkang189 發表于 2021-11-6 13:31
樓主你好,請問你這兩個芯片怎么連接單片機的呢,只需要tx和tx嗎?

是的
回復

使用道具 舉報

6#
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表