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.
工具/软件:TI C/C++编译器
您好,
出于我们自己的目的,我们尝试为PRU获取C程序,以处理来自AM3356 SoC的PRU的MII链路。
通过阅读文档并经过几次测试,我有以下问题:
-发出XFR命令以获取L2 Bank数据需要使用de __xin()函数(只是一个信息)
- R2->R9用于检索MII数据,但编译器使用R2作为堆栈指针。 除非我可以从编译器选项更改堆栈指针寄存器,否则我必须使用重新映射标志?
-使用__xin函数的重映射标志似乎不起作用。 首先,不能在任何CPU寄存器(R0->R29)中检索数据,其次,在C编译器生成的汇编代码中,我没有看到SBBO指令将结果存储在提供的缓冲区中。
->如果不使用重映射标志, 则可以在R2寄存器中正确检索数据
->通过使用重映射标志,不会更新任何CPU寄存器,并且存储在提供的缓冲区中的数据来自堆栈...
那么,所有这些都是为了询问C编译器是否支持MII接口,如果支持,我错过了什么?
谢谢!
纪尧姆
我对拖延表示歉意。
您在编译器中遇到了一个已知问题。 ID为CodeGen-1718。 欢迎您使用我签名中下面的SDOWP链接进行查找。 它将在PRU编译器的下一个发行版中修复。 目前未安排该版本。
谢谢,此致,
-George
好的,
有没有办法将堆栈指针寄存器(R2)/链路寄存器(R14)更改为另一个GP寄存器(R0->R29)。 我在文档中没有看到如何做,但也许有某种MacGyver技巧来做?
另一个解决方案应该是获取编译器源代码并尝试更改它。 源代码是否在某处可用?
感谢您的回复,
此致,
纪尧姆
纪尧姆
不能,很遗憾,无法更改SP寄存器或链接寄存器,我们目前不提供PRU C编译器的源代码。
您的两个选项似乎是:
Jason Reeder