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.

[参考译文] 编译器/TDA2EVM5777:无法从 QSPI 读取数据

Guru**** 2595805 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/647132/compiler-tda2evm5777-unable-to-read-data-from-qspi

器件型号:TDA2EVM5777

工具/软件:TI C/C++编译器

您好!

我在 tda2x EVM 板上工作、我想从 QSPI 读取/写入数据。 因此、我 使用 了 System_qspiWriteSector 和 System_qspiReadSector util 的 API。

我想从 QSPI 读取三个文本文件。 为此,我必须将3个文件写入 QSPI。 要在 QSPI 中写入文件、我已执行以下步骤、

-选择3个偏移地址(20*1024*1024、24*1024*1024、28*1024*1024),因为文件大小不大于4MB

-首先调用 System_qspiInit API。

-我使用 System_qspiWriteSector API 在 QSPI 中编写了3个文件  

-我正在使用 System_qspiReadSector API 读取3个文件

有关更多详细信息、请参阅插入文件 QSPI_Read_Write.txt

 我有以下一些问题:

1) 1)使用此代码实施时、我没有从3个文件中获取正确的数据。

2)在只读取单个文件时,我获得了正确的数据,但仍然缺少文件的第一个字符。  

3) 3)它是否与偏移地址相关?

请优先回复此主题、因为我们对此任务有一定的紧迫感。

谢谢、此致、

克里波尔

e2e.ti.com/.../QSPI_5F00_Read_5F00_Write.txt

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

    您好!

    您能告诉我1和2之间的调用序列有何差异吗?

    您正在读取大小为4 * 1024 * 1024的文件、但要向写入扇区传递10 * 1024 * 1024。

    另外、对于第一个字节问题、是移位数据还是仅移动第一个字节是错误的?

    您需要在写入 QSPI 之前擦除这些扇区、请检查您是否正在执行此操作。

    此致、
    Prasad

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

    Prasad、您好!

    感谢你的答复。

    现在、我要写入大小为4 * 1024 * 1024的文件、并读取大小相同的文件。

    首先、我根据随附的代码编写了3个文件。
    当我通过调用 System_qspiReadSector() API 只读取左侧 LUT 文件时,然后调用 Algorithm_Convert_TO_Array()函数。
    在本例中、我获得了正确的数据。 但在读取3个文件时,我没有从3个文件中获得正确的数据。
    对于读取操作,我不调用 System_qspiInit() API。

    System_qspiWriteSector API 在内部调用 System_qspiEraseSector API。 因此、我认为在写入文件之前不需要擦除扇区。

    此致、

    克里波尔

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

    您能否通过逐字节比较来比较写入 QSPI 的缓冲器和从 QSPI 读取的缓冲器、并检查您是否获得了不同的值以及您在哪里看到了差异?

    我没有得到您所说的“在读取3个文件时,我没有从3个文件中获得正确的数据”。
    在随附的代码中、在第120行读取 lut_offset 是正确的、但在第150行读取 rlut_offset、在第179行读取 clut_offset 会产生错误?

    您不必在两者之间调用 System_qspiInit、应在开始时仅调用一次。

    此致、
    Prasad