如何在控制台应用程序中在mini2440屏幕上打印我的应用程序输出?

时间:2015-10-04 08:59:45

标签: c++ qt arm embedded

我想在mini2440屏幕上打印我的应用程序。
我在Qt控制台应用程序中使用了这些命令:

#include <QCoreApplication>
#include <QProcess>
#include <QDebug>  


int main(int argc, char *argv[])
{
  QCoreApplication a(argc, argv);
  qDebug() << "C++ Style Debug Message";
  qDebug( "C Style Debug Message" );

  system("echo 'system'");
  printf("printf");
  // qFatal does not have a C++ style method.
  qFatal( "C Style Fatal Error Message" );
  return a.exec();
}

但所有这些代码只是在我的终端上打印语句而不是在mini2440屏幕上。我的设备启动后,我看到这些行:

  

开始联网.....
  启动Web服务器....   启动LED服务......

但我希望从屏幕上清除它们并在屏幕上显示我的输出 这些线。 像这样:
嗨,亲爱的用户。

我该怎么做?
我使用mini2440并在Qt创建者中为mini2440编写了应用程序。 (我评论Qtopia来运行我的程序)

谢谢:)

2 个答案:

答案 0 :(得分:2)

您应将应用程序的输出重定向到屏幕,通常它会转到常规输出(终端)。

首先,验证哪个tty代表你的屏幕,在OK6410 bard上(与你的相似)它是/ dev / tty0。简单测试,在控制台上键入:

echo test > /dev/tty0

并检查屏幕上是否有文字。如果没有,请尝试使用您主板上提供的其他tty。

辅助,当知道屏幕tty时,然后运行应用程序并重定向输出:

./myTestAppl -qws > /dev/tty0

其中tty0将替换为第一点为您工作的tty。应用程序的输出应显示在屏幕上。

[编辑]

您还可以通过审核委员会启动脚本检查哪个tty代表屏幕,并检查哪个tty发送提到的文本&#34;开始联网.....&#34;等

答案 1 :(得分:0)

使用STL:std::cout

qDebug()和其他预定义的Qt I / O流不是为了显示任何输出而设计的。它们通常用于跟踪/记录。