android添加i2c-tools工具

1、下载i2c工具,下载你需要的版本:

下载地址:Index of /pub/software/utils/i2c-tools/

2、这里以版本i2c-tools-4.1.tar.gz为例,首先,解压该压缩包,将文件i2c-tools-4.1置入android/external/目录下

3、在i2c-tools-4.1中添加编译文件Anddoid.mk

复制代码
LOCAL_PATH:= $(call my-dir)
 
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_C_INCLUDES += $(LOCAL_PATH) \
	$(LOCAL_PATH)$(KERNEL_DIR)/include \
	$(LOCAL_PATH)/include/i2c/smbus.h
LOCAL_SRC_FILES := tools/i2cbusses.c \
	tools/util.c \
    lib/smbus.c
LOCAL_MODULE := i2c-tools
include $(BUILD_STATIC_LIBRARY)
 
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES:=tools/i2cdetect.c
LOCAL_MODULE:=i2cdetect
LOCAL_CPPFLAGS += -DANDROID
LOCAL_SHARED_LIBRARIES:=libc
LOCAL_STATIC_LIBRARIES := i2c-tools
LOCAL_C_INCLUDES += $(LOCAL_PATH) \
	$(LOCAL_PATH)/$(KERNEL_DIR)/include \
	$(LOCAL_PATH)/include/i2c/smbus.h
include $(BUILD_EXECUTABLE)
 
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES:=tools/i2cget.c
LOCAL_MODULE:=i2cget
LOCAL_CPPFLAGS += -DANDROID
LOCAL_SHARED_LIBRARIES:=libc
LOCAL_STATIC_LIBRARIES := i2c-tools
LOCAL_C_INCLUDES += $(LOCAL_PATH) \
	$(LOCAL_PATH)/$(KERNEL_DIR)/include \
	$(LOCAL_PATH)/include/i2c/smbus.h
include $(BUILD_EXECUTABLE)
 
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES:=tools/i2cset.c
LOCAL_MODULE:=i2cset
LOCAL_CPPFLAGS += -DANDROID
LOCAL_SHARED_LIBRARIES:=libc
LOCAL_STATIC_LIBRARIES := i2c-tools
LOCAL_C_INCLUDES += $(LOCAL_PATH) \
	$(LOCAL_PATH)/$(KERNEL_DIR)/include \
	$(LOCAL_PATH)/include/i2c/smbus.h
include $(BUILD_EXECUTABLE)
 
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES:=tools/i2cdump.c
LOCAL_MODULE:=i2cdump
LOCAL_CPPFLAGS += -DANDROID
LOCAL_SHARED_LIBRARIES:=libc
LOCAL_STATIC_LIBRARIES := i2c-tools
LOCAL_C_INCLUDES += $(LOCAL_PATH) \
	$(LOCAL_PATH)/$(KERNEL_DIR)/include \
	$(LOCAL_PATH)/include/i2c/smbus.h
include $(BUILD_EXECUTABLE)

4、然后source,lunch检索一下

5、进入到android/external/i2c-tools-4.1目录下,执行"mmm",进行模块编译,或者进行./build.sh -AUCK全编,编完后,在路径"out/target/product/xxx/system/bin"目录下会生成4个执行文件,如下:

i2cdetect

i2cdump

i2cget

i2cset

6、也可以在编译系统的时候把该模块添加进来,在device/xxx/device.mk里面添加:

PRODUCT_PACKAGES += \

i2cdetect \

i2cget \

i2cdump \

i2cset

7、将文件推送到android设备的system/bin目录下 或者重编整个系统,再整体下载镜像,这样设备就附带有这4个命令了

相关推荐
消失的旧时光-19431 天前
Android ADB指令大全详解
android·adb
ashcn20011 天前
opengl 播放视频的android c++ 方案
android·c++ opengl es
abner.Li1 天前
android 反编译
android
Digitally1 天前
如何删除 realme 手机上的短信
android
2501_916008891 天前
提高 iOS 应用逆向难度的工程实践,多工具联动的全栈安全方案
android·安全·ios·小程序·uni-app·cocoa·iphone
沐怡旸1 天前
【底层机制】Android图形渲染体系深度解析:VSync信号机制
android·面试
BoomHe1 天前
Android 13 (API 33)上自定义广播
android
来来走走1 天前
Android开发(Kotlin) ViewModel基本用法
android·开发语言·kotlin
Digitally1 天前
在荣耀手机上删除短信的完整指南
android
nono牛1 天前
Android Binder C/C++ 层详解与实践
android·c语言·binder