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.

[参考译文] CCS/TM4C123GH6PM:获取要传递到 Kentec 显示屏的值

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/587289/ccs-tm4c123gh6pm-getting-a-value-to-pass-into-the-kentec-display

器件型号:TM4C123GH6PM
主题中讨论的其他器件:TM4C123

工具/软件:Code Composer Studio

您好!

我正在使用 tm4c123 MCU 上的 kentec 显示屏。 我想通过计算得出的转速测量值将一个值传递到触摸屏。 我现在正在使用此代码。

我可以正常工作、但我显示的是 ASCII 字符、而不是"RPM:%d/0"。  

这是我必须显示上面创建的函数的画布。

我正在尝试更新一个值、以显示从自行车上测量的转速。 代码编译正确、但我没有得到我想要在屏幕上显示的值。 我已经在 grlib 中阅读了内容、但在编写此内容方面没有找到太多帮助。 有什么建议吗?  

谢谢、

Mike

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

    您好!
    我认为有两个问题、可能与您的问题有关、也可能与您的问题无关。 首先,函数内没有初始化 rpm,因此当您将 rpm 传递到 usprintf()时,它将是未知的。 其次、计时器的大小仅为2个字符、如 char timer[2]中所示。 您尝试打印的字符串占用两个以上的字符。 例如,字符串中有'R'、'P'、'M'、':',以及代表 rpm 值的字符。 它将超过2个字符。 您可能会打印在计时器[2]之后占用内存空间的未知值。

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

    我更改了字符串大小、我不确定它到底是什么、但我现在看到它是显示的大小。 我对 rpm 进行的计算位于我要显示该值的变量"timer"下。 我不确定如何在函数内初始化 rpm? 我收到一条警告、说它在初始化之前被使用。 我得到的 ASCII 值为@。 显示的内容。 我想、如果我像您说的那样初始化转速、它应该更好。 或者、我是否需要使用"timer"值、因为它包含我要显示的数字。

    谢谢、
    Mike
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Michael、
    在调用 usprintf()之前,不能将变量'rpm'保持为未初始化状态。 我想知道为什么不将 rpm 变量作为参数传递到 PrintRPm()中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Charles、

    我不确定为什么我没有得到一个值、我将对其进行初始化、看看这是否会起作用。 如果我不能做其他事情吗? 我是否使用了正确的代码来显示类似的内容?

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

    如果您调用 PrintRPM),是否在不使用 Canvas 小部件的情况下正确打印它?

    您能否在 usprintf()之后放置一个断点并显示在计时器变量中存储的内容。 如果尚未执行此操作、则可以右键单击计时器变量、然后将该变量添加到表达式窗口中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Charles、  

    我现在正在不使用画布小工具进行呼叫。 我是否应该将 PrintRPPM()放入 main 的 while 循环中? 我确实有一个观察表达式来查看为我的计时器值显示的内容。 我可以看到它包含来自我的输入的数据、因此它确实可以正常工作。  

    谢谢、

    Michael Winter  

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

    您好、Charles、

    我尝试在 main 中调用 PrintRPm(),但它不起作用。 我拥有和想要显示的值位于变量计时器中。 我已经将其设置为全局变量、因此它可以用于公式以获取值、然后也可以用于函数。 我现在为此编辑了函数。 显示计时器是否正确?  

    谢谢、

    Mike  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您需要增加"字符串"的大小。 我建议您使用 string[10]。 "RPM:"为4、空格为1、数字为4、结尾为空 不用担心浪费 RAM 空间。 这将位于临时(堆栈)空间中、因为它是本地的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Bob、您好!

    我确实将字符串大小调整为10、但它仍然显示不正确。 它显示了 D。将此函数传递到画布中是否存在问题。 GrStringDraw 将其放置在某个位置,然后画布也具有自己的位置。 我应该将它们匹配在一起吗?

    谢谢、
    Mike