.TH "bsp_IIC" 3 "2022年 十一月 22日 星期二" "Version 2.0.0" "MF32BSP_XerolySkinner" \" -*- nroff -*- .ad l .nh .SH NAME bsp_IIC \- IIC的基础实现方法 留下三个保护性接口需要实现,分别是控制时钟,控制数据,延时函数 .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP 被 \fBbsp_IIC_STM32\fP 继承\&. .SS "Public 成员函数" .in +1c .ti -1c .RI "void \fBIIC_WriteOneByte\fP (\fBu8\fP id, \fBu8\fP addr, \fBu8\fP dat)" .br .RI "使用总线发送一个字节数据 " .ti -1c .RI "\fBu8\fP \fBIIC_ReadOneByte\fP (\fBu8\fP id, \fBu8\fP addr)" .br .RI "使用总线接收一个字节数据 " .ti -1c .RI "void \fBIIC_Write\fP (\fBu8\fP id, \fBu8\fP addr, \fBu8\fP *dat, \fBu32\fP len)" .br .RI "使用总线发送定长数据 " .ti -1c .RI "void \fBIIC_Read\fP (\fBu8\fP id, \fBu8\fP addr, \fBu8\fP *dat, \fBu32\fP len)" .br .RI "使用总线接收定长数据 " .ti -1c .RI "void \fBIIC_Start\fP (void)" .br .RI "发送IIC开始信号 " .ti -1c .RI "void \fBIIC_Stop\fP (void)" .br .RI "发送IIC停止信号 " .ti -1c .RI "void \fBIIC_SendAck\fP (\fBu8\fP ackbit)" .br .RI "发送IIC应答信号 " .ti -1c .RI "\fBu8\fP \fBIIC_WaitAck\fP (void)" .br .RI "等待应答信号 " .ti -1c .RI "void \fBIIC_SendByte\fP (\fBu8\fP byt)" .br .RI "发送IIC一个字节信号 " .ti -1c .RI "\fBu8\fP \fBIIC_RecByte\fP (void)" .br .RI "接收IIC一个字节信号 " .in -1c .SS "Protected 成员函数" .in +1c .ti -1c .RI "virtual \fBu8\fP \fBIIC_SCK\fP (\fBu8\fP var)=0" .br .RI "控制SCK管脚口 " .ti -1c .RI "virtual \fBu8\fP \fBIIC_SDA\fP (\fBu8\fP var)=0" .br .RI "控制SDA管脚口 " .ti -1c .RI "virtual void \fBIIC_Delay\fP (void)=0" .br .RI "时序中的延时 在此处短暂延时 " .in -1c .SH "详细描述" .PP IIC的基础实现方法 留下三个保护性接口需要实现,分别是控制时钟,控制数据,延时函数 .PP 在文件 \fBbsp_IIC\&.h\fP 第 \fB56\fP 行定义\&. .SH "成员函数说明" .PP .SS "virtual void bsp_IIC::IIC_Delay (void)\fC [protected]\fP, \fC [pure virtual]\fP" .PP 时序中的延时 在此处短暂延时 .PP \fB待办事项\fP .RS 4 需要为其实现才可使用软件IIC .RE .PP .PP 在 \fBbsp_STM32_AT24C00\fP , 以及 \fBbsp_IIC_STM32\fP 内被实现\&. .SS "void bsp_IIC::IIC_Read (\fBu8\fP id, \fBu8\fP addr, \fBu8\fP * dat, \fBu32\fP len)" .PP 使用总线接收定长数据 .PP \fB参数\fP .RS 4 \fIid\fP 接收的器件地址,如0x68(MPU6050) .br \fIaddr\fP 需要接收的寄存器地址起始 .br \fIdat\fP 改写的数据指针 .br \fIlen\fP 数据数目 .RE .PP \fB返回\fP .RS 4 无返回值 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB198\fP 行定义\&. .SS "\fBu8\fP bsp_IIC::IIC_ReadOneByte (\fBu8\fP id, \fBu8\fP addr)" .PP 使用总线接收一个字节数据 .PP \fB参数\fP .RS 4 \fIid\fP 接收的器件地址,如0x68(MPU6050) .br \fIaddr\fP 需要获取数据的寄存器地址 .RE .PP \fB返回\fP .RS 4 返回该寄存器内的数据 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB153\fP 行定义\&. .SS "\fBu8\fP bsp_IIC::IIC_RecByte (void)" .PP 接收IIC一个字节信号 .PP \fB返回\fP .RS 4 接收到的一个字节信号 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB114\fP 行定义\&. .SS "virtual \fBu8\fP bsp_IIC::IIC_SCK (\fBu8\fP var)\fC [protected]\fP, \fC [pure virtual]\fP" .PP 控制SCK管脚口 .PP \fB参数\fP .RS 4 \fIvar\fP 此处有三个状态,IIC_SET置位管脚,IIC_RESET复位管脚 .RE .PP \fB返回\fP .RS 4 当var为IIC_READ时返回管脚状态 .RE .PP \fB待办事项\fP .RS 4 需要为其实现才可使用软件IIC .RE .PP .PP 在 \fBbsp_IIC_STM32\fP 内被实现\&. .SS "virtual \fBu8\fP bsp_IIC::IIC_SDA (\fBu8\fP var)\fC [protected]\fP, \fC [pure virtual]\fP" .PP 控制SDA管脚口 .PP \fB参数\fP .RS 4 \fIvar\fP 此处有三个状态,IIC_SET置位管脚,IIC_RESET复位管脚 .RE .PP \fB返回\fP .RS 4 当var为IIC_READ时返回管脚状态 .RE .PP \fB待办事项\fP .RS 4 需要为其实现才可使用软件IIC .RE .PP .PP 在 \fBbsp_IIC_STM32\fP 内被实现\&. .SS "void bsp_IIC::IIC_SendAck (\fBu8\fP ackbit)" .PP 发送IIC应答信号 .PP \fB参数\fP .RS 4 \fIackbit\fP 0为应答,1位非应答 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB71\fP 行定义\&. .SS "void bsp_IIC::IIC_SendByte (\fBu8\fP byt)" .PP 发送IIC一个字节信号 .PP \fB参数\fP .RS 4 \fIbyt\fP 发送的字节 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB98\fP 行定义\&. .SS "void bsp_IIC::IIC_Start (void)" .PP 发送IIC开始信号 .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB47\fP 行定义\&. .SS "void bsp_IIC::IIC_Stop (void)" .PP 发送IIC停止信号 .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB59\fP 行定义\&. .SS "\fBu8\fP bsp_IIC::IIC_WaitAck (void)" .PP 等待应答信号 .PP \fB返回\fP .RS 4 返回是否有回应 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB85\fP 行定义\&. .SS "void bsp_IIC::IIC_Write (\fBu8\fP id, \fBu8\fP addr, \fBu8\fP * dat, \fBu32\fP len)" .PP 使用总线发送定长数据 .PP \fB参数\fP .RS 4 \fIid\fP 发送的器件地址,如0x68(MPU6050) .br \fIaddr\fP 需要改写的寄存器地址起始 .br \fIdat\fP 改写的数据指针 .br \fIlen\fP 数据数目 .RE .PP \fB返回\fP .RS 4 无返回值 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB177\fP 行定义\&. .SS "void bsp_IIC::IIC_WriteOneByte (\fBu8\fP id, \fBu8\fP addr, \fBu8\fP dat)" .PP 使用总线发送一个字节数据 .PP \fB参数\fP .RS 4 \fIid\fP 发送的器件地址,如0x68(MPU6050) .br \fIaddr\fP 需要改写的寄存器地址 .br \fIdat\fP 改写的数据 .RE .PP \fB返回\fP .RS 4 无返回值 .RE .PP .PP 在文件 \fBbsp_IIC\&.cpp\fP 第 \fB136\fP 行定义\&. .SH "作者" .PP 由 Doyxgen 通过分析 MF32BSP_XerolySkinner 的 源代码自动生成\&.