stm32f4 发送一个字节 示波器看总是3个字节 很奇怪

[复制链接]
967|2
 楼主| DHZFSYJ 发表于 2020-6-23 10:59 | 显示全部楼层 |阅读模式
配置SPI接口全双工  发送一个字节  示波器看实际发出了2-3个字节很奇怪
  1. void MX_SPI1_Init(void)
  2. {

  3.   hspi1.Instance = SPI1;
  4.   hspi1.Init.Mode = SPI_MODE_MASTER;
  5.   hspi1.Init.Direction = SPI_DIRECTION_2LINES;
  6.   hspi1.Init.DataSize = SPI_DATASIZE_8BIT;
  7.   hspi1.Init.CLKPolarity = SPI_POLARITY_LOW;
  8.   hspi1.Init.CLKPhase = SPI_PHASE_2EDGE;
  9.   hspi1.Init.NSS = SPI_NSS_SOFT;
  10.   hspi1.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
  11.   hspi1.Init.FirstBit = SPI_FIRSTBIT_MSB;
  12.   hspi1.Init.TIMode = SPI_TIMODE_DISABLE;
  13.   hspi1.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
  14.   hspi1.Init.CRCPolynomial = 10;
  15.   if (HAL_SPI_Init(&hspi1) != HAL_OK)
  16.   {
  17.     Error_Handler();
  18.   }

  19. }

addr= 0x0f;
HAL_SPI_Transmit(&hspi1,&addr,1,1000);   //发送一个字节0x0f
 楼主| DHZFSYJ 发表于 2020-6-23 11:03 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
苏山人家 发表于 2020-6-23 13:36 | 显示全部楼层
依稀记得貌似别的地方有人写过,
stm32f4 spi有坑,
库默认发送u16
需要修改为SPI->DR = (uint8_t*)val
这样强制弄一个字节赋值貌似能规避。
你验证一下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

18

主题

56

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部