cr315 发表于 2022-11-11 10:43

国产ARM航顺的HK32F030C8,它的SPI好像有BUG!

我们公司有一款产品原先用的STM32F030C8,出货很久了,因某些原因改用了国产航顺的HK32F030C8。结果发现显示屏无显示,程序是一样的,于是接逻辑分析议看看。发现下面这段代码在STM上没问题,但在HK上有问题:
while((SPI1->SR & SPI_SR_BSY) > 0);My_GPIO_WriteLow(DisplayCS_P);SPI1->DR = 0x11;while((SPI1->SR & SPI_SR_BSY) > 0);My_GPIO_WriteHigh(DisplayCS_P);
HK32运行的结果:
可见DR刚写入马上读SPI_SR_BSY标志,结果是空闲!
试了几个方法,都不太理想,最后将while((SPI1->SR & SPI_SR_BSY) > 0);改为while((SPI1->SR & (SPI_SR_BSY | SPI_SR_FTLVL)) > 0);问题解决!
正确时序:
不知道各位有没有遇到过这个问题?最后是怎么解决的呢?

yeates333 发表于 2022-12-3 12:33

这个硬件spi也有问题的吗?            

xiaoyaodz 发表于 2022-12-3 14:11

是不是显示屏需要上拉电阻呢?            

AloneKaven 发表于 2023-1-3 16:54

硬件spi有问题吗?

caigang13 发表于 2023-1-5 08:24

软件没修改的吗?

jkl21 发表于 2023-2-4 11:41

这个spi有什么问题呢?            

bartonalfred 发表于 2023-2-4 13:07

没有遇到过,不行就模拟spi吧。

lzmm 发表于 2023-2-4 13:58

这个spi不使用dma,没有问题。

bartonalfred 发表于 2023-2-4 15:56

不是只有硬件IIC才有BUG吗?

albertaabbot 发表于 2023-2-4 23:19

HK32F030C8的性能还是不错的。

alxd 发表于 2023-2-13 13:18

是不是你的程序弄错了啊?我用它这个SPI没啥问题啊

Carina卡 发表于 2023-2-13 14:27

你这个bug是时序弄错了么?

Estelle1999 发表于 2023-2-13 15:25

估计是你逻辑没做好吧,或许是时钟配置有点问题

Charlene沙 发表于 2023-2-13 16:20

按理来说,航顺的这颗芯片的硬件SPI是没啥问题的

Betty996 发表于 2023-2-13 17:32

你用示波器抓的波形也是有问题的么?

Annie556 发表于 2023-2-14 06:16

你用ST的固件库试试吧,估计就没啥问题了

Belle1257 发表于 2023-2-14 08:22

应该不可能吧,它俩是基本完全兼容的了

B1lanche 发表于 2023-2-14 09:37

这种问题还是问问航顺的技术支持吧,看看他们咋说吧

Carmen7 发表于 2023-2-14 10:18

是不是不兼容啊?你得改改程序吧

Alina艾 发表于 2023-2-14 13:45

你用硬件SPI的话,时序是自动控制的嘞
页: [1]
查看完整版本: 国产ARM航顺的HK32F030C8,它的SPI好像有BUG!