找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

stm32野火的nrf24l01無線接收2.4G

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
這是野火的無線接收,希望共同學(xué)習(xí)

所有資料51hei提供下載:
16、無線傳輸-2.4G.rar (594.4 KB, 下載次數(shù): 156)


stm32單片機(jī)源程序如下:
  1. /**
  2.   ******************************************************************************
  3.   * @file    main.c
  4.   * @author  fire
  5.   * @version V1.0
  6.   * @date    2013-xx-xx
  7.   * @brief   2.4g無線模塊/nrf24l01+/master 測試
  8.   ******************************************************************************
  9.   * @attention
  10.   *
  11.   * 實(shí)驗(yàn)平臺:野火 iSO STM32 開發(fā)板
  12.   *
  13.   ******************************************************************************
  14.   */
  15.   
  16. #include "stm32f10x.h"
  17. #include "bsp_usart1.h"
  18. #include "bsp_spi_nrf.h"

  19. /*
  20. * PA2  -  PG8   ce使能
  21. * PA1  -  PG15  cs片選
  22. * PA3  -  PC4   irq中斷
  23. */
  24. u8 status;        //用于判斷接收/發(fā)送狀態(tài)
  25. u8 txbuf[4]={0,1,2,3};         //發(fā)送緩沖
  26. u8 rxbuf[4];                         //接收緩沖
  27. int i=0;

  28. /**
  29.   * @brief  主函數(shù)
  30.   * @param  無
  31.   * @retval 無
  32.   */
  33. int main(void)                  
  34. {   
  35.   SPI_NRF_Init();

  36.   /* 串口1初始化 */
  37.   USART1_Config();

  38.   printf("\r\n 這是一個(gè) NRF24L01 無線傳輸實(shí)驗(yàn) \r\n");
  39.   printf("\r\n 這是無線傳輸 主機(jī)端 的反饋信息\r\n");
  40.   printf("\r\n   正在檢測NRF與MCU是否正常連接。。。\r\n");

  41.   /*檢測NRF模塊與MCU的連接*/
  42.   status = NRF_Check();

  43.   /*判斷連接狀態(tài)*/  
  44.   if(status == SUCCESS)          
  45.     printf("\r\n      NRF與MCU連接成功!\r\n");  
  46.   else          
  47.     printf("\r\n  NRF與MCU連接失敗,請重新檢查接線。\r\n");

  48.   while(1)
  49.   {
  50.     printf("\r\n 主機(jī)端 進(jìn)入自應(yīng)答發(fā)送模式\r\n");
  51.     NRF_TX_Mode();

  52.     /*開始發(fā)送數(shù)據(jù)*/       
  53.     status = NRF_Tx_Dat(txbuf);          

  54.     /*判斷發(fā)送狀態(tài)*/
  55.     switch(status)
  56.     {
  57.       case MAX_RT:
  58.         printf("\r\n 主機(jī)端 沒接收到應(yīng)答信號,發(fā)送次數(shù)超過限定值,發(fā)送失敗。 \r\n");
  59.       break;

  60.       case ERROR:
  61.         printf("\r\n 未知原因?qū)е掳l(fā)送失敗。 \r\n");
  62.       break;

  63.       case TX_DS:
  64.         printf("\r\n 主機(jī)端 接收到 從機(jī)端 的應(yīng)答信號,發(fā)送成功! \r\n");                        
  65.       break;                                                                 
  66.     }                                  

  67.     printf("\r\n 主機(jī)端 進(jìn)入接收模式。 \r\n");       
  68.     NRF_RX_Mode();

  69.     /*等待接收數(shù)據(jù)*/
  70.     status = NRF_Rx_Dat(rxbuf);

  71.     /*判斷接收狀態(tài)*/
  72.     switch(status)
  73.     {
  74.       case RX_DR:
  75.       for(i=0;i<4;i++)
  76.       {                                       
  77.         printf("\r\n 主機(jī)端 接收到 從機(jī)端 發(fā)送的數(shù)據(jù)為:%d \r\n",rxbuf[i]);
  78.         txbuf[i] =rxbuf[i];
  79.       }
  80.       break;

  81.       case ERROR:
  82.         printf("\r\n 主機(jī)端 接收出錯(cuò)。   \r\n");
  83.       break;                 
  84.     }
  85.   }// while(1)
  86. }
  87. /*********************************************END OF FILE**********************/
復(fù)制代碼




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

使用道具 舉報(bào)

沙發(fā)
ID:523269 發(fā)表于 2019-4-27 21:56 | 只看該作者
找了很久,下載看看,謝謝了
回復(fù)

使用道具 舉報(bào)

板凳
ID:103937 發(fā)表于 2019-5-2 16:35 | 只看該作者
學(xué)習(xí)一下,下載看看^^^^^^^^^^^^^^^^^^^^^^^^^^……………………
回復(fù)

使用道具 舉報(bào)

地板
ID:846113 發(fā)表于 2021-7-28 16:08 | 只看該作者
找了很久,下載看看,謝謝了
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

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