找回密码
 注册
关于网站域名变更的通知
查看: 425|回复: 2
打印 上一主题 下一主题

4418开发板基于Linux-c测试程序的编译和运行

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-12-4 11:24 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
基于iTOP4418开发板的Linux-c的测试程序# X; C) c; Q. Q3 k* l
iTOP-4418 开发板可以运行的文件系统很多,在具体的文件系统上实现特定功能前,可以
1 F: J2 p4 ?& ~使用 Linux-c 程序来测试硬件以及驱动。而且这些程序很容易移植到 Android、Qt/E 以及最小$ |4 ]8 J" o# j& {
文件系统上。7 {' R: Q' j. [3 E3 V
特别提醒:Linux-c 程序是跨平台的,只要按照下面介绍的方法去编译,就可以将 Linux-c
' H* s; V- [' X; t5 ?1 `+ Q/ t* H- S的程序和 Android 系统一起运行,使用 Linux-c 的程序测试我们关注的内容。本质上,我们可以# b; t/ |# k8 f- B% i( p% k+ |2 L; i
这样理解,Android 只是一个大的文件而已,以下面第一个 helloworld 为例,Linux 内核上运行
2 M- K, _) x3 h& w' x: ^着两个程序“helloworld”+“Android”。) T7 v- r) c8 i
测试代码在网盘目录“iTOP4418 开发板资料汇总(不含光盘内容)\07_iTOP-4418 开发板
% N" d* r) |9 ^% U' d1 p& ]) W# ?Android 应用开发环境软件以及源码\04_linux-C 测试程序”下。6 K. w( p/ X3 a8 [9 v
8.1 测试程序的编译和运行" z7 G4 l+ I- L% L; ?" A$ ]1 c
8.1.1 编译环境的设置8 g" y  ]& u4 p" G2 S* M
C 程序的应用程序在 Android 上运行,使用的编译器是 gcc4.4.1。编译器的安装方法参考
0 j" M, j% C% y: e) s第五章。" w" L4 E7 w1 p& X; k5 b
如下图所示,修改环境变量。& D2 J9 p- F$ u5 |1 _# \0 m
5 W' N( Q3 F& c2 u; `
修改完之后,更新一下环境变量,如下图。
$ s9 ?7 P5 O# s % H. M$ g( ?. z0 g: G
如下图所示,输入“ARM”,然后按“TAB”键,会显示后面需要用到的编译器
1 t# R8 S1 ]1 T5 g* @' k/ B' z% v“arm-none-linux-gnueabi-gcc-4.4.1”。+ U) p, g% V7 u* {3 F) R8 S

" W2 @! O/ T% t" H2 a' G8.1.2 编译 helloworld; H; t3 m3 B" r3 d& M
程序 helloworld.c 的源码如下。& H5 C! R/ P6 \. ]9 l

5 d% N2 V; Q; k, W& a& s编译 helloworld 程序,输入命令“arm-none-linux-gnueabi-gcc-4.4.1 -o helloworld
6 M" Y8 {' |& K% }6 d- Q5 C6 {helloworld.c -static”,如下图所示,生成可执行文件 helloworld。
! G6 q/ d: X; F) q" H0 B2 G
: h: V: r3 p- o# d8.1.3 上传 helloworld 到开发板
7 {% ~+ @2 P( z# h9 _/ X将可执行文件 helloworld 拷贝到 fastboot 烧写目录中,如下图所示,这个目录是烧写1 K, M" x2 e5 w2 X
fastboot 工具所在的目录。fastboot 工具的使用方法参考 3.6 小节。
  Y% L1 f) j( {; Z! m" Q ) r7 U! A9 q- Z5 Z" `1 [
开发板的 Android 系统运行稳定后,将 OTG 接口和电脑的 USB 连接,打开“fastboot”
# U; e6 q$ C3 R7 y: N目录中的“cmd.exe”,如下图所示。5 Y& E0 b5 ^) M0 `# _

) i+ C* U( s+ f7 r1 d: e在开发板启动完全之后,连接 OTG 接口,开发板的屏幕上会提示“是否允许调试”,选择
' M/ l6 O0 i, @* n( \“允许”即可。
+ X5 e7 @4 r7 }6 p然后在串口控制台中输入“chmod 777 /data”命令修改 data 目录权限,如下图。
! \  i$ w! D2 d2 ~9 I& G
) g3 [2 X: m' E( [- D2 w" [3 N如下图,在 PC 机的“cmd.exe”中输入命令“adb push helloworld /data”,将程序上传
/ U6 x5 T! p7 q4 n7 ]# D) z, q/ M到开发板的“/data”目录中。如果不开启“允许 USB 调试”,会提示如下信息。
# e5 `4 |- C1 c8 a/ ?
. W* y' R' \/ o7 i/ @& O+ E$ x开启“运行 USB 调试”之后,如下图所示,使用命令“adb push helloworld /data”。
$ `& O2 y, l! d/ D2 l0 t1 U. x% Z8 A 9 H6 m) w/ ?6 X4 P' {, `+ Z
当然也可以通过手机助手、TF 卡或者 U 盘来上传可执行文件 helloworld。如果提示命令; K+ w2 H* S7 p" A* x5 z
无法使用,注意:请参考使用手册 10.2.2 小节,更新 adb。2 T+ r" z8 ]0 B# s
8.1.4 修改程序权限和运行 helloworld4 ^; ~  Z6 n+ o6 V2 U4 [7 w0 ~( i  h) }
如下图所示,在超级终端中,输入“cd /data”进入"/data"目录,使用“chmod 777
1 M3 L# ?  I' J2 j$ L# ohelloworld”命令修改权限,最后输入“./helloworld”命令运行程序。超级终端中会打印出
' H- }0 v+ p$ T4 d“Hello world!”,表明程序运行成功。
# u0 L8 x8 b8 y3 A
7 r  l2 z# j) a2 r, {iTOP4418开发板已经支持安卓7.1系统
" {+ s! D9 h  n# [

该用户从未签到

2#
发表于 2019-12-4 18:00 | 只看该作者
大神牛逼了
  • TA的每日心情
    开心
    2020-12-3 15:53
  • 签到天数: 38 天

    [LV.5]常住居民I

    3#
    发表于 2019-12-4 18:19 | 只看该作者
    学习一下  
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-25 14:07 , Processed in 0.156250 second(s), 27 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表