我正在使用一款SPI Flash芯片,通过阅读flash的芯片手册,得知时钟模式应该设置为模式0,即CPHA = 0, CPOL = 0(或是模式3, 1 ,1)。如下图所示:
然后,我就在HCG里面设置好了CPHA = 0, CPOL = 0,然后开始对FLASH进行操作。结果就是一直失败。
后来我在flash厂家的论坛上提问,并得知有可能是时钟模式设置的有问题,因此,我再次检查了HCG配置,以及生成的代码,均为模式0。
接着,我又重新将TMS570LS3137的数据手册中关于SPI时钟模式的部分看了一遍,其模式0的定义如下图所示:
显然,这两个芯片SPI的时钟模式0,是完全不一致的,因此这也是操作flash失败的原因。我将ARM的时钟模式改成了CPHA = 0, CPOL = 1, 可以成功对flash进行各种操作。
我又在网上搜了一些关于SPI时钟模式的说明,时钟模式0(CPHA = 0, CPOL = 1),均与TMS570的时钟模式0不一致,也就是说TMS570中SPI的时钟模式设置与通用的不一致。
所以,设计师在设计这款芯片时,将SPI时钟模式设置与通用的不一致,是有特殊的原因?还是说这是这个芯片的特色?
Susan Yang:
之前也有客户在E2E上问过,您参考一下吧
e2e.ti.com/…/598620
e2e.ti.com/…/774092
kevin Yang:
回复 Susan Yang:
好的,谢谢
whong zhao:
回复 kevin Yang:
管理员 论坛有问题 不能发表新的问题,,我只能在这里问你了,
ECMP.C跟ECMP_if在哪里下载啊 ,找了一圈没找到,就是跟tps65381的接口,,给个链接 谢谢
Susan Yang:
回复 whong zhao:
e2echina.ti.com/…/184300
请您按照上述帖子操作一下,看能否正常发帖