stm32f4的nrf模块程序问题

2019-07-20 22:38发布

void NRF24L01_Init(void)
{  
    GPIO_InitTypeDef  GPIO_InitStructure;


    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB|RCC_AHB1Periph_GPIOG, ENABLE);//使能GPIOB,G时钟
   
  //GPIOB14初始化设置:推挽输出
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通输出模式
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
  GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化PB14
   
    //GPIOG6,7推挽输出
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_7;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通输出模式
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
  GPIO_Init(GPIOG, &GPIO_InitStructure);//初始化PG6,7
   
    //GPIOG.8上拉输入
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//输入
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
  GPIO_Init(GPIOG, &GPIO_InitStructure);//初始化PG8

  GPIO_SetBits(GPIOB,GPIO_Pin_14);//PB14输出1,防止SPI FLASH干扰NRF的通信
  
     SPI1_Init();            //初始化SPI1  
   
    NRF24L01_SPI_Init();//针对NRF的特点修改SPI的设置

    NRF24L01_CE=0;             //使能24L01
    NRF24L01_CSN=1;            //SPI片选取消                  
}
//检测24L01是否存在
//返回值:0,成功;1,失败
      

为什么要初始化pb14引脚?它有什么用吗

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
yugeeee
1楼-- · 2019-07-20 23:10
 精彩回答 2  元偷偷看……
xuande
2楼-- · 2019-07-21 00:02

pb14硬件接到哪里了?



15623052920
3楼-- · 2019-07-21 01:39
看看是不是其他SPI片子的使能端
yugeeee
4楼-- · 2019-07-21 02:28
xuande 发表于 2016-4-24 14:58
pb14硬件接到哪里了?

是w25q128的片选。。。。。。了解了,谢谢
xuande
5楼-- · 2019-07-21 07:29
 精彩回答 2  元偷偷看……
路世英
6楼-- · 2019-07-21 08:46
PB14接在哪里?

一周热门 更多>