今天测试了一下A10平台外面的一颗MCU的i2c操作,i2c通信正常的
在android/external目录中新建一个测试用的模块目录test_program
在目录中添加两个文件:
Android.mk
XXX_test.cpp
Android.mk源码如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := XXX.cpp
LOCAL_MODULE := XXX
LOCAL_MODULE_TAGS := eng
include $(BUILD_EXECUTABLE)
XXX_test.cpp源码如下:
#include <stdio.h>
#include <fcntl.h>
#define MCU_CMD_POWER 5//这里根据对应驱动来定
#define IOCTL_CMD MCU_CMD_POWER
int main(int argc, char **argv)
{
int fd;
unsigned long arg[4] = {0};//这里根据对应驱动来定
fd = open("/dev/XXX", O_RDWR);
printf("open /dev/mcu24 ");
if(fd == -1)
printf("failed!\n");
else
printf("success!\n");
ioctl(fd, IOCTL_CMD, (unsigned long)arg);//arg是个地址
printf("ioctl option success!\n");
close(fd);
printf("fd close success!\n");
return 0;
}
<

本文介绍了在Android系统上进行ioctl测试的过程,特别是在external目录下创建一个测试模块test_program,包含Android.mk和XXX_test.cpp文件,并通过编译命令mmm -B进行编译,最终生成可用于测试的XXX_test二进制文件。
最低0.47元/天 解锁文章
5541

被折叠的 条评论
为什么被折叠?



