金牌会员
 
- 积分
- 2100
- 金钱
- 2100
- 注册时间
- 2013-11-27
- 在线时间
- 518 小时
|
5金钱
这是时序,我配置的spi如下。
gpio_cfg((uint32_t)FLASH_CS_PORT, FLASH_CS_PIN, GPIO_Mode_Out_PP);
gpio_cfg((uint32_t)FLASH_CLK_PORT, FLASH_CLK_PIN, GPIO_Mode_AF_PP);
gpio_cfg((uint32_t)FLASH_MISO_PORT, FLASH_MISO_PIN, GPIO_Mode_AF_IF);
gpio_cfg((uint32_t)FLASH_MOSI_PORT, FLASH_MOSI_PIN, GPIO_Mode_AF_PP);
gpio_cfg((uint32_t)FLASH_WP_PORT, FLASH_WP_PIN, GPIO_Mode_Out_PP);
GPIO_PinAFConfig(FLASH_CLK_PORT, FLASH_CLK_PIN_SOURCE, GPIO_AF_SPI2);
GPIO_PinAFConfig(FLASH_MISO_PORT, FLASH_MISO_PIN_SOURCE, GPIO_AF_SPI2);
GPIO_PinAFConfig(FLASH_MOSI_PORT, FLASH_MOSI_PIN_SOURCE, GPIO_AF_SPI2);
gpio_cfg((uint32_t)NRF905_TXEN_PORT, NRF905_TXEN_PIN, GPIO_Mode_Out_PP);
gpio_cfg((uint32_t)NRF905_TRXEN_PORT, NRF905_TRXEN_PIN, GPIO_Mode_Out_PP);
gpio_cfg((uint32_t)NRF905_PWR_PORT, NRF905_PWR_PIN, GPIO_Mode_Out_PP);
FLASH_CS_DISABLE;
SPI_InitStruct.SPI_Direction = SPI_Direction_2Lines_FullDuplex;
SPI_InitStruct.SPI_Mode = SPI_Mode_Master;
SPI_InitStruct.SPI_CPHA =SPI_CPHA_1Edge;
SPI_InitStruct.SPI_CPOL = SPI_CPOL_Low;
SPI_InitStruct.SPI_DataSize = SPI_DataSize_8b;
SPI_InitStruct.SPI_FirstBit = SPI_FirstBit_MSB;
SPI_InitStruct.SPI_NSS = SPI_NSS_Soft;
SPI_InitStruct.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_32;
SPI_InitStruct.SPI_CRCPolynomial=7;
SPI_Init(SPI2, &SPI_InitStruct);
SPI_Cmd(SPI2, ENABLE);
为什么不对啊?在读写之前我把芯片设置为stby模式了,每次读写命令 都是用片选来切换的,还有哪里注意的问题。有没有人用过啊。时钟频率最高是10M 我都配置了1M以下了还是不能用。
|
|