EDA365电子论坛网

标题: 4418开发板基于Linux-c测试程序的编译和运行 [打印本页]

作者: 孟亚凡    时间: 2019-12-4 11:24
标题: 4418开发板基于Linux-c测试程序的编译和运行
基于iTOP4418开发板的Linux-c的测试程序
( T4 L$ T6 ]" n3 y% C" K0 iiTOP-4418 开发板可以运行的文件系统很多,在具体的文件系统上实现特定功能前,可以, @2 f, n. ^1 n: I8 w) \# V/ I. K
使用 Linux-c 程序来测试硬件以及驱动。而且这些程序很容易移植到 Android、Qt/E 以及最小
% M8 }7 a  r& z* @* C/ ~9 \$ `文件系统上。' q6 O: @+ N& \" w8 C
特别提醒:Linux-c 程序是跨平台的,只要按照下面介绍的方法去编译,就可以将 Linux-c9 U0 p( ^4 |! h/ H% G! W
的程序和 Android 系统一起运行,使用 Linux-c 的程序测试我们关注的内容。本质上,我们可以) ]- L1 _: Z. a0 R6 j1 H1 Q
这样理解,Android 只是一个大的文件而已,以下面第一个 helloworld 为例,Linux 内核上运行1 X+ m8 |# I8 g! ^6 ], N
着两个程序“helloworld”+“Android”。
3 }9 p6 s' @# B  ]测试代码在网盘目录“iTOP4418 开发板资料汇总(不含光盘内容)\07_iTOP-4418 开发板
( z$ i9 `: ~. x, x& fAndroid 应用开发环境软件以及源码\04_linux-C 测试程序”下。
4 d# U( w. h; f( N# C6 F8.1 测试程序的编译和运行
7 C" V" V+ _: e8.1.1 编译环境的设置
% x) E5 ^! Z& B5 i5 yC 程序的应用程序在 Android 上运行,使用的编译器是 gcc4.4.1。编译器的安装方法参考
6 E, h5 l7 r. C$ Q第五章。
) e  A+ S  l2 Q0 J3 |# d: m6 z' E如下图所示,修改环境变量。9 L6 d: d8 k1 ?( A7 k5 S* Q
3 w: }+ B+ z$ e% ~/ U
修改完之后,更新一下环境变量,如下图。
9 {' B7 R! z+ ~  x+ u% I
/ F2 U5 g  w7 i% \9 o, J% i; Z7 _如下图所示,输入“arm”,然后按“TAB”键,会显示后面需要用到的编译器
  U9 T. Z- y/ Y- [/ {$ y“arm-none-linux-gnueabi-gcc-4.4.1”。, A4 Y$ `- S% r, _6 p

% F4 M2 v4 N; B8 A3 Y8.1.2 编译 helloworld
- l- ^3 B, P, _* ^1 C3 N程序 helloworld.c 的源码如下。- \! X: y8 ]+ D& w6 c

8 O$ `" d; v# W( ]4 d& P: ?2 S# k编译 helloworld 程序,输入命令“arm-none-linux-gnueabi-gcc-4.4.1 -o helloworld
; V" K! u) M: Lhelloworld.c -static”,如下图所示,生成可执行文件 helloworld。: E* N% P  j7 t
& W& ?' `5 Q1 v% U5 A+ q
8.1.3 上传 helloworld 到开发板
. j$ j: b5 B: @6 r将可执行文件 helloworld 拷贝到 fastboot 烧写目录中,如下图所示,这个目录是烧写
! U# A& q+ `. L4 N, T1 T/ cfastboot 工具所在的目录。fastboot 工具的使用方法参考 3.6 小节。, x" t  e' D% g5 M& `; X( `* m- r3 t

) _% F! X/ Z; C开发板的 Android 系统运行稳定后,将 OTG 接口和电脑的 USB 连接,打开“fastboot”
; S+ l1 ?0 X5 o目录中的“cmd.exe”,如下图所示。! t' W; r7 Y' T2 l& \' X: t4 z
; @2 e1 n; I, ?% V6 `. h. P+ q) ?
在开发板启动完全之后,连接 OTG 接口,开发板的屏幕上会提示“是否允许调试”,选择! v  G' W7 }' n( v
“允许”即可。  `) B' V* w* h2 v& y
然后在串口控制台中输入“chmod 777 /data”命令修改 data 目录权限,如下图。
4 L/ d: ~5 ^' s; Z. v( ~
5 n5 t3 X( n: p8 i如下图,在 PC 机的“cmd.exe”中输入命令“adb push helloworld /data”,将程序上传
  V- M6 \5 m5 e到开发板的“/data”目录中。如果不开启“允许 USB 调试”,会提示如下信息。+ A: ?8 l$ {$ ^8 O/ Y4 ?
1 G! |8 i+ X/ ~, v# @
开启“运行 USB 调试”之后,如下图所示,使用命令“adb push helloworld /data”。
6 }9 ~9 X* f. q8 B6 } 1 E; c9 N9 L. g. i, j' e* [- v
当然也可以通过手机助手、TF 卡或者 U 盘来上传可执行文件 helloworld。如果提示命令7 K: D. m8 t! D; u7 V7 q% Q% m; \
无法使用,注意:请参考使用手册 10.2.2 小节,更新 adb。
+ c0 ^' P7 q. b8.1.4 修改程序权限和运行 helloworld
, _0 L7 x* J( c如下图所示,在超级终端中,输入“cd /data”进入"/data"目录,使用“chmod 777
+ V$ S. e: E; C, ihelloworld”命令修改权限,最后输入“./helloworld”命令运行程序。超级终端中会打印出
. n- q! e, r' O: g“Hello world!”,表明程序运行成功。/ a7 U0 x3 _1 i$ T; O) i
. U8 ?9 F& C- T1 w  G5 M
iTOP4418开发板已经支持安卓7.1系统
/ v3 m+ U7 t! K6 P; S  @
作者: CCxiaom    时间: 2019-12-4 18:00
大神牛逼了
作者: ddny    时间: 2019-12-4 18:19
学习一下  




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2