Android 从硬件到应用:一步一步向上爬 2 -- 运行 C 程序测试硬件驱动
2014-12-12 20:53
435 查看
编写C程序快速测试硬件驱动:
在Android 源码根目录下的external文件夹创建driver_test文件夹:
cd external
mkdir driver_test
cd driver_test
创建Android.mk:
最初可能会提示错误:
host c++: libhost <= build/libs/host/pseudolocalize.cpp/bin/bash: g++: 未找到命令
make: ***[out/host/linux-x86/obj/STATIC_LIBRARIES/libhost_intermediates/pseudolocalize.o] 错误 127
解决:
sudo -i
aptitude install g++
sudo apt-get install build-essential
安装完成后再执行:make driver_test
最终编译完成:
运行:
./driver_test 1 (这时D1亮)
./driver_test 0 (这时D1灭)
测试成功,利用此方法可以快速测试android下的linux内核驱动
在Android 源码根目录下的external文件夹创建driver_test文件夹:
cd external
mkdir driver_test
cd driver_test
创建Android.mk:
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE_TAGS := optional LOCAL_MODULE := driver_test LOCAL_SRC_FILES := driver_test.c include $(BUILD_EXECUTABLE)创建driver_test.c:
#include <stdio.h> #include <stdlib.h> #include <fcntl.h> int main(int argc, char *argv[]) { int fd; int val=0; fd=open("/dev/AdrIO",O_RDWR); if(fd<0) { printf("open device failed !\n"); exit(1); } else { printf("open success ! \n"); } write(fd,argv[1],1); close(fd); return 0; }回到Android源码根目录:make driver_test
最初可能会提示错误:
host c++: libhost <= build/libs/host/pseudolocalize.cpp/bin/bash: g++: 未找到命令
make: ***[out/host/linux-x86/obj/STATIC_LIBRARIES/libhost_intermediates/pseudolocalize.o] 错误 127
解决:
sudo -i
aptitude install g++
sudo apt-get install build-essential
安装完成后再执行:make driver_test
最终编译完成:
Install: out/target/product/generic/system/lib/libm.so Install: out/target/product/generic/system/bin/driver_test将out/target/product/generic/system/bin/driver_test拷贝到AM335X文件系统中,启动Android
运行:
./driver_test 1 (这时D1亮)
./driver_test 0 (这时D1灭)
测试成功,利用此方法可以快速测试android下的linux内核驱动
相关文章推荐
- Android 从硬件到应用:一步一步向上爬 4 -- 使用 JNI 方法调硬件驱动
- Android 从硬件到应用:一步一步向上爬 6 -- 编写APP测试框架层硬件服务(完)
- Android 从硬件到应用:一步一步向上爬 3 -- 硬件抽象层访问硬件驱动
- Android 从硬件到应用:一步一步向上爬 4 -- 使用 JNI 方法调硬件驱动
- HAL(4) -- 开发android源码硬件访问服务和应用测试程序
- Android 从硬件到应用:一步一步向上爬 1 -- 从零编写底层硬件驱动程序
- Android 从硬件到应用:一步一步向上爬 5 -- 在Frameworks层添硬件服务
- android内核字符驱动设备实战之----------应用层测试程序篇
- 在ok6410 Androdi开发板运行c程序,添加驱动模块,并测试android驱动
- Android如何在测试程序中删除被测应用私有的原始数据
- S5PV210 Android camera驱动测试程序
- 【Linux】【C语言】菜鸟学习日志(一) 一步一步学习在Linxu下测试程序的运行时间
- andriod驱动之旅-在Ubuntu上为Android系统内置Java应用程序测试Application Frameworks层的硬件服务(8)
- Android深入浅出系列之实例应用—程序运行进度提示条应用ProgressBar和Handler的使用
- Android深入浅出系列之实例应用—程序运行进度提示条应用ProgressBar和Handler的使用
- andriod驱动之旅-在Ubuntu上为Android系统内置C可执行程序测试Linux内核驱动程序(4)
- Android S5PV210 camera驱动测试程序
- Android S5PV210 camera驱动测试程序
- Android 应用第一次运行时,引导页面的设置方法(只让程序Acitivity运行一次的设置方法)
- 正在学习 android 开发,开发环境已搭建完毕,第一个测试程序已在模拟器上运行成功。