野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 22905|回复: 1

SPI配置问题

[复制链接]
发表于 2013-9-5 09:52:31 | 显示全部楼层 |阅读模式
1.
/*!< SPI_FLASH_SPI_CS_GPIO, SPI_FLASH_SPI_MOSI_GPIO,        SPI_FLASH_SPI_MISO_GPIO, SPI_FLASH_SPI_DETECT_GPIO
       and SPI_FLASH_SPI_SCK_GPIO Periph clock enable */
//RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOD, ENABLE);  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

因为我没有看到内部有用到 GPIO D 口,所以,我把这个屏蔽了,屏蔽以后可以使用。
那么D口的作用是什么?是注释里面的这个吗? “SPI_FLASH_SPI_DETECT_GPIO ”?
2. /*!< Configure SPI_FLASH_SPI pins: MISO */ // GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
// GPIO_Init(GPIOA, &GPIO_InitStructure);

  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
  GPIO_Init(GPIOA, &GPIO_InitStructure);

QQ截图20130903215825.png
首先这个时候 STM32是作为主机,那么MOSI配置成那个GPIO_Mode_AF_PP模式,可以理解。
但是MISO,不是应该按照 datesheet里面  作为GPIO_Mode_IN_FLOATING或者是GPIO_Mode_IPU吗?
而且,我把程序修改以后可以使用。

所以请问,这个怎么解释?
PS:因为我刚开始看了一遍但是感觉学的太水,所以在尝试看英文文档,从SPI看起的。所以有许多理解不对的地方。希望大家可以多多指教



回复

使用道具 举报

发表于 2013-9-5 13:13:10 | 显示全部楼层
是的,MOSI应配置为GPIO_Mode_AF_PP,而 MISO应配置为GPIO_Mode_IN_FLOATING
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-21 02:11 , Processed in 0.053909 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表