
其实楼主的问题很专业,之前我在周立功那边也了解过不少。\x0d\x0a 当用户需要EasyARM-iMX283在开机
启动后就运行指定的应用
程序或指令时,可以通过vi命令编辑/etc/rc.d/init.d/start_userapp,将要执行的指令添加到里面。若用户有一个hellow的程序放在/home/目录中,那么设置hellow程序开机启动的方法如程序清单 1.1红色部分所示。\x0d\x0a程序清单1.1 用户启动文件\x0d\x0a#!/bin/sh \x0d\x0a#you can add your app start_command three \x0d\x0a/home/hellow \x0d\x0a#start qt command,you can delete it 下面是启动QT界面的指令,若用户不需要启动QT,可以直接删除\x0d\x0aexport TSLIB_PLUGINDIR=/usrb/ts/ \x0d\x0aexport TSLIB_CONFFILE=/etc/ts.conf \x0d\x0aexport TSLIB_TSDEVICE=/dev/input/ts0 \x0d\x0aexport TSLIB_CALIBFILE=/etc/pointercal \x0d\x0aexport QT_QWS_FONTDIR=/usrb/fonts\x0d\x0aexport QWS_MOUSE_PROTO=Tslib:/dev/input/ts0 \x0d\x0a/usr/zhiyuan/zylauncher/start_zylauncher &\x0d\x0a\x0d\x0a如果程序是一个阻塞程序(程序被运行后不会退出或返回),则可能会导致位于其后的指令或程序无法得到执行,并且始终占用串口终端,造成其他程序(比如Shell)无法通过串口终端与用户交互。对于此类
应用程序,可以在其后面添加“ &”(注意:是“空格”+“&”符号)让其在后台运行,如下所示:\x0d\x0a/home/hellow &按这个办法试试
按一般的方法,写一脚本放在/etc/init.d中,然后在/etc/rcx.d中建立软连接,为了省事我们直接用:
update-rc.d scriptname defaults
这个命令来做,如果有误撤消这次 *** 作,
update-rc.d -f scriptname remove
另一种如果方法也是将角本放入/etc/init.d/,然后用rcconf进行选择,不过别忘了要先chmod a+x scriptname来更改权限。
简单来说就是交叉编译你的应用程序,然后下载到你的板子里面运行它。
更具体一点来说可以分为以下几步:
1、首先确定你的arm Linux有没有这些IO的驱动,如果还没有的话,那么你要写这些IO的驱动;如果已经有了,那么它们的控制就叫给你自己的应用程序了。
2、编写应用程序(open,ioctl等等),并交叉编译它们(何谓“交叉编译”?搜索一下)。
3、把交叉编译出来的可执行程序下载到你的板子(如果你采用了NFS的开发方式的话,这步可以省略了),执行之!
希望可以帮助到你,祝你好运!
评论列表(0条)