Bläddra i källkod

Add I2C1 in Kconfig

Wu Han 6 år sedan
förälder
incheckning
64c9eaa7dc
3 ändrade filer med 14 tillägg och 8 borttagningar
  1. 6 0
      bsp/stm32f10x/drivers/Kconfig
  2. 1 1
      bsp/stm32f10x/drivers/SConscript
  3. 7 7
      bsp/stm32f10x/drivers/i2c.c

+ 6 - 0
bsp/stm32f10x/drivers/Kconfig

@@ -1,3 +1,9 @@
+config BSP_USING_I2C
+    bool "Enable I2C1  (PB6/7)"
+    default n
+    select RT_USING_I2C
+    select RT_USING_I2C_BITOPS
+
 config RT_USING_UART1
 config RT_USING_UART1
     bool "Enable UART1 (PA9/10)"
     bool "Enable UART1 (PA9/10)"
     default y
     default y

+ 1 - 1
bsp/stm32f10x/drivers/SConscript

@@ -15,7 +15,7 @@ usart.c
 if GetDepend(['RT_USING_PIN']):
 if GetDepend(['RT_USING_PIN']):
     src += ['gpio.c']
     src += ['gpio.c']
 
 
-if GetDepend(['RT_USING_I2C_BITOPS']):
+if GetDepend(['BSP_USING_I2C']):
     src += ['i2c.c']
     src += ['i2c.c']
 
 
 # add canbus driver.
 # add canbus driver.

+ 7 - 7
bsp/stm32f10x/drivers/i2c.c

@@ -12,7 +12,7 @@ void stm32_set_sda(void *data, rt_int32_t state)
 void stm32_set_scl(void *data, rt_int32_t state)
 void stm32_set_scl(void *data, rt_int32_t state)
 {
 {
     if(state == 1)
     if(state == 1)
-		GPIO_SetBits(I2C1_GPIO , I2C1_GPIO_SCL);   //GPIOB->BSRRL = I2C1_GPIO_SCL
+        GPIO_SetBits(I2C1_GPIO , I2C1_GPIO_SCL);   //GPIOB->BSRRL = I2C1_GPIO_SCL
     else if(state == 0)
     else if(state == 0)
         GPIO_ResetBits(I2C1_GPIO , I2C1_GPIO_SCL); //GPIOB->BSRRH = I2C1_GPIO_SCL
         GPIO_ResetBits(I2C1_GPIO , I2C1_GPIO_SCL); //GPIOB->BSRRH = I2C1_GPIO_SCL
 }
 }
@@ -62,17 +62,17 @@ static void RCC_Configuration(void)
 
 
 static void GPIO_Configuration(void)
 static void GPIO_Configuration(void)
 {
 {
-	GPIO_InitTypeDef GPIO_InitStructure;
-	GPIO_InitStructure.GPIO_Pin = I2C1_GPIO_SDA | I2C1_GPIO_SCL;
-	GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_OD ;
-	GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz;
-	GPIO_Init(I2C1_GPIO, &GPIO_InitStructure);
+    GPIO_InitTypeDef GPIO_InitStructure;
+    GPIO_InitStructure.GPIO_Pin = I2C1_GPIO_SDA | I2C1_GPIO_SCL;
+    GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_OD ;
+    GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz;
+    GPIO_Init(I2C1_GPIO, &GPIO_InitStructure);
 }
 }
 
 
 int rt_hw_i2c_init(void)
 int rt_hw_i2c_init(void)
 {
 {
     static struct rt_i2c_bus_device stm32_i2c;
     static struct rt_i2c_bus_device stm32_i2c;
-	  
+
     RCC_Configuration();
     RCC_Configuration();
     GPIO_Configuration();
     GPIO_Configuration();