[C] 纯文本查看 复制代码 // SPI1 用于访问 NRF24L01void SPI1_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; SPI_InitTypeDef SPI_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOE, ENABLE); // PORTA,E 时钟使能 RCC_APB1PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE); // SPI1 时钟使能 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7; // 分别对应 SCK、MISO、MOSI 三个引脚 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; // PA5/6/7复用推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure); // 初始化GPIOA GPIO_SetBits(GPIOA, GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7); // PA5/6/7上拉 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; // PE6,VS1053 复位 GPIO_Init(GPIOE, &GPIO_InitStructure); GPIO_ResetBits(GPIOE, GPIO_Pin_6); // 复位 VS1053 SPI_InitStructure.SPI_Direc tion = SPI_Direction_2Lines_FullDuplex; // SPI设置为双线双向全双工 SPI_InitStructure.SPI_Mode = SPI_Mode_Master; // SPI主机 SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b; // 发送接收8位帧结构 SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low; // 时钟悬空低 SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge; // 数据捕获于第1个时钟沿 SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; // NSS信号由软件控制 SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_16; // 定义波特率预分频的值:波特率预分频值为16 SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; // 数据传输从MSB位开始 SPI_InitStructure.SPI_CRCPolynomial = 7; // CRC值计算的多项式 SPI_Init(SPI1, &SPI_InitStructure); // 根据SPI_InitStruct中指定的参数初始化外设SPIx寄存器 SPI_Cmd(SPI1, ENABLE); // 使能SPI外设 SPI1_ReadWrite(0xFF); // 启动传输 }
[C] 纯文本查看 复制代码 SPI1_Init(); // 被 WIRELESS_Init 依赖 WIRELESS_Init(); oDebug("初始化:无线射频..."); if(WIRELESS_CheckDevice() == TRUE) oDebug("成功rn"); else oDebug("失败rn"); 始终报失败 |
|
相关推荐
2个回答
|
|
|
|
2020-6-9 09:12:38
评论
|
|
|
|
2020-6-9 09:46:23
评论
|
|
只有小组成员才能发言,加入小组>>
如何使用STM32+nrf24l01架构把有线USB设备无线化?
2458 浏览7 评论
请问能利用51单片机和nRF24L01模块实现实时语音无线传输吗?
2232 浏览5 评论
3001 浏览3 评论
2683 浏览8 评论
为什么ucosii上移植lwip后系统进入了HardFault_Handler?
2653 浏览4 评论
请教各位大咖:有没有接收频率32M左右的芯片推荐的?先感谢啦!
437浏览1评论
706浏览0评论
779浏览0评论
487浏览0评论
296浏览0评论