找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于NRF24L01的51單片機(jī)防丟器設(shè)計(jì),含所有詳細(xì)資料及代碼注釋

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主



單片機(jī)源程序如下:
  1. #include "nRF24L01.h"                   //包含頭文件
  2. #include "def.h"                           //包含頭文件

  3. void Delay_1(unsigned int s)   //延時(shí)函數(shù)
  4. {
  5.         unsigned int i;
  6.         for(i=0; i<s; i++);
  7.         for(i=0; i<s; i++);
  8. }
  9. void delay(unsigned int z)                //延時(shí)函數(shù)
  10. {
  11.         unsigned int x,y;
  12.         for(x=z;x>0;x--)
  13.                 for(y=110;y>0;y--);
  14. }


  15. void main(void)                                          //主函數(shù)
  16. {
  17.         unsigned int flag;                          //定義變量
  18.         unsigned char t  =0,flag_1;
  19.         unsigned char TxBuf[20]={0};         // 數(shù)據(jù)暫存數(shù)組
  20.         unsigned char RxBuf[20]={0};       
  21.        
  22. a:  init_io() ;                                 //初始化
  23.         flag_1=0;
  24.         flag=0;                                         //變量清零
  25.        
  26.         TxBuf[0]='c';                         //發(fā)送數(shù)據(jù)c
  27.        
  28.        
  29.         while(1)                                 //進(jìn)入循環(huán)
  30.         {
  31.                 //SetRX_Mode();
  32.                 if(KEY1 ==0 )                  //按下按鍵
  33.                 {
  34.                         TxBuf[0]=0;
  35.                         TxBuf[1]=1;                 //發(fā)送01
  36.                 }
  37.                 else                                  //按鍵沒有按下
  38.                 {
  39.                         TxBuf[0]=1;
  40.                         TxBuf[1]=1;                 //發(fā)送11
  41.                 }
  42.                 nRF24L01_TxPacket(TxBuf);        // 發(fā)送緩沖區(qū)數(shù)據(jù)
  43.                 SetRX_Mode();                                //發(fā)送完數(shù)據(jù)后設(shè)置成接收模式

  44.                 if(nRF24L01_RxPacket(RxBuf)) //如果接收緩沖區(qū)有數(shù)據(jù)
  45.                 {
  46.                         nRF24L01_TxPacket(TxBuf);        // 發(fā)送緩沖區(qū)數(shù)據(jù)                               
  47.                         flag=0;
  48.                         flag_1=0;                                        //變量清零
  49.                 }
  50.                 else                                                        //接收緩沖區(qū)無數(shù)據(jù),也就是沒有接收到數(shù)據(jù)
  51.                 {
  52.                         flag++;                                                //計(jì)時(shí)變量加
  53.                         if(flag>=80)                                //加到80
  54.                         flag_1=1;                                        //變量置1
  55.                         delay(5);                                        //計(jì)時(shí)分辨率是5ms,計(jì)80次就是80*5=400ms
  56.                 }
  57.                 if(flag_1)                                                //如果變量為1,計(jì)時(shí)400ms,開啟報(bào)警
  58.                 for(t=0;t<20;t++)                                //for循環(huán)控制燈和蜂鳴器報(bào)警
  59.                 {
  60.                         LED2=~LED2;
  61.                         LED1=~LED1;                                        //取反,達(dá)到閃爍的效果
  62.                         delay(80);                                        //延時(shí)80ms
  63.                         if(t==19)                                        //t加到19時(shí)
  64.                         {
  65.                                 goto a;                                        //回到while前面的a:
  66.                                 flag_1=0;
  67.                                 flag=0;
  68.                         }
  69.                 }
  70.         }
  71. }
復(fù)制代碼

全部資料51hei下載地址:
單片機(jī)防丟程序原理圖.rar (741.38 KB, 下載次數(shù): 64)

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評分

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

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表