F4的板子 关于SPI的原来用的PB3-PB5,现在想用PA5-7的 在SPI_INIT修改了 以下代码(//表示源代码 )
RCC_APB2PeriphClockCmd(RCC_AHB1Periph_GPIOA|RCC_AHB1Periph_GPIOB|RCC_AHB1Periph_GPIOC, ENABLE);//ê1ÄüGPIOA/B/cê±Öó
// RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);//ê1ÄüGPIOBê±Öó
// RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);//ê1ÄüGPIOBê±Öó
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);//ê1ÄüSPI1ê±Öó
// GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;//PB3~5
// GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//
// 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);//3õê¼»ˉ
//
// GPIO_PinAFConfig(GPIOB,GPIO_PinSource3,GPIO_AF_SPI1); //PB3¸′óÃÎa SPI1
// GPIO_PinAFConfig(GPIOB,GPIO_PinSource4,GPIO_AF_SPI1); //PB4¸′óÃÎa SPI1
// GPIO_PinAFConfig(GPIOB,GPIO_PinSource5,GPIO_AF_SPI1); //PB5¸′óÃÎa SPI1
//GPIOFA7,5,63õê¼»ˉéèÖÃ
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;//PA5~7¸′óÃ1|Äüêä3ö
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//¸′óÃ1|Äü
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//íÆíìêä3ö
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//éÏà-
GPIO_Init(GPIOA, &GPIO_InitStructure);//3õê¼»ˉ
//¸′óÃÅäÖÃ
GPIO_PinAFConfig(GPIOA,GPIO_PinSource5,GPIO_AF_SPI1); //PA5¸′óÃÎa SPI1
GPIO_PinAFConfig(GPIOA,GPIO_PinSource6,GPIO_AF_SPI1); //PA6¸′óÃÎa SPI1
GPIO_PinAFConfig(GPIOA,GPIO_PinSource7,GPIO_AF_SPI1); //PA7¸′óÃÎa SPI1
主程序
while(1)
{
if(W25QXX_ReadID()==W25Q128)
{
LED0=!LED0; //DS0éá˸
delay_ms(1000);
}
else
{
LED0=!LED0;
delay_ms(100);
}
操作源代码可以进入if中,修改到PA5以后就直接else,应该是io配置有问题 ,没玩过F4 求大神看下被
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
原来的PB口时候 不用连接 就可以进入主函数的if判断
一周热门 更多>