i2c 인터페이스로 다양한 ic 들이 제어 됩니다.

예를 들자면 rtc, eeprom, pmic, 온습도센서.. 등등.

그래서 i2c 로 연결된 장치들을 검색하고 테스트 해보기 위한 툴이 필요하지요

대표적으로 사용 하는 리눅스용 tool 이 바로 i2ctool 입니다.

사용법은 본 포럼을 잘 검색 해보면 있습니다.


오늘은 이 tool 을 크로스 컴파일 해 보겠습니다.


1. 소스 다운로드

http://fossies.org/linux/misc/i2c-tools-3.1.2.tar.gz/

위 사이트에 가서 다운로드 합니다.


2. make 파일 수정

다운로드된 소스파일의 압축을 풀고 makefile 을 열고 아래와 같이 수정해 줍니다.


------------ makefile-------------------------------------------------------

# I2C tools for Linux

#

# Copyright (C) 2007-2012  Jean Delvare <jdelvare@suse.de>

#

# This program is free software; you can redistribute it and/or modify

# it under the terms of the GNU General Public License as published by

# the Free Software Foundation; either version 2 of the License, or

# (at your option) any later version.


CROSS_PREFIX   = arm-generic-linux-gnueabi


DESTDIR =

prefix = /usr/local

bindir = $(prefix)/bin

sbindir = $(prefix)/sbin

mandir = $(prefix)/share/man

man8dir = $(mandir)/man8

incdir = $(prefix)/include


INSTALL := install

INSTALL_DATA := $(INSTALL) -m 644

INSTALL_DIR := $(INSTALL) -m 755 -d

INSTALL_PROGRAM := $(INSTALL) -m 755

RM := rm -f


#CC ?= gcc

CC = $(CROSS_PREFIX)-gcc


#CFLAGS ?= -O2

# When debugging, use the following instead

#CFLAGS := -O -g

CFLAGS += -Wall


KERNELVERSION := $(shell uname -r)


.PHONY: all strip clean install uninstall


all:


#EXTRA :=

#EXTRA += py-smbus

#SRCDIRS := include eeprom stub tools $(EXTRA)

SRCDIRS := include tools

include $(SRCDIRS:%=%/Module.mk)


---------------------------------------------------------------------------------

굵은 글씨와 빨간 글씨를 참고 하시면 됩니다.

이제 컴파일을 하고 나면 tool 폴더에 아래 실행 파일들이 생성 됩니다.

i2cget : i2c 버스에 연결된 다비아스에 데이터를 쓰는 툴
i2cset  i2c 버스에 연결된 다비아스에서 데이터를 읽는 툴
i2cdump    : i2c 버스에 연결된 다비아스의 0x00 ~ 0xFF 주소 까지의 데이터를 읽어오는 툴
i2cdetect    : i2c 버스에 연결된 디바이스를 찾는 툴

좋군요.