This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TM4C1290NCZAD:Freescale SPI 帧格式、SP0 =1/SPH =1设置

Guru**** 2511985 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/888229/tm4c1290nczad-freescale-spi-frame-format-and-sp0-1-sph-1-setting

器件型号:TM4C1290NCZAD

大家好、团队、

我收到了与以下主题相关的其他查询。

https://e2e.ti.com/support/microcontrollers/other/f/908/t/888076

 

尽管我们的客户将 SSICR0.FRFto 0x0 (Freescale SPI 帧格式)配置为0x0、但客户注意到以下说明。

 

数据表17.3.7.2部分

“如果在高级/双/四 SSI 模式下运行,则必须将 SP0和 SPH 位编程为0。”

 

这意味着、如果客户将 SSICR0.FRF设 为0x0 (Freescale SPI 帧格式)、

  1. SP0和 SPH 位应编程为0。”
  2. 或者、客户应设置 SSICR1.MODE = 0x0 (传统 SSI 模式)

是这样吗?

 

如果客户设置了以下设置、您是否可以认为会出现意外问题?

===================

SSICR0.FRFto 0x0 (Freescale SPI 帧格式)、SP0 =1和 SPH =1

 ===================

如果您愿意分享您对此的建议/意见、我们不胜感激。

 此致、Miyazaki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    [引用用户="Takayuki Miyazaki"]

    这意味着、如果客户将 SSICR0.FRF设 为0x0 (Freescale SPI 帧格式)、

    1. SP0和 SPH 位应编程为0。”
    2. 或者、客户应设置 SSICR1.MODE = 0x0 (传统 SSI 模式)

    是这样吗?

    [/报价]

     如果要使用 QSSI 模式、请执行以下操作:

     SP0/SPH 应该为0/0。

     MODE 应为0x2 (四路 SSI 模式)

    [引用用户="Takayuki Miyazaki"]

    如果客户设置了以下设置、您是否可以认为会出现意外问题?

    ===================

    SSICR0.FRFto 0x0 (Freescale SPI 帧格式)、SP0 =1和 SPH =1

    [/报价]

     正确、如果要使用 QSSI 模式、则不要将 SP0/SPH 设置为1/1或意外结果。

      

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Charles、

    感谢您的澄清,很抱歉让您感到困惑。 我的写操作似乎不正确。 客户按如下方式配置 SSICR0/SSICR1。

    我的意思是,我们的客户在 MODE = 0x3 (8位数据包的高级 SSI 模式)下设置“SPH = 1和 SPO = 1”。

    您的意思是、在该设置下可能会出现意外问题。 是这样吗?

     

    我注意到以下 description.in 数据表(第17.3.7.6节)。

    “注:此飞思卡尔 SPI 帧格式配置仅在传统 SSI 工作模式下工作时可用。”

    这意味着,客户要使用“SPO=1和 SPH=1时的飞思卡尔 SPI 帧格式”,客户应将模式设置为“传统 SSI 模式”。

    或者,如果客户希望使用“SPO = 0和 SPH = 0时的飞思卡尔 SPI 帧格式”,则客户可以将模式设置为“高级/双/四 SSI 模式”。 。

    是这样吗?

     

    ====

    SSICR0 = 0x000002C7

    SCR–0x02 (20MHz)

    SPH = 1

    SPO = 1

    FRF = 0x0 (Freescale SPI 帧)

    DSS = 0x7 (8位数据)

     

    SSICR1 = 0x0000 01C2

    EOM = 0

    FSSHLDFRM = 0

    HSCLKEN = 0?(使用输入时钟)

    DIR = 1 (RX 读取方向)

    MODE = 0x3 (8位数据包的高级 SSI 模式)

    MS =0 (QSSI 被配置为主机)

    SSE 1 (QSSI 操作启用)

    LBM 0 (正常串行端口运行被启用。)

    ====

     

    此致、Miyazaki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Takayuki Miyazaki"]

    我的意思是,我们的客户在 MODE = 0x3 (8位数据包的高级 SSI 模式)下设置“SPH = 1和 SPO = 1”。

    您的意思是、在该设置下可能会出现意外问题。 是这样吗?

     

    [/报价]

    您好、Miyazaki-San、

     是的、QSSI 仅支持 SPH=0和 SPO =0。 任何其他 SPH/SpO 组合都将不起作用、并产生意外结果。  

    [引用用户="Takayuki Miyazaki"]

    这意味着,客户要使用“SPO=1和 SPH=1时的飞思卡尔 SPI 帧格式”,客户应将模式设置为“传统 SSI 模式”。

    或者,如果客户希望使用“SPO = 0和 SPH = 0时的飞思卡尔 SPI 帧格式”,则客户可以将模式设置为“高级/双/四 SSI 模式”。 。

    是这样吗?

    [/报价]

    您的理解是正确的。 如果客户希望使用 SPO = 0、SPH = 0、则使用传统 SSI 模式。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Charles、

    请快速注意、这可能会增加 MCU SPI 模块的灵活性。   (我们过去成功地使用了这种方法-尽管我们找不到确切的项目文件-也许这张海报会有所帮助。)

    部署"快速、简单的逻辑门系列"(可能)可实现所需的"精确"SPI 模式。   例如、MCU 可以订购为" SPO = 0和 SPH = 0时的飞思卡尔 SPI 帧格式"(与外部 SPI 器件的极性和/或边沿要求不匹配)、但由于外部逻辑(选择性)信号修改、可以成功进行 SPI 传输。   请注意、(两者)信号电平-和信号边沿可被修改、这样、"正常(不兼容) SPI 格式之间的冲突得以解决!"

    这在"单个 SPI 主器件"下效果最佳(最简单)-因此 SPI 时钟可以保持"单向"。   当 SPI 数据沿"两个不同(幸运的是)的独立路径移动"时、数据修改[边缘或级别"翻转"](通常)将成功。    

    预计传播和其他延迟-这种"灵活性"可能需要降低 SPI 时钟速率...

    您是否知道、"为什么"高级/双/四通道 SPI 模式"仅限于"SPO = SPH = 0"?   这是 MCU 限制还是 ... "高级/双/四通道"SPI 器件的"需求"?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 CB1、

      [引用 USER="CB1_MOBIS]*作为一个关注点-您可能知道、"为什么'Advanced/Bi/Quad SPI Mode'被限制在"SPO = SPH = 0"?   这是 MCU 限制还是 ... "高级/双/四通道"SPI 器件的"需求"?

     我倾向于认为这是 MCU 限制。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Charles Tsaa"]

    您好、Miyazaki-San、

     是的、QSSI 仅支持 SPH=0和 SPO =0。 任何其他 SPH/SpO 组合都将不起作用、并产生意外结果。  

    [/报价]

    您好、Charles、

    您能否 详细说明发生了什么类型的意外结果?

    写入错误、读取错误、硬件损坏・・・・

    让我知道 高级模式是如何工作的。 我在数据表中找不到详细信息。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    午夜、空办公室问候、Charles、

    根据我们团队可能提出的 SPI 灵活性设计建议(受到启发)、"粗暴地踢脚"- CB1必须选择:

    • 使用可调、加载、提升至头部水平... 手枪
    • 或等待"致命病毒"...  以完成作业

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

     下面是一个 QSSI 项目示例。 QSSI 章节中有一个完整的章节介绍 高级、双 SSI 和四 SSI 功能。 通常情况下、数据表将介绍支持的功能及其操作方法。 数据表不会描述使用不支持的配置将发生的情况。 如果您使用 SPO/SPH=1/1、我认为不会损坏硬件、但数据可能不会按预期在极性/相位上输出。  e2e.ti.com/.../qssi.zip