zoukankan      html  css  js  c++  java
  • 在Android平台下的基于Linux-C 的测试程序

    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_toolplatform-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 的命令,如下图

  • 相关阅读:
    洛谷3384树链剖分模板
    洛谷2672(前缀和技巧)
    普通平衡树与文艺平衡树的splay代码
    面向对象的几大原则
    面向对象的几大原则
    Struts标签、Ognl表达式、el表达式、jstl标签库这四者之间的关系和各自作
    Struts标签、Ognl表达式、el表达式、jstl标签库这四者之间的关系和各自作
    关于使用struts2跳转后css和js失效的解决方式
    关于使用struts2跳转后css和js失效的解决方式
    Hibernate——脏检查和缓存清理机制
  • 原文地址:https://www.cnblogs.com/liming1593/p/5222925.html
Copyright © 2011-2022 走看看