rt-thread icon indicating copy to clipboard operation
rt-thread copied to clipboard

[components][SPI][spi-bit-ops]修复可能的异常操作

Open wdfk-prog opened this issue 1 year ago • 9 comments

拉取/合并请求描述:(PR description)

[

为什么提交这份PR (why to submit this PR)

  1. [components][SPI][spi-bit-ops]修复可能的异常操作]
  2. [components][drivers][spi]重命名spi.h为spi_core.h
  3. [STM32][SPI]根据频率计算收发超时时间
  4. [STM32][SPI]移除内部编写的延时函数使用统一延时接口

你的解决方案是什么 (what is your solution)

请提供验证的bsp和config (provide the config and bsp)

  • BSP: STM32H750
  • .config: https://github.com/wdfk-prog/ART-PI/commit/c8a69a5d94b438450e644bef68817b4636f3571b
  • action:

spi.h 修改为spi_core.h 防止bsp中包含同样名称.h导致编译异常

[[STM32][SPI]根据频率计算收发超时时间] 编写测试 W25Q128 FLASH正常 读取

模拟SPI编译通过,未进行实际测试;

]

当前拉取/合并请求的状态 Intent for your PR

必须选择一项 Choose one (Mandatory):

  • [ ] 本拉取/合并请求是一个草稿版本 This PR is for a code-review and is intended to get feedback
  • [x] 本拉取/合并请求是一个成熟版本 This PR is mature, and ready to be integrated into the repo

代码质量 Code Quality:

我在这个拉取/合并请求中已经考虑了 As part of this pull request, I've considered the following:

  • [x] 已经仔细查看过代码改动的对比 Already check the difference between PR and old code
  • [x] 代码风格正确,包括缩进空格,命名及其他风格 Style guide is adhered to, including spacing, naming and other styles
  • [x] 没有垃圾代码,代码尽量精简,不包含#if 0代码,不包含已经被注释了的代码 All redundant code is removed and cleaned up
  • [x] 所有变更均有原因及合理的,并且不会影响到其他软件组件代码或BSP All modifications are justified and not affect other components or BSP
  • [x] 对难懂代码均提供对应的注释 I've commented appropriately where code is tricky
  • [x] 代码是高质量的 Code in this PR is of high quality
  • [x] 已经使用formatting 等源码格式化工具确保格式符合RT-Thread代码规范 This PR complies with RT-Thread code specification

wdfk-prog avatar Jun 30 '24 13:06 wdfk-prog

我觉得1、2commit没有问题,3、4commit需要再讨论一下。我先把1、2commit cherry-pick到仓库了 https://github.com/RT-Thread/rt-thread/pull/9177

mysterywolf avatar Jul 11 '24 16:07 mysterywolf

我觉得1、2commit没有问题,3、4commit需要再讨论一下。我先把1、2commit cherry-pick到仓库了 #9177

行;第3个commit的话,最少也得把这个头文件宏改掉,不然肯定有问题

#ifndef __SPI_H__
#define __SPI_H__
#endif

wdfk-prog avatar Jul 12 '24 02:07 wdfk-prog

我觉得1、2commit没有问题,3、4commit需要再讨论一下。我先把1、2commit cherry-pick到仓库了 #9177

第4个的话,应该来说SPI没有啥速率规定;现在仅用了一个常规条件下能够接收的超时时间; 换成计算的方式会更好

wdfk-prog avatar Jul 12 '24 03:07 wdfk-prog

第3个commit的话,最少也得把这个头文件宏改掉,不然肯定有问题

https://github.com/RT-Thread/rt-thread/pull/9301

mysterywolf avatar Aug 13 '24 08:08 mysterywolf

https://github.com/RT-Thread/rt-thread/pull/9420

mysterywolf avatar Sep 13 '24 21:09 mysterywolf

还剩下最后一个commit没有合入 [STM32][SPI]根据频率计算收发超时时间 是否直接让用户通过config配置好超时时间更加简单粗暴而且十分明了呢?

mysterywolf avatar Oct 05 '24 05:10 mysterywolf

还剩下最后一个commit没有合入 [STM32][SPI]根据频率计算收发超时时间 是否直接让用户通过config配置好超时时间更加简单粗暴而且十分明了呢?

  • 用户咋知道多长超时是合理的呢?合理的话还是得计算.

wdfk-prog avatar Oct 06 '24 01:10 wdfk-prog