iTOP-4412 开发板可以运行的文件系统很多,在具体的文件系统上实现特定功能前,可以 使用Linux-C 程序来测试硬件以及驱动。而且这些程序很容易移植到Android、Qt/E 以及最小文件系统上。

1. 编译环境的设置

本质上其实可以理解为,Android 只是一个大的文件而已,在Linux 内核上运行着两个程序“helloworld”+“Android”。 C 程序的应用程序在Android 上运行,使用的编译器是gcc4.4.1。

在上面的开发环境全部搭建好以后,首先修改环境变量,如下图

修改完之后,更新一下环境变量,如下图。

输入“arm”,然后按“TAB”键,会显示后面需要用到的编译器“arm-none-linux-gnueabi-gcc-4.4.1”,如下图所示

2.编译helloworld

程序helloworld.c 的源码如下:

编译hellworld 程序,输入命令“arm-none-linux-gnueabi-gcc-4.4.1 -o helloworld  hello.c  -static”,并且生成了可执行文件helloworld,如下图所示。

3.上传helloworld 到开发板

将可执行文件helloworld 拷贝到fastboot 烧写目录中,如下图所示,这个目录是烧写fastboot 工具所在的目录。

开发板的Android 系统运行稳定后,将OTG 接口和电脑的USB 连接,打开“USB_fastboot_tool\platform-tools”目录中的“cmd.exe”,如下图所示。

如下图所示,输入命令“adb  push  helloworld  /data”,将程序上传到开发板的“/data”目录中。

4.修改程序权限和运行helloworld

由于我的用的笔记本没有串口,而开发板必需要通过USB转串口的转接头才能正常连接到笔记本,所以这里我只能采用登陆开发板的shell来直接对开发版的安卓文件系统进行操作。

adb 全称是Android Debug Bridge,是android sdk 里的一个工具。它可以用来安装/卸载安卓的应用,上传/下载文件等。当然,如果要用ADB 命令和开发板交互,那么开发板一定要在文件系统模式,也就是开发板必须运行安卓操作系统,并且安卓文件系统必须完全启动。登录开发板Android 设备的shell,如下图所示。

登录后,很多基本命令都是和Linux 的命令类似,在Windows命令行中,输入命令,例如:ls,cd 等。如下图所示

我们可以看到刚才上传的helloworld在/data这个文件夹里。然后修改文件“helloworld”的权限,如下图

运行“helloworld”程序。在Windows 命令行中,输入命令   ./helloworld

可以看到刚才编译的可执行文件在这里的运行结果。

5.退出安卓shell

在Windows 命令行中,输入命令exit,来执行退出安卓shell 的命令,如下图

在Android平台下的基于Linux-C 的测试程序的更多相关文章

  1. 在Android平台下搭建PhoneGap开发环境--用HTML5开发游戏

    一.在Android平台下搭建PhoneGap开发环境具体怎么搭建我这里就不详细说了,如有需要我后面再讲 . PhoneGap 官方地址有详细说明:http://www.phonegap.com. 在 ...

  2. 【转】Android平台下利用zxing实现二维码开发

    http://www.cnblogs.com/dolphin0520/p/3355728.html 现在走在大街小巷都能看到二维码,而且最近由于项目需要,所以研究了下二维码开发的东西,开源的二维码扫描 ...

  3. 【转】Android 平台下使用 i2c-tools

    原文网址:http://my.oschina.net/luoly/blog/368881 Android 平台下使用 i2c-tools Andorid 开发板为 Freescale imx6 的 S ...

  4. Android平台下利用zxing实现二维码开发

    Android平台下利用zxing实现二维码开发 现在走在大街小巷都能看到二维码,而且最近由于项目需要,所以研究了下二维码开发的东西,开源的二维码扫描库主要有zxing和zbar,zbar在iPos平 ...

  5. Android平台下渗透测试工具大集合

    Android平台下渗透测试工具大集合 分享一个google的项目,各种Android下的渗透测试工具. Ad Network Detector (1.2): http://market.androi ...

  6. (转)android平台下使用点九PNG技术

    “点九”是andriod平台的应用软件开发里的一种特殊的图片形式,文件扩展名为:.9.png 智能手机中有自动横屏的功能,同一幅界面会在随着手机(或平板电脑)中的方向传感器的参数不同而改变显示的方向, ...

  7. (转载)Android平台下利用zxing实现二维码开发

    Android平台下利用zxing实现二维码开发 现在走在大街小巷都能看到二维码,而且最近由于项目需要,所以研究了下二维码开发的东西,开源的二维码扫描库主要有zxing和zbar,zbar在iPos平 ...

  8. linux /Android 平台下使用 i2c-tools

    下载源码将 i2c-tools 代码下载到 Android 源码的 external 目录下 在 i2c-tools 目录下新建 Android.mk 文件,内容如下: # external/i2c- ...

  9. Android平台下使用lua调用Java代码经验总结

    动态语言以其执行的灵活性,可配置性.方便调试能够为开发带来极大的方便.假设用好了.能够极大的提高开发的效率. 怪不得像游戏开发这样复杂的软件开发里没有不集成脚本语言的. 当中,lua以其小巧,灵活.方 ...

随机推荐

  1. http响应报文和http请求报文 详细信息

    tomcat项目本身的jar包

  2. jquery click点击事件重复执行多次

    $("button[name^='privateBtn']").click(function(){ alert('demo'); //接触绑定.避免重复执行 $("but ...

  3. WCF Basic Concept

    http://msdn.microsoft.com/library/ee354180.aspx Steps: Designing a Service Contract Implementing a W ...

  4. Bootstrap页面布局13 - BS按钮

    bootstrap中的按钮类 一般可以作为按钮的标签有:<a></a>  <button></button>  <input type='butt ...

  5. P1018 乘积最大

    开始定义状态f[i][j][k]为[i,j)区间插入k个括号,使用记忆化搜索,但是成功爆栈,得到4个mle #include <bits/stdc++.h> using namespace ...

  6. .Net Install类的Install、Commit等事件触发顺序

    .Net Install类的Install.Commit等事件触发顺序 空间   首先是Install其中调用base.Install过程中导致OnBeforeInstallOnAfterInstal ...

  7. CSS的display属性,显示或隐藏元素

    <html> <head> <script type="text/javascript"> function removeElement() { ...

  8. 逻辑运算符——逻辑与&&、逻辑或||

    一直以来,都是认为逻辑运算符返回的是布尔值,却突然发现:并不是这样. 对于||来说,如果条件判断结果为true就返回第一个操作数的值,如果为false就返回第二个操作数的值. &&则相 ...

  9. php--validate表单验证

    validate表单验证扩展规则 添加自定义检验(验证class) 获取html加入 class <input id="D_NUMBER" name="D_NUMB ...

  10. H264(NAL简介与I帧判断)

    1.NAL全称Network Abstract Layer, 即网络抽象层.         在H.264/AVC视频编码标准中,整个系统框架被分为了两个层面:视频编码层面(VCL)和网络抽象层面(N ...