41 lines
944 B
C
41 lines
944 B
C
/*
|
|
* File : i2c-bit-ops.h
|
|
* This file is part of RT-Thread RTOS
|
|
* COPYRIGHT (C) 2006, RT-Thread Development Team
|
|
*
|
|
* The license and distribution terms for this file may be
|
|
* found in the file LICENSE in this distribution or at
|
|
* http://www.rt-thread.org/license/LICENSE
|
|
*
|
|
* Change Logs:
|
|
* Date Author Notes
|
|
* 2012-04-25 weety first version
|
|
*/
|
|
|
|
#ifndef __I2C_BIT_OPS_H__
|
|
#define __I2C_BIT_OPS_H__
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
struct rt_i2c_bit_ops {
|
|
void *data; /* private data for lowlevel routines */
|
|
void (*set_sda) (void *data, rt_int32_t state);
|
|
void (*set_scl) (void *data, rt_int32_t state);
|
|
rt_int32_t (*get_sda) (void *data);
|
|
rt_int32_t (*get_scl) (void *data);
|
|
|
|
void (*udelay) (rt_uint32_t us);
|
|
|
|
rt_uint32_t delay_us; /* scl and sda line delay */
|
|
rt_uint32_t timeout; /* in tick */
|
|
};
|
|
|
|
rt_err_t rt_i2c_bit_add_bus(struct rt_i2c_bus *bus);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif |