大家好、
您能在下面帮助我们解决客户的问题吗?
我正在使用 CCS11、TI-RTOS 和 Tivaware 驱动程序库来开发 TM4C129EK。
我在使用 sprintf 函数时收到此运行时间错误
我想使用 sprintf 函数进行浮点到字符串的转换
此致、
Danilo
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.
大家好、
您能在下面帮助我们解决客户的问题吗?
我正在使用 CCS11、TI-RTOS 和 Tivaware 驱动程序库来开发 TM4C129EK。
我在使用 sprintf 函数时收到此运行时间错误
我想使用 sprintf 函数进行浮点到字符串的转换
此致、
Danilo
您好 Danilo、
由于 sprintf 需要大量堆栈、它们可能会达到堆栈溢出。 它至少需要1500个可用的堆栈空间。
有关堆栈大小和使用较少堆栈空间的替代函数的信息、请参阅以下文章: https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1065741/tm4c123gh6pm-sprintf-and-stack-size/3943021#3943021
此致、
Ralph Jacobi
您好、Ralph、
感谢您的回答。 以下是我们客户的反馈。
我见过 e2e 支持,他们提到了一个文档(e2e.ti.com/.../pastedimage1640906839986v1.png)。 您可以共享此文档吗?
此致、
Danilo
您好 Danilo、
他们还需要将文件添加到项目中。
让他们查看我们的 TivaWare 入门指南 :https://www.ti.com/lit/pdf/spmu373的第3.1节
此致、
Ralph Jacobi
您好、Sumit、
[引用 userid="525210" URL"~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1137510/tm4c129ekcpdt-run-time-error-for-using-sprintf-function/4355626 #4355626"] 实际问题是在不使用 sprintf 函数的情况下浮点到字符串转换,因为 sprintf 函数需要在 ti-RTOS 中使用模式堆栈内存。usprintf 实用程序专门用于解决该问题。
至于其他选项、我不知道 Code Composer 中可能还有哪些其他选项、因为您需要创建专用的 Code Composer 线程来进行团队评论。 对于 TivaWare、我们提供了 usprintf 来处理它。 TI-RTOS 也为 Tiva-C 提供了相同的产品、我不知道 TI-RTOS 封装中的任何替代产品。
此致、
Ralph Jacobi