打印
[STM32F3]

STM32 F303CB 与TLE5012B SPI通信问题

[复制链接]
723|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wyjie|  楼主 | 2021-9-11 21:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
自己做的一个小开发板 用STM32 F103CB 与TLE5012B  SPI通信能正常工作,但是 芯片换成STM32 F303CB   SPI-DR没有任何数据,求解STM32 F303 和103   spi  通信区别
下面是 F303的代码
I/O 定义
/**SPI1 GPIO Configuration   
    PA15     ------> SPI1_NSS
    PB3     ------> SPI1_SCK
    PB4     ------> SPI1_MISO
    PB5     ------> SPI1_MOSI
    */
                GPIO_InitStruct.Alternate = GPIO_AF5_SPI1;
    GPIO_InitStruct.Pin = GPIO_PIN_15;
    GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP ;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
   
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
                HAL_GPIO_WritePin(GPIOA,GPIO_PIN_15,GPIO_PIN_SET);
        /* MOSI */
        /* SPI1_CLK*/
          GPIO_InitStruct.Alternate = GPIO_AF5_SPI1;
    GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_5;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
  
    HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
                GPIO_InitStruct.Alternate = GPIO_AF5_SPI1;
                         /* MISO */
                GPIO_InitStruct.Pin =GPIO_PIN_4;
                GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
                GPIO_InitStruct.Pull = GPIO_NOPULL;
                HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);        
///////////////////////////////////////////////
SPI 配置
  /* SPI1 parameter configuration*/
  hspi1.Instance = SPI1;
  hspi1.Init.Mode = SPI_MODE_MASTER;
  hspi1.Init.Direction = SPI_DIRECTION_2LINES;
  hspi1.Init.DataSize = SPI_DATASIZE_16BIT;
  hspi1.Init.CLKPolarity = SPI_POLARITY_LOW;
  hspi1.Init.CLKPhase = SPI_PHASE_2EDGE;
  hspi1.Init.NSS = SPI_NSS_SOFT;
  hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_8;
  hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB;
  hspi1.Init.TIMode = SPI_TIMODE_DISABLE;
  hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
  hspi1.Init.CRCPolynomial = 7;
  hspi1.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
  hspi1.Init.NSSPMode = SPI_NSS_PULSE_DISABLE;
  if (HAL_SPI_Init(&hspi1) != HAL_OK)
  {
    Error_Handler();
  }
  /* USER CODE BEGIN SPI1_Init 2 */
               
        __HAL_SPI_ENABLE(&hspi1);
  /* USER CODE END SPI1_Init 2 */

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

927

主题

12706

帖子

5

粉丝