研究生
最后登录1970-1-1
在线时间 小时
注册时间2013-5-21
|
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);
首先这个时候 STM32是作为主机,那么MOSI配置成那个GPIO_Mode_AF_PP模式,可以理解。
但是MISO,不是应该按照 datesheet里面 作为GPIO_Mode_IN_FLOATING或者是GPIO_Mode_IPU吗?
而且,我把程序修改以后可以使用。
所以请问,这个怎么解释?
PS:因为我刚开始看了一遍但是感觉学的太水,所以在尝试看英文文档,从SPI看起的。所以有许多理解不对的地方。希望大家可以多多指教
|
|