GadgetSeed  0.9.6
i2c.c ファイル

STM32F4 I2Cドライバ [詳解]

#include "sysconfig.h"
#include "device.h"
#include "interrupt.h"
#include "tkprintf.h"
#include "device/i2c_ioctl.h"
#include "task/event.h"
#include "task/mutex.h"
#include "task/syscall.h"
#include "stm32f4xx_hal.h"
#include "dkprintf.h"
i2c.c の依存先関係図:

[ソースコード]

型定義

typedef struct st_i2c_data st_i2c_data
 

関数

void HAL_I2C_MspInit (I2C_HandleTypeDef *hi2c)
 
static void init_i2c (struct st_device *dev)
 
static int i2c_register (struct st_device *dev, char *param)
 
static int i2c_open (struct st_device *dev)
 
static int i2c_close (struct st_device *dev)
 
static int i2c_read (struct st_device *dev, void *data, unsigned int size)
 
static int i2c_write (struct st_device *dev, const void *data, unsigned int size)
 
static int i2c_set_speed (I2C_TypeDef *i2cx, int speed)
 
static int i2c_ioctl (struct st_device *dev, unsigned int com, unsigned int arg, void *param)
 
static int i2c_seek (struct st_device *dev, int offset, int whence)
 
static int i2c_suspend (struct st_device *dev)
 
static int i2c_resume (struct st_device *dev)
 

変数

static st_i2c_data i2c_prv_data [1]
 
static struct st_mutex i2c_mutex [1]
 
const struct st_device i2c_device
 

詳解

STM32F4 I2Cドライバ

日付
2015.08.10
著者
Takashi SHUDO

PB8 - I2C1_SCL PB9 - I2C1_SDA

i2c.c に定義があります。

変数詳解

◆ i2c_device

const struct st_device i2c_device
初期値:
= {
.explan = "STM32F4 I2C1 Master",
.private_data = (void *)&i2c_prv_data[0],
.register_dev = i2c_register,
.mutex = &i2c_mutex[0],
.open = i2c_open,
.close = i2c_close,
.read = i2c_read,
.write = i2c_write,
.ioctl = i2c_ioctl,
.seek = i2c_seek,
.suspend = i2c_suspend,
.resume = i2c_resume,
}
int suspend(void)
全デバイスを休止状態にする
Definition: device.c:634
#define DEF_DEV_NAME_I2C
標準I2Cコントローラデバイス名
Definition: i2c_ioctl.h:15
int resume(void)
全デバイスを活性化する
Definition: device.c:655

i2c.c271 行目に定義があります。