generated from hulk/gd32e23x_template
	切换为软件IIC,完成各种基本函数
This commit is contained in:
		
							
								
								
									
										40
									
								
								inc/i2c.h
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								inc/i2c.h
									
									
									
									
									
								
							| @@ -17,14 +17,22 @@ | ||||
|  | ||||
| /******************************************************************************/ | ||||
|  | ||||
| #define I2C_SPEED 20000 | ||||
| #define RCU_GPIO_I2C RCU_GPIOF | ||||
| #define RCU_I2C RCU_I2C0 | ||||
| #define I2C_SCL_PORT GPIOF | ||||
| #define I2C_SCL_PIN GPIO_PIN_1 | ||||
| #define I2C_SDA_PORT GPIOF | ||||
| #define I2C_SDA_PIN GPIO_PIN_0 | ||||
| #define I2C_GPIO_AF GPIO_AF_1 | ||||
| #define I2C_SPEED       20000 | ||||
| #define RCU_GPIO_I2C    RCU_GPIOF | ||||
| #define RCU_I2C         RCU_I2C0 | ||||
| #define I2C_SCL_PORT    GPIOF | ||||
| #define I2C_SCL_PIN     GPIO_PIN_1 | ||||
| #define I2C_SDA_PORT    GPIOF | ||||
| #define I2C_SDA_PIN     GPIO_PIN_0 | ||||
| #define I2C_GPIO_AF     GPIO_AF_1 | ||||
|  | ||||
| /******************************************************************************/ | ||||
|  | ||||
| #define I2C_SCL_HIGH()      gpio_bit_set(I2C_SCL_PORT, I2C_SCL_PIN) | ||||
| #define I2C_SCL_LOW()       gpio_bit_reset(I2C_SCL_PORT, I2C_SCL_PIN) | ||||
| #define I2C_SDA_HIGH()      gpio_bit_set(I2C_SDA_PORT, I2C_SDA_PIN) | ||||
| #define I2C_SDA_LOW()       gpio_bit_reset(I2C_SDA_PORT, I2C_SDA_PIN) | ||||
| #define I2C_SDA_READ()      gpio_input_bit_get(I2C_SDA_PORT, I2C_SDA_PIN) | ||||
|  | ||||
| /******************************************************************************/ | ||||
|  | ||||
| @@ -47,6 +55,22 @@ typedef enum { | ||||
|  | ||||
| void i2c_gpio_config(void); | ||||
|  | ||||
| void si2c_config(void); | ||||
|  | ||||
| void i2c_delay(void); | ||||
|  | ||||
| void i2c_start(void); | ||||
|  | ||||
| void i2c_stop(void); | ||||
|  | ||||
| void i2c_send_ack(void); | ||||
|  | ||||
| void i2c_send_nack(void); | ||||
|  | ||||
| uint8_t i2c_wait_ack(void); | ||||
|  | ||||
|  | ||||
|  | ||||
| void i2c_config(void); | ||||
|  | ||||
| void i2c_bus_reset(void); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user