HAL_Project/Project -APP-V1.0/Hardware/IIC/iic.h

49 lines
1.3 KiB
C

#ifndef __IIC_H
#define __IIC_H
#include "main.h"
#define SDA_GPIO_Port GPIOC //SDA 对应的IO分组
#define SDA_Pin GPIO_PIN_11 //SDA 对应的IO
#define SCL_GPIO_Port GPIOC //SCL 对应的IO分组
#define SCL_Pin GPIO_PIN_12 //SCL 对应的IO
/*--------------------------------------------------------------------------*/
#define READ_SDA HAL_GPIO_ReadPin(SDA_GPIO_Port, SDA_Pin) //读取SDA电平
#define IIC_SDA_OUT(x) HAL_GPIO_WritePin(SDA_GPIO_Port, SDA_Pin, (GPIO_PinState)x) //设置SDA电平
#define IIC_SCL_H HAL_GPIO_WritePin(SCL_GPIO_Port, SCL_Pin, GPIO_PIN_SET) //SCL拉高
#define IIC_SDA_H HAL_GPIO_WritePin(SDA_GPIO_Port, SDA_Pin, GPIO_PIN_SET) //SDA拉高
#define IIC_SCL_L HAL_GPIO_WritePin(SCL_GPIO_Port, SCL_Pin, GPIO_PIN_RESET) //SCL拉低
#define IIC_SDA_L HAL_GPIO_WritePin(SDA_GPIO_Port, SDA_Pin, GPIO_PIN_RESET) //SDA拉低
void iicInit(void);
void iicStart(void);
void iicStop(void);
char iicWaitAck(void);
void iicSendByte(uint8_t);
unsigned char iicReadByte(uint8_t);
#endif