Linux on AT91SAM9261EK Uboot,Busybox stdout / stderr setup

时间:2013-10-29 18:47:09

标签: stdout busybox u-boot

我有一个基于AT91SAM9261EK板的继承项目/板,它使用U-Boot和BusyBox文件系统。我是新手,并试图了解这些组件与我的应用程序的关系。

通过实验看来,stdout的设置以及串口参数都是在U-Boot中完成的,并且这会持续到应用程序。这是对的吗?

我的基本问题是: 1:端口设置不正确。波特率需要改变。 2.我想从我的应用程序关闭此端口(或至少使其仅传输)。

如何更改U-Boot中的端口参数?
什么组件定义了stdout:U-Boot,BusyBox或我的应用程序?

由于

1 个答案:

答案 0 :(得分:0)

是的,U-Boot environment variables控制这些,在U-Boot运行和linux启动之后。有很多basic references可用。我推荐Hallinan的Embedded Linux Primer;你目前的问题将在第5.3节和第7章之下。

在U-boot提示符下,执行“printenv”,您会发现U-Boot已为自己设置了这些变量: 标准错误=串行 标准输入=串行 标准输出=串行

只要不执行“saveenv”,就可以更改U-Boot的stdin和stdout。可能你会发现这些变化非常不实用。重新启动以恢复以前的设置。

您可以非常轻松地更改波特率 setenv baudrate 9600

初始Linux console由“bootargs”变量中的项目设置,例如...控制台= ttyAMA0,115200n8 ... 如果你想要不同的波特率,可以在U-Boot coli上尝试这样的事情: setenv bootargs console = ttyAMA0,9600n8 ...(复制以前用于其他项目的内容) saveenv

在linux出现之后,其他各种console options都有可能,但有点先进,祝你好运。