//PB11/WP PB12/SPI2NSS PB13/SPI2CLK PB14/SPI2MISO PB15/SPI2MOSI
void SPIInit(void)
{
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO,ENABLE);
GPIO_InitTypeDef GPIO_InitStructure;
//PB14 (MISO)浮空输入
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_14;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;
GPIO_Init(GPIOB,&GPIO_InitStructure);
//PB15 MOSI PB13 SCK 复用推挽输出(外设总线用)
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_13|GPIO_Pin_15;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOB,&GPIO_InitStructure);
//PB12 NSS,PB11 WP写保护普通推挽输出 本实验用软件控制NSS(主从设备的选择控制端)
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_12 | GPIO_Pin_11;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOB,&GPIO_InitStructure);
CE_High();//PB12/NSS 失能
|