启动脚本echo 信息 无法输出到串口



  • 问大家一个问题,比如在setwllll 这个文件里面echo 输出信息 为何串口打印不出来, 开机自启动脚本echo 也都是一样,串口输出不了,这是为何?
    以上需要更改那个配置文件呢?



  • 系统自己调用的启动脚本,其实标准输出是被系统重定向了。所以串口看不到。
    要想看到,可以将里边echo加上 “ > /dev/ttyS0 ” 信息。



  • @mango 那要是应用程序有printf 自启动也是无法输出 这个呢?



  • @sunzhguy 假设你的应用程序叫hello.bin
    启动脚本里给响应的语句后增加 > /dev/ttyS0。
    意思是强制将hello.bin所有的输出都转到串口0。
    测试完在这里贴一下结果。



  • 应用程序中加入以下两句就可以在串口输出:
    int ttyfd = open("/dev/ttyS0",(O_RDWR), 0644);
    dup2(ttyfd,STDOUT_FILENO);
    不过串口输出不是实时的,有缓冲


Log in to reply
 

21
Online

982
Users

583
Topics

2.3k
Posts