你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F429 无法读SPI FLASH SST26VF064BT-104I/SM Device ID

[复制链接]
xhzheng 提问时间:2016-8-3 16:55 /
求高手解答!!
实际读取数据为0XFF,即没有读到;

按照SST26VF064B规格部分,
CE# low之后,发送0x9F, 然后就可以读取到manufacturer, device type, and Device ID;

main.c()中读取部分:
uint8_t Data1[1] = {0x9F};
uint8_t Rxdata[3];

HAL_GPIO_WritePin(GPIOG,GPIO_PIN_8,GPIO_PIN_RESET);
HAL_SPI_Transmit(&hspi6,Data1,1,1000);
HAL_SPI_Receive(&hspi6,Rxdata,3,1000);
HAL_GPIO_WritePin(GPIOG,GPIO_PIN_8,GPIO_PIN_SET);

QQ拼音截图未命名.jpg
收藏 1 评论3 发布时间:2016-8-3 16:55

举报

3个回答
xhzheng 最优答案 回答时间:2016-9-16 08:14:49
eliucheng-11224 发表于 2016-9-6 11:58
怎么样?解决了没有?

OK了,HW设计DATA IN/OUT反调了;

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

xhzheng 回答时间:2016-8-3 17:10:52
void MX_SPI6_Init(void)
{

  hspi6.Instance = SPI6;
  hspi6.Init.Mode = SPI_MODE_MASTER;
  hspi6.Init.Direction = SPI_DIRECTION_2LINES;
  hspi6.Init.DataSize = SPI_DATASIZE_8BIT;
  hspi6.Init.CLKPolarity = SPI_POLARITY_HIGH;
  hspi6.Init.CLKPhase = SPI_PHASE_2EDGE;
  hspi6.Init.NSS = SPI_NSS_SOFT;
  hspi6.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
  hspi6.Init.FirstBit = SPI_FIRSTBIT_MSB;
  hspi6.Init.TIMode = SPI_TIMODE_DISABLE;
  hspi6.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
  hspi6.Init.CRCPolynomial = 10;
  if (HAL_SPI_Init(&hspi6) != HAL_OK)
  {
    Error_Handler();
  }

}
eliucheng-11224 回答时间:2016-9-6 11:58:42
怎么样?解决了没有?
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版